summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--doc/languages-frameworks/javascript.section.md2
-rw-r--r--maintainers/maintainer-list.nix12
-rw-r--r--maintainers/scripts/pluginupdate.py2
-rw-r--r--nixos/doc/manual/from_md/release-notes/rl-2111.section.xml7
-rw-r--r--nixos/doc/manual/release-notes/rl-2111.section.md2
-rw-r--r--nixos/modules/misc/crashdump.nix2
-rw-r--r--nixos/modules/misc/ids.nix2
-rw-r--r--nixos/modules/module-list.nix1
-rw-r--r--nixos/modules/services/desktops/pipewire/pipewire.nix2
-rw-r--r--nixos/modules/services/development/distccd.nix155
-rw-r--r--nixos/modules/services/misc/matrix-synapse.nix5
-rw-r--r--nixos/modules/system/boot/kexec.nix6
-rw-r--r--pkgs/applications/audio/cozy/default.nix (renamed from pkgs/applications/audio/cozy-audiobooks/default.nix)8
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/ebuild-mode/default.nix4
-rw-r--r--pkgs/applications/editors/vscode/generic.nix9
-rw-r--r--pkgs/applications/editors/vscode/vscode.nix12
-rw-r--r--pkgs/applications/networking/browsers/chromium/upstream-info.json6
-rw-r--r--pkgs/applications/networking/cluster/terraform/default.nix6
-rw-r--r--pkgs/applications/networking/flexget/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/discord/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-desktop/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird/D124361.diff22
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird/packages.nix6
-rw-r--r--pkgs/applications/terminal-emulators/termonad/default.nix8
-rw-r--r--pkgs/applications/version-management/gitea/default.nix4
-rw-r--r--pkgs/applications/version-management/gitlab/data.json10
-rw-r--r--pkgs/applications/version-management/gitlab/default.nix6
-rw-r--r--pkgs/applications/version-management/gitlab/fix-grpc-ar.patch10
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/Gemfile4
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock10
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/default.nix23
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/gemset.nix8
-rw-r--r--pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix2
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv/Gemfile6
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock18
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix14
-rw-r--r--pkgs/applications/virtualization/lima/default.nix4
-rw-r--r--pkgs/build-support/rust/build-rust-crate/default.nix586
-rw-r--r--pkgs/build-support/rust/default-crate-overrides.nix38
-rw-r--r--pkgs/data/fonts/helvetica-neue-lt-std/default.nix16
-rw-r--r--pkgs/data/misc/hackage/pin.json8
-rw-r--r--pkgs/desktops/gnome/extensions/collisions.json33
-rw-r--r--pkgs/desktops/gnome/extensions/extensionRenames.nix17
-rw-r--r--pkgs/desktops/gnome/extensions/extensions.json375
-rw-r--r--pkgs/development/compilers/ghc/8.10.2-binary.nix2
-rw-r--r--pkgs/development/compilers/ghc/8.10.7-binary.nix (renamed from pkgs/development/compilers/ghc/8.10.5-binary.nix)17
-rw-r--r--pkgs/development/compilers/ghc/8.10.7.nix (renamed from pkgs/development/compilers/ghc/8.10.6.nix)10
-rw-r--r--pkgs/development/compilers/ghc/8.6.5-binary.nix1
-rw-r--r--pkgs/development/compilers/ghc/8.8.4.nix2
-rw-r--r--pkgs/development/compilers/ghc/9.0.1.nix6
-rw-r--r--pkgs/development/compilers/ghc/9.2.1.nix320
-rw-r--r--pkgs/development/compilers/ghc/head.nix12
-rw-r--r--pkgs/development/compilers/llvm/13/compiler-rt/default.nix2
-rw-r--r--pkgs/development/haskell-modules/cabal2nix-unstable.nix6
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix16
-rw-r--r--pkgs/development/haskell-modules/configuration-darwin.nix12
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix115
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml7
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml221
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml112
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml16
-rw-r--r--pkgs/development/haskell-modules/configuration-nix.nix11
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix2174
-rw-r--r--pkgs/development/interpreters/erlang/R24.nix4
-rw-r--r--pkgs/development/libraries/fftw/default.nix17
-rw-r--r--pkgs/development/libraries/frei0r/default.nix20
-rw-r--r--pkgs/development/libraries/intel-media-driver/default.nix4
-rw-r--r--pkgs/development/libraries/kddockwidgets/default.nix29
-rw-r--r--pkgs/development/libraries/libint/default.nix3
-rw-r--r--pkgs/development/libraries/rustc-demangle/add-Cargo.lock.patch73
-rw-r--r--pkgs/development/libraries/rustc-demangle/default.nix34
-rw-r--r--pkgs/development/python-modules/azure-mgmt-compute/default.nix4
-rw-r--r--pkgs/development/python-modules/buildbot/default.nix7
-rw-r--r--pkgs/development/python-modules/certauth/default.nix39
-rw-r--r--pkgs/development/python-modules/cucumber-tag-expressions/default.nix4
-rw-r--r--pkgs/development/python-modules/dogpile.cache/default.nix4
-rw-r--r--pkgs/development/python-modules/elasticsearch/default.nix4
-rw-r--r--pkgs/development/python-modules/elementpath/default.nix4
-rw-r--r--pkgs/development/python-modules/eth-hash/default.nix4
-rw-r--r--pkgs/development/python-modules/eventlet/default.nix4
-rw-r--r--pkgs/development/python-modules/flexmock/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-datacatalog/default.nix4
-rw-r--r--pkgs/development/python-modules/google-re2/default.nix4
-rw-r--r--pkgs/development/python-modules/haversine/default.nix4
-rw-r--r--pkgs/development/python-modules/ledgerblue/default.nix4
-rw-r--r--pkgs/development/python-modules/mailmanclient/default.nix4
-rw-r--r--pkgs/development/python-modules/mechanize/default.nix4
-rw-r--r--pkgs/development/python-modules/mwparserfromhell/default.nix4
-rw-r--r--pkgs/development/python-modules/pefile/default.nix4
-rw-r--r--pkgs/development/python-modules/pglast/default.nix16
-rw-r--r--pkgs/development/python-modules/policyuniverse/default.nix4
-rw-r--r--pkgs/development/python-modules/protonup/default.nix29
-rw-r--r--pkgs/development/python-modules/pyacoustid/default.nix4
-rw-r--r--pkgs/development/python-modules/qcelemental/default.nix4
-rw-r--r--pkgs/development/python-modules/sparse/default.nix4
-rw-r--r--pkgs/development/python-modules/sqlmap/default.nix4
-rw-r--r--pkgs/development/python-modules/time-machine/default.nix4
-rw-r--r--pkgs/development/python-modules/transitions/default.nix4
-rw-r--r--pkgs/development/tools/analysis/hotspot/default.nix53
-rw-r--r--pkgs/development/tools/build-managers/bear/default.nix4
-rw-r--r--pkgs/development/tools/buildpack/default.nix6
-rw-r--r--pkgs/development/tools/dockfmt/default.nix31
-rw-r--r--pkgs/development/tools/gokart/default.nix28
-rw-r--r--pkgs/development/tools/haskell/haskell-language-server/withWrapper.nix2
-rw-r--r--pkgs/development/tools/inferno/default.nix6
-rw-r--r--pkgs/development/tools/misc/luarocks/default.nix10
-rw-r--r--pkgs/development/tools/wrangler/default.nix6
-rw-r--r--pkgs/games/0ad/data.nix2
-rw-r--r--pkgs/games/0ad/game.nix4
-rw-r--r--pkgs/games/factorio/versions.json16
-rw-r--r--pkgs/misc/vim-plugins/build-vim-plugin.nix19
-rw-r--r--pkgs/misc/vim-plugins/default.nix4
-rw-r--r--pkgs/misc/vim-plugins/update-shell.nix13
-rwxr-xr-xpkgs/misc/vim-plugins/update.py3
-rw-r--r--pkgs/misc/vim-plugins/vim-gen-doc-hook.sh31
-rw-r--r--pkgs/misc/vim-plugins/vim-utils.nix14
-rw-r--r--pkgs/os-specific/linux/ddcci/default.nix7
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.14.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.19.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.4.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.9.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.10.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.13.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.14.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.4.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-libre.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-rt-5.4.nix6
-rw-r--r--pkgs/os-specific/linux/kexec-tools/default.nix (renamed from pkgs/os-specific/linux/kexectools/default.nix)0
-rw-r--r--pkgs/os-specific/linux/systemd/default.nix6
-rw-r--r--pkgs/os-specific/linux/zfs/default.nix15
-rw-r--r--pkgs/servers/http/ran/default.nix47
-rw-r--r--pkgs/servers/nats-server/default.nix4
-rw-r--r--pkgs/servers/search/meilisearch/Cargo.nix11200
-rw-r--r--pkgs/servers/search/meilisearch/crate-hashes.json13
-rw-r--r--pkgs/servers/search/meilisearch/default.nix55
-rw-r--r--pkgs/servers/search/meilisearch/unify-pest-dependency-version.patch74
-rw-r--r--pkgs/servers/sql/materialize/default.nix10
-rw-r--r--pkgs/servers/web-apps/lemmy/default.nix8
-rw-r--r--pkgs/shells/zsh/default.nix5
-rw-r--r--pkgs/shells/zsh/tz_completion.patch14
-rw-r--r--pkgs/tools/admin/salt/default.nix4
-rw-r--r--pkgs/tools/filesystems/ntfs-3g/default.nix6
-rw-r--r--pkgs/tools/misc/shadowenv/default.nix6
-rw-r--r--pkgs/tools/misc/tealdeer/default.nix1
-rw-r--r--pkgs/tools/misc/triehash/default.nix48
-rw-r--r--pkgs/tools/misc/yt-dlp/default.nix23
-rw-r--r--pkgs/tools/networking/corerad/default.nix6
-rw-r--r--pkgs/tools/networking/inetutils/default.nix6
-rw-r--r--pkgs/tools/networking/inetutils/whois-Update-Indian-TLD-server.patch25
-rw-r--r--pkgs/tools/networking/inetutils/whois-Update-ORG-TLD-server.patch38
-rw-r--r--pkgs/tools/package-management/apt/default.nix80
-rw-r--r--pkgs/tools/security/exploitdb/default.nix4
-rw-r--r--pkgs/tools/security/nmap-formatter/default.nix31
-rw-r--r--pkgs/top-level/aliases.nix1
-rw-r--r--pkgs/top-level/all-packages.nix32
-rw-r--r--pkgs/top-level/haskell-packages.nix57
-rw-r--r--pkgs/top-level/python-packages.nix4
-rw-r--r--pkgs/top-level/release-haskell.nix18
158 files changed, 14809 insertions, 2245 deletions
diff --git a/doc/languages-frameworks/javascript.section.md b/doc/languages-frameworks/javascript.section.md
index c75bc235424..bf5742d6855 100644
--- a/doc/languages-frameworks/javascript.section.md
+++ b/doc/languages-frameworks/javascript.section.md
@@ -2,7 +2,7 @@
 
 ## Introduction {#javascript-introduction}
 
-This contains instructions on how to package javascript applications. For instructions on how to add a cli package from npm please consult the #node.js section
+This contains instructions on how to package javascript applications.
 
 The various tools available will be listed in the [tools-overview](#javascript-tools-overview). Some general principles for packaging will follow. Finally some tool specific instructions will be given.
 
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 0bcaf2e4367..a3d57326788 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -80,6 +80,12 @@
     githubId = 791309;
     name = "Jan Hrnko";
   };
+  _1000teslas = {
+    name = "Kevin Tran";
+    email = "47207223+1000teslas@users.noreply.github.com";
+    github = "1000teslas";
+    githubId = 47207223;
+  };
   _3699n = {
     email = "nicholas@nvk.pm";
     github = "3699n";
@@ -3621,6 +3627,12 @@
       fingerprint = "2F93 661D AC17 EA98 A104  F780 ECC7 55EE 583C 1672";
     }];
   };
+  flexagoon = {
+    email = "flexagoon@pm.me";
+    github = "flexagoon";
+    githubId = 66178592;
+    name = "Pavel Zolotarevskiy";
+  };
   flexw = {
     email = "felix.weilbach@t-online.de";
     github = "FlexW";
diff --git a/maintainers/scripts/pluginupdate.py b/maintainers/scripts/pluginupdate.py
index c468b33bb47..2a9a2d4c0a2 100644
--- a/maintainers/scripts/pluginupdate.py
+++ b/maintainers/scripts/pluginupdate.py
@@ -547,7 +547,6 @@ def update_plugins(editor: Editor, args):
 
     log.setLevel(LOG_LEVELS[args.debug])
     log.info("Start updating plugins")
-    nixpkgs_repo = git.Repo(editor.root, search_parent_directories=True)
     update = editor.get_update(args.input_file, args.outfile, args.proc)
 
     redirects = update()
@@ -556,6 +555,7 @@ def update_plugins(editor: Editor, args):
     autocommit = not args.no_commit
 
     if autocommit:
+        nixpkgs_repo = git.Repo(editor.root, search_parent_directories=True)
         commit(nixpkgs_repo, f"{editor.attr_path}: update", [args.outfile])
 
     if redirects:
diff --git a/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml
index 3c7f9a274b3..57aa415666c 100644
--- a/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml
+++ b/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml
@@ -214,6 +214,13 @@
           <link xlink:href="options.html#opt-services.soju.enable">services.soju</link>.
         </para>
       </listitem>
+      <listitem>
+        <para>
+          <link xlink:href="https://nats.io/">nats</link>, a high
+          performance cloud and edge messaging system. Available as
+          <link linkend="opt-services.nats.enable">services.nats</link>.
+        </para>
+      </listitem>
     </itemizedlist>
   </section>
   <section xml:id="sec-release-21.11-incompatibilities">
diff --git a/nixos/doc/manual/release-notes/rl-2111.section.md b/nixos/doc/manual/release-notes/rl-2111.section.md
index c5a4b5bd98c..1d0f8fba320 100644
--- a/nixos/doc/manual/release-notes/rl-2111.section.md
+++ b/nixos/doc/manual/release-notes/rl-2111.section.md
@@ -65,6 +65,8 @@ subsonic-compatible api. Available as [navidrome](#opt-services.navidrome.enable
 
 - [soju](https://sr.ht/~emersion/soju), a user-friendly IRC bouncer. Available as [services.soju](options.html#opt-services.soju.enable).
 
+- [nats](https://nats.io/), a high performance cloud and edge messaging system. Available as [services.nats](#opt-services.nats.enable).
+
 ## Backward Incompatibilities {#sec-release-21.11-incompatibilities}
 
 
diff --git a/nixos/modules/misc/crashdump.nix b/nixos/modules/misc/crashdump.nix
index 796078d7ef8..b0f75d9caaa 100644
--- a/nixos/modules/misc/crashdump.nix
+++ b/nixos/modules/misc/crashdump.nix
@@ -50,7 +50,7 @@ in
     boot = {
       postBootCommands = ''
         echo "loading crashdump kernel...";
-        ${pkgs.kexectools}/sbin/kexec -p /run/current-system/kernel \
+        ${pkgs.kexec-tools}/sbin/kexec -p /run/current-system/kernel \
         --initrd=/run/current-system/initrd \
         --reset-vga --console-vga \
         --command-line="init=$(readlink -f /run/current-system/init) irqpoll maxcpus=1 reset_devices ${kernelParams}"
diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix
index c7ab3f313a6..02ae1390ce8 100644
--- a/nixos/modules/misc/ids.nix
+++ b/nixos/modules/misc/ids.nix
@@ -350,6 +350,7 @@ in
       # shadow = 318; # unused
       hqplayer = 319;
       moonraker = 320;
+      distcc = 321;
 
       # When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399!
 
@@ -654,6 +655,7 @@ in
       shadow = 318;
       hqplayer = 319;
       moonraker = 320;
+      distcc = 321;
 
       # When adding a gid, make sure it doesn't match an existing
       # uid. Users and groups with the same name should have equal
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index ce948bac428..1998a309035 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -374,6 +374,7 @@
   ./services/desktops/zeitgeist.nix
   ./services/development/bloop.nix
   ./services/development/blackfire.nix
+  ./services/development/distccd.nix
   ./services/development/hoogle.nix
   ./services/development/jupyter/default.nix
   ./services/development/jupyterhub/default.nix
diff --git a/nixos/modules/services/desktops/pipewire/pipewire.nix b/nixos/modules/services/desktops/pipewire/pipewire.nix
index dbd6c5d87e1..bc75aa2717a 100644
--- a/nixos/modules/services/desktops/pipewire/pipewire.nix
+++ b/nixos/modules/services/desktops/pipewire/pipewire.nix
@@ -194,7 +194,7 @@ in {
     };
 
     environment.sessionVariables.LD_LIBRARY_PATH =
-      lib.optional cfg.jack.enable "/run/current-system/sw/lib/pipewire";
+      lib.optional cfg.jack.enable "${cfg.package.jack}/lib";
 
     # https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/464#note_723554
     systemd.user.services.pipewire.environment."PIPEWIRE_LINK_PASSIVE" = "1";
diff --git a/nixos/modules/services/development/distccd.nix b/nixos/modules/services/development/distccd.nix
new file mode 100644
index 00000000000..8790ea08d0c
--- /dev/null
+++ b/nixos/modules/services/development/distccd.nix
@@ -0,0 +1,155 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.services.distccd;
+in
+{
+  options = {
+    services.distccd = {
+      enable = mkEnableOption "distccd";
+
+      allowedClients = mkOption {
+        type = types.listOf types.str;
+        default = [ "127.0.0.1" ];
+        example = [ "127.0.0.1" "192.168.0.0/24" "10.0.0.0/24" ];
+        description = ''
+          Client IPs which are allowed to connect to distccd in CIDR notation.
+
+          Anyone who can connect to the distccd server can run arbitrary
+          commands on that system as the distcc user, therefore you should use
+          this judiciously.
+        '';
+      };
+
+      jobTimeout = mkOption {
+        type = types.nullOr types.int;
+        default = null;
+        description = ''
+          Maximum duration, in seconds, of a single compilation request.
+        '';
+      };
+
+      logLevel = mkOption {
+        type = types.nullOr (types.enum [ "critical" "error" "warning" "notice" "info" "debug" ]);
+        default = "warning";
+        description = ''
+          Set the minimum severity of error that will be included in the log
+          file. Useful if you only want to see error messages rather than an
+          entry for each connection.
+        '';
+      };
+
+      maxJobs = mkOption {
+        type = types.nullOr types.int;
+        default = null;
+        description = ''
+          Maximum number of tasks distccd should execute at any time.
+        '';
+      };
+
+
+      nice = mkOption {
+        type = types.nullOr types.int;
+        default = null;
+        description = ''
+          Niceness of the compilation tasks.
+        '';
+      };
+
+      openFirewall = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Opens the specified TCP port for distcc.
+        '';
+      };
+
+      package = mkOption {
+        type = types.package;
+        default = pkgs.distcc;
+        example = "pkgs.distcc";
+        description = ''
+          The distcc package to use.
+        '';
+      };
+
+      port = mkOption {
+        type = types.port;
+        default = 3632;
+        description = ''
+          The TCP port which distccd will listen on.
+        '';
+      };
+
+      stats = {
+        enable = mkEnableOption "statistics reporting via HTTP server";
+        port = mkOption {
+          type = types.port;
+          default = 3633;
+          description = ''
+            The TCP port which the distccd statistics HTTP server will listen
+            on.
+          '';
+        };
+      };
+
+      zeroconf = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Whether to register via mDNS/DNS-SD
+        '';
+      };
+    };
+  };
+
+  config = mkIf cfg.enable {
+    networking.firewall = mkIf cfg.openFirewall {
+      allowedTCPPorts = [ cfg.port ]
+        ++ optionals cfg.stats.enable [ cfg.stats.port ];
+    };
+
+    systemd.services.distccd = {
+      after = [ "network.target" ];
+      wantedBy = [ "multi-user.target" ];
+
+      description = "Distributed C, C++ and Objective-C compiler";
+      documentation = [ "man:distccd(1)" ];
+
+      serviceConfig = {
+        User = "distcc";
+        Group = "distcc";
+        # FIXME: I'd love to get rid of `--enable-tcp-insecure` here, but I'm
+        # not sure how I'm supposed to get distccd to "accept" running a binary
+        # (the compiler) that's outside of /usr/lib.
+        ExecStart = pkgs.writeShellScript "start-distccd" ''
+          export PATH="${pkgs.distccMasquerade}/bin"
+          ${cfg.package}/bin/distccd \
+            --no-detach \
+            --daemon \
+            --enable-tcp-insecure \
+            --port ${toString cfg.port} \
+            ${optionalString (cfg.jobTimeout != null) "--job-lifetime ${toString cfg.jobTimeout}"} \
+            ${optionalString (cfg.logLevel != null) "--log-level ${cfg.logLevel}"} \
+            ${optionalString (cfg.maxJobs != null) "--jobs ${toString cfg.maxJobs}"} \
+            ${optionalString (cfg.nice != null) "--nice ${toString cfg.nice}"} \
+            ${optionalString cfg.stats.enable "--stats"} \
+            ${optionalString cfg.stats.enable "--stats-port ${toString cfg.stats.port}"} \
+            ${optionalString cfg.zeroconf "--zeroconf"} \
+            ${concatMapStrings (c: "--allow ${c} ") cfg.allowedClients}
+        '';
+      };
+    };
+
+    users = {
+      groups.distcc.gid = config.ids.gids.distcc;
+      users.distcc = {
+        description = "distccd user";
+        group = "distcc";
+        uid = config.ids.uids.distcc;
+      };
+    };
+  };
+}
diff --git a/nixos/modules/services/misc/matrix-synapse.nix b/nixos/modules/services/misc/matrix-synapse.nix
index 3c734a94819..e150a1aaaad 100644
--- a/nixos/modules/services/misc/matrix-synapse.nix
+++ b/nixos/modules/services/misc/matrix-synapse.nix
@@ -221,9 +221,10 @@ in {
         default = config.networking.hostName;
         description = ''
           The domain name of the server, with optional explicit port.
-          This is used by remote servers to connect to this server,
-          e.g. matrix.org, localhost:8080, etc.
+          This is used by remote servers to look up the server address.
           This is also the last part of your UserID.
+
+          The server_name cannot be changed later so it is important to configure this correctly before you start Synapse.
         '';
       };
       public_baseurl = mkOption {
diff --git a/nixos/modules/system/boot/kexec.nix b/nixos/modules/system/boot/kexec.nix
index 03312aa26ed..02c2713ede1 100644
--- a/nixos/modules/system/boot/kexec.nix
+++ b/nixos/modules/system/boot/kexec.nix
@@ -1,8 +1,8 @@
 { pkgs, lib, ... }:
 
 {
-  config = lib.mkIf (lib.meta.availableOn pkgs.stdenv.hostPlatform pkgs.kexectools) {
-    environment.systemPackages = [ pkgs.kexectools ];
+  config = lib.mkIf (lib.meta.availableOn pkgs.stdenv.hostPlatform pkgs.kexec-tools) {
+    environment.systemPackages = [ pkgs.kexec-tools ];
 
     systemd.services.prepare-kexec =
       { description = "Preparation for kexec";
@@ -10,7 +10,7 @@
         before = [ "systemd-kexec.service" ];
         unitConfig.DefaultDependencies = false;
         serviceConfig.Type = "oneshot";
-        path = [ pkgs.kexectools ];
+        path = [ pkgs.kexec-tools ];
         script =
           ''
             # Don't load the current system profile if we already have a kernel loaded
diff --git a/pkgs/applications/audio/cozy-audiobooks/default.nix b/pkgs/applications/audio/cozy/default.nix
index 88ac8002140..afceca2a54b 100644
--- a/pkgs/applications/audio/cozy-audiobooks/default.nix
+++ b/pkgs/applications/audio/cozy/default.nix
@@ -9,8 +9,8 @@
 , gst_all_1
 , gobject-introspection
 , libhandy
+, libdazzle
 , python3Packages
-, file
 , cairo
 , gettext
 , gnome
@@ -22,7 +22,7 @@ python3Packages.buildPythonApplication rec {
   format = "other"; # no setup.py
 
   pname = "cozy";
-  version = "1.0.3";
+  version = "1.1.2";
 
   # Temporary fix
   # See https://github.com/NixOS/nixpkgs/issues/57029
@@ -33,7 +33,7 @@ python3Packages.buildPythonApplication rec {
     owner = "geigi";
     repo = pname;
     rev = version;
-    sha256 = "0m0xiqpb87pwr3fhy0a4qxg67yjhwchcxj3x2anyy0li4inryxag";
+    sha256 = "sha256-QENn8mFMk06/Uj8QJo0mJQ7frJNcv5RVNJwDB+H/LkI=";
   };
 
   nativeBuildInputs = [
@@ -49,6 +49,7 @@ python3Packages.buildPythonApplication rec {
     cairo
     gettext
     gnome.adwaita-icon-theme
+    libdazzle
     libhandy
     pantheon.granite
   ] ++ (with gst_all_1; [
@@ -56,6 +57,7 @@ python3Packages.buildPythonApplication rec {
     gst-plugins-good
     gst-plugins-ugly
     gst-plugins-base
+    gst-plugins-bad
   ]);
 
   propagatedBuildInputs = with python3Packages; [
diff --git a/pkgs/applications/editors/emacs/elisp-packages/ebuild-mode/default.nix b/pkgs/applications/editors/emacs/elisp-packages/ebuild-mode/default.nix
index f3adf4b9ea7..3202e5f5ac5 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/ebuild-mode/default.nix
+++ b/pkgs/applications/editors/emacs/elisp-packages/ebuild-mode/default.nix
@@ -2,11 +2,11 @@
 
 trivialBuild rec {
   pname = "ebuild-mode";
-  version = "1.52";
+  version = "1.53";
 
   src = fetchurl {
     url = "https://dev.gentoo.org/~ulm/emacs/${pname}-${version}.tar.xz";
-    sha256 = "10nikbbwh612qlnms2i31963a0h3ccyg85vrxlizdpsqs4cjpg6h";
+    sha256 = "1l740qp71df9ids0c49kvp942rk8k1rfkg1hyv7ysfns5shk7b9l";
   };
 
   meta = with lib; {
diff --git a/pkgs/applications/editors/vscode/generic.nix b/pkgs/applications/editors/vscode/generic.nix
index 7279d6bf60b..4363f83ba03 100644
--- a/pkgs/applications/editors/vscode/generic.nix
+++ b/pkgs/applications/editors/vscode/generic.nix
@@ -1,7 +1,7 @@
 { stdenv, lib, makeDesktopItem
 , unzip, libsecret, libXScrnSaver, libxshmfence, wrapGAppsHook
 , gtk2, atomEnv, at-spi2-atk, autoPatchelfHook
-, systemd, fontconfig, libdbusmenu, buildFHSUserEnvBubblewrap
+, systemd, fontconfig, libdbusmenu, glib, buildFHSUserEnvBubblewrap
 , writeShellScriptBin
 
 # Populate passthru.tests
@@ -101,6 +101,13 @@ let
       runHook postInstall
     '';
 
+    preFixup = ''
+      gappsWrapperArgs+=(
+        # Add gio to PATH so that moving files to the trash works when not using a desktop environment
+        --prefix PATH : ${glib.bin}/bin
+      )
+    '';
+
     inherit meta;
   };
 
diff --git a/pkgs/applications/editors/vscode/vscode.nix b/pkgs/applications/editors/vscode/vscode.nix
index 3131c3a7bf8..e6a5a9d5dca 100644
--- a/pkgs/applications/editors/vscode/vscode.nix
+++ b/pkgs/applications/editors/vscode/vscode.nix
@@ -14,17 +14,17 @@ let
   archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz";
 
   sha256 = {
-    x86_64-linux = "0i2pngrp2pcas99wkay7ahrcn3gl47gdjjaq7ladr879ypldh24v";
-    x86_64-darwin = "1pni2cd5s6m9jxwpja4ma9xlr1q3xl46w8pim3971dw3xi5r29pg";
-    aarch64-linux = "0j71ha2df99583w8r2l1hppn6wx8ll80flwcj5xzj7icv3mq8x7v";
-    aarch64-darwin = "0vhp1z890mvs8hnwf43bfv74a7y0pv5crjn53rbiy0il1ihs1498";
-    armv7l-linux = "07yb0ia1rnbav3gza2y53yd3bcxqmngddd4jz6p4y0m539znl817";
+    x86_64-linux = "0g49765pnimh107pw3q7dlgd6jcmr5gagsvxrdx8i93mbxb0xm0c";
+    x86_64-darwin = "1837fcpllblm970jxsal0ahxsnjmsgydy6g6qn51hp7f797gi7zb";
+    aarch64-linux = "1bpmgv6hjyb7jl9v8qyqiyr0brl4xq3wnls2v9hirja6ls1x14cx";
+    aarch64-darwin = "0qksfscbiyr2ynw3j86g8wm7myyabkjwx03ik3z6rrv7dffb5yii";
+    armv7l-linux = "063p2wy1wl57p43f3md0wp2d981nnb650hyqs9rgqm4mlk2s168g";
   }.${system};
 in
   callPackage ./generic.nix rec {
     # Please backport all compatible updates to the stable release.
     # This is important for the extension ecosystem.
-    version = "1.59.1";
+    version = "1.60.0";
     pname = "vscode";
 
     executableName = "code" + lib.optionalString isInsiders "-insiders";
diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.json b/pkgs/applications/networking/browsers/chromium/upstream-info.json
index 93511c8feba..f095138416b 100644
--- a/pkgs/applications/networking/browsers/chromium/upstream-info.json
+++ b/pkgs/applications/networking/browsers/chromium/upstream-info.json
@@ -31,9 +31,9 @@
     }
   },
   "dev": {
-    "version": "95.0.4621.4",
-    "sha256": "06fgdyg3bychqhf31fikk7s4qp3rc7hmsvm6p2bj9ascd6kzjzx8",
-    "sha256bin64": "1bvkdrc7cznb9xrnld642qj3z7vbyin9xbq0pp6kqva4gck41cyn",
+    "version": "95.0.4628.3",
+    "sha256": "04r2db9kl77lp4jyyj01pc70jkxrifbnz5hic4r91lf8m2gf1fa3",
+    "sha256bin64": "1ssf8jdk6gn2mrnyvgz2c9nkk70rsidd5y26w2kx3s0cllfr7d96",
     "deps": {
       "gn": {
         "version": "2021-08-11",
diff --git a/pkgs/applications/networking/cluster/terraform/default.nix b/pkgs/applications/networking/cluster/terraform/default.nix
index e230313f050..a5dcc900ff0 100644
--- a/pkgs/applications/networking/cluster/terraform/default.nix
+++ b/pkgs/applications/networking/cluster/terraform/default.nix
@@ -195,9 +195,9 @@ rec {
   };
 
   terraform_1_0 = mkTerraform {
-    version = "1.0.5";
-    sha256 = "0nhxrlnwg76iiqs9hj6ls54176df78ys3356nxmd9ip8jx9ix47v";
-    vendorSha256 = "08fvp6w8xsv42jjgpr73kyah20g3979rf84ysrq5whvfmrbpzm2f";
+    version = "1.0.6";
+    sha256 = "1i1f2gmiv49ia6d4yi137s705vrxdc3rqxanjgwzysif11j6iwwc";
+    vendorSha256 = "00cl42w1mzsi9qd09wydfvp5f2h7lxaay6s2dv0mf47k6h7prf42";
     patches = [ ./provider-path-0_15.patch ];
     passthru = { inherit plugins; };
   };
diff --git a/pkgs/applications/networking/flexget/default.nix b/pkgs/applications/networking/flexget/default.nix
index edf467d5120..dbbcc659664 100644
--- a/pkgs/applications/networking/flexget/default.nix
+++ b/pkgs/applications/networking/flexget/default.nix
@@ -2,14 +2,14 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "flexget";
-  version = "3.1.135";
+  version = "3.1.136";
 
   # Fetch from GitHub in order to use `requirements.in`
   src = fetchFromGitHub {
     owner = "flexget";
     repo = "flexget";
     rev = "v${version}";
-    sha256 = "01qj9pp3b7qxpv1yzak4ql1d95dq6611crpp4y5z44mg5gmbql7g";
+    sha256 = "058sja2miwhr6lx5j8r9d97k4ywh6dsxd05nb5w19z6a0sq1vmyb";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/networking/instant-messengers/discord/default.nix b/pkgs/applications/networking/instant-messengers/discord/default.nix
index d9d9d640a22..058e20da0ce 100644
--- a/pkgs/applications/networking/instant-messengers/discord/default.nix
+++ b/pkgs/applications/networking/instant-messengers/discord/default.nix
@@ -27,10 +27,10 @@ in {
     pname = "discord-canary";
     binaryName = "DiscordCanary";
     desktopName = "Discord Canary";
-    version = "0.0.128";
+    version = "0.0.129";
     src = fetchurl {
       url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
-      sha256 = "sha256-cw0YBMlapk4QLKiU8ErzzyDaPIXkosUSu7ycRV8VraM=";
+      sha256 = "sha256:1x49vvd363w9xyrzjgmynj2b320hzpz388fh5vpp0q0qk8q3gwkk";
     };
   };
 }.${branch}
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
index b73b87fc897..cf46b3e9890 100644
--- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
@@ -25,7 +25,7 @@ let
       else "");
 in stdenv.mkDerivation rec {
   pname = "signal-desktop";
-  version = "5.15.0"; # Please backport all updates to the stable channel.
+  version = "5.16.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:
@@ -35,7 +35,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 = "0cbz2l31cg87n6qlbvwdjy92q9qgmmkrsvaj37cc34ajh7asd833";
+    sha256 = "1na5ja68h14smfwxrli1kfr6fhf5dshyvcdaj0c4mwms838bdl4j";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/D124361.diff b/pkgs/applications/networking/mailreaders/thunderbird/D124361.diff
new file mode 100644
index 00000000000..42dee06a26b
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/thunderbird/D124361.diff
@@ -0,0 +1,22 @@
+diff --git a/comm/mail/config/mozconfigs/common b/comm/mail/config/mozconfigs/common
+--- a/comm/mail/config/mozconfigs/common
++++ b/comm/mail/config/mozconfigs/common
+@@ -1,6 +1,3 @@
+ ac_add_options --enable-application=comm/mail
+ 
+-# Disable enforcing that add-ons are signed by the trusted root.
+-MOZ_REQUIRE_SIGNING=
+-
+ . "$topsrcdir/build/mozconfig.common.override"
+diff --git a/comm/mail/moz.configure b/comm/mail/moz.configure
+--- a/comm/mail/moz.configure
++++ b/comm/mail/moz.configure
+@@ -12,6 +12,7 @@
+ imply_option("MOZ_CRASHREPORTER_URL", "https://crash-reports.thunderbird.net/")
+ 
+ imply_option("--enable-default-browser-agent", False)
++imply_option("MOZ_REQUIRE_SIGNING", False)
+ 
+ 
+ @depends(target_is_windows, target_is_linux)
+
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/packages.nix b/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
index fe6ead5c8d3..1740eebf6e3 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
@@ -19,6 +19,12 @@ rec {
     };
     patches = [
       ./no-buildconfig-90.patch
+
+      # There is a bug in Thunderbird 91 where add-ons are required
+      # to be signed when the build is run with default settings.
+      # https://bugzilla.mozilla.org/show_bug.cgi?id=1727113
+      # https://phabricator.services.mozilla.com/D124361
+      ./D124361.diff
     ];
 
     meta = with lib; {
diff --git a/pkgs/applications/terminal-emulators/termonad/default.nix b/pkgs/applications/terminal-emulators/termonad/default.nix
index 4388cbcfb44..6a1dd0bec39 100644
--- a/pkgs/applications/terminal-emulators/termonad/default.nix
+++ b/pkgs/applications/terminal-emulators/termonad/default.nix
@@ -1,7 +1,7 @@
-{ stdenv, ghcWithPackages, makeWrapper, packages ? (pkgSet: []) }:
+{ stdenv, haskellPackages, makeWrapper, packages ? (pkgSet: []) }:
 
 let
-  termonadEnv = ghcWithPackages (self: [ self.termonad ] ++ packages self);
+  termonadEnv = haskellPackages.ghcWithPackages (self: [ self.termonad ] ++ packages self);
 in stdenv.mkDerivation {
   name = "termonad-with-packages-${termonadEnv.version}";
 
@@ -16,4 +16,8 @@ in stdenv.mkDerivation {
   # trivial derivation
   preferLocalBuild = true;
   allowSubstitutes = false;
+
+  meta = haskellPackages.termonad.meta // {
+    mainProgram = "termonad";
+  };
 }
diff --git a/pkgs/applications/version-management/gitea/default.nix b/pkgs/applications/version-management/gitea/default.nix
index d28e5d6e3e9..4843e48b1f2 100644
--- a/pkgs/applications/version-management/gitea/default.nix
+++ b/pkgs/applications/version-management/gitea/default.nix
@@ -16,12 +16,12 @@ with lib;
 
 buildGoPackage rec {
   pname = "gitea";
-  version = "1.15.0";
+  version = "1.15.2";
 
   # 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-Wu5rtVoQql/0XWkszYOqE4QJxKUY/CsCpmjkaB+E6Hc=";
+    sha256 = "sha256-zvWJ1Q8nJw4hjPeBnuVprjn2NSlFwv4BwtHwgwHHvSI=";
   };
 
   unpackPhase = ''
diff --git a/pkgs/applications/version-management/gitlab/data.json b/pkgs/applications/version-management/gitlab/data.json
index 9b58febf8bb..7425af1f98a 100644
--- a/pkgs/applications/version-management/gitlab/data.json
+++ b/pkgs/applications/version-management/gitlab/data.json
@@ -1,13 +1,13 @@
 {
-  "version": "14.2.1",
-  "repo_hash": "0ivymkqcwl2lrnv0lkcw2ch26iyz9ixklrkc2jq38pbwc0igf89z",
+  "version": "14.2.3",
+  "repo_hash": "06fr8srz5ii0h65b1h2zfm8kzqz9g8jy2aq4g5js6kmv44zjya1p",
   "owner": "gitlab-org",
   "repo": "gitlab",
-  "rev": "v14.2.1-ee",
+  "rev": "v14.2.3-ee",
   "passthru": {
-    "GITALY_SERVER_VERSION": "14.2.1",
+    "GITALY_SERVER_VERSION": "14.2.3",
     "GITLAB_PAGES_VERSION": "1.42.0",
     "GITLAB_SHELL_VERSION": "13.19.1",
-    "GITLAB_WORKHORSE_VERSION": "14.2.1"
+    "GITLAB_WORKHORSE_VERSION": "14.2.3"
   }
 }
diff --git a/pkgs/applications/version-management/gitlab/default.nix b/pkgs/applications/version-management/gitlab/default.nix
index c8480fcc073..26d8cb1732f 100644
--- a/pkgs/applications/version-management/gitlab/default.nix
+++ b/pkgs/applications/version-management/gitlab/default.nix
@@ -22,6 +22,12 @@ let
     gemset =
       let x = import (gemdir + "/gemset.nix");
       in x // {
+        # grpc expects the AR environment variable to contain `ar rpc`. See the
+        # discussion in nixpkgs #63056.
+        grpc = x.grpc // {
+          patches = [ ./fix-grpc-ar.patch ];
+          dontBuild = false;
+        };
         # the openssl needs the openssl include files
         openssl = x.openssl // {
           buildInputs = [ openssl ];
diff --git a/pkgs/applications/version-management/gitlab/fix-grpc-ar.patch b/pkgs/applications/version-management/gitlab/fix-grpc-ar.patch
new file mode 100644
index 00000000000..9b95e668e04
--- /dev/null
+++ b/pkgs/applications/version-management/gitlab/fix-grpc-ar.patch
@@ -0,0 +1,10 @@
+--- a/src/ruby/ext/grpc/extconf.rb
++++ b/src/ruby/ext/grpc/extconf.rb
+@@ -27,6 +27,7 @@ ENV['MACOSX_DEPLOYMENT_TARGET'] = '10.7'
+ if ENV['AR'].nil? || ENV['AR'].size == 0
+     ENV['AR'] = RbConfig::CONFIG['AR'] + ' rcs'
+ end
++ENV['AR'] = ENV['AR'] + ' rcs'
+ if ENV['CC'].nil? || ENV['CC'].size == 0
+     ENV['CC'] = RbConfig::CONFIG['CC']
+ end
diff --git a/pkgs/applications/version-management/gitlab/gitaly/Gemfile b/pkgs/applications/version-management/gitlab/gitaly/Gemfile
index 76c193ed06c..7eaf3c0f218 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/Gemfile
+++ b/pkgs/applications/version-management/gitlab/gitaly/Gemfile
@@ -7,7 +7,7 @@ gem 'activesupport', '~> 6.1.3.2'
 gem 'rdoc', '~> 6.0'
 gem 'gitlab-gollum-lib', '~> 4.2.7.10.gitlab.1', require: false
 gem 'gitlab-gollum-rugged_adapter', '~> 0.4.4.4.gitlab.1', require: false
-gem 'grpc', '~> 1.38.0'
+gem 'grpc', '~> 1.30.2'
 gem 'sentry-raven', '~> 3.0', require: false
 gem 'faraday', '~> 1.0'
 gem 'rbtrace', require: false
@@ -29,5 +29,5 @@ group :development, :test do
   gem 'factory_bot', require: false
   gem 'pry', '~> 0.12.2', require: false
 
-  gem 'grpc-tools', '= 1.38.0'
+  gem 'grpc-tools', '= 1.30.2'
 end
diff --git a/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock b/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock
index e87bd703acd..f0e06b761dc 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock
+++ b/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock
@@ -77,10 +77,10 @@ GEM
     google-protobuf (3.17.3)
     googleapis-common-protos-types (1.1.0)
       google-protobuf (~> 3.14)
-    grpc (1.38.0)
-      google-protobuf (~> 3.15)
+    grpc (1.30.2)
+      google-protobuf (~> 3.12)
       googleapis-common-protos-types (~> 1.0)
-    grpc-tools (1.38.0)
+    grpc-tools (1.30.2)
     i18n (1.8.10)
       concurrent-ruby (~> 1.0)
     ice_nine (0.11.2)
@@ -225,8 +225,8 @@ DEPENDENCIES
   gitlab-labkit (~> 0.20.0)
   gitlab-markup (~> 1.7.1)
   google-protobuf (~> 3.17.0)
-  grpc (~> 1.38.0)
-  grpc-tools (= 1.38.0)
+  grpc (~> 1.30.2)
+  grpc-tools (= 1.30.2)
   licensee (~> 9.14.1)
   pry (~> 0.12.2)
   rbtrace
diff --git a/pkgs/applications/version-management/gitlab/gitaly/default.nix b/pkgs/applications/version-management/gitlab/gitaly/default.nix
index ac3bc1653ab..07a9a297a03 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitaly/default.nix
@@ -9,16 +9,30 @@ let
     inherit ruby;
     copyGemFiles = true;
     gemdir = ./.;
+    gemset =
+      let x = import (gemdir + "/gemset.nix");
+      in x // {
+        # grpc expects the AR environment variable to contain `ar rpc`. See the
+        # discussion in nixpkgs #63056.
+        grpc = x.grpc // {
+          patches = [ ../fix-grpc-ar.patch ];
+          dontBuild = false;
+        };
+      };
   };
-in buildGoModule rec {
-  version = "14.2.1";
+  version = "14.2.3";
+  gitaly_package = "gitlab.com/gitlab-org/gitaly/v${lib.versions.major version}";
+in
+
+buildGoModule {
   pname = "gitaly";
+  inherit version;
 
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitaly";
     rev = "v${version}";
-    sha256 = "sha256-B3NtdS1UcT+nYIdoXs+tW2gnXZ0ew+NiIcCNi5z5fOc=";
+    sha256 = "sha256-TSA5CoNaLeMu7O02rsaR/rNciLwzxSIUUQsCo40Z15c=";
   };
 
   vendorSha256 = "sha256-WhkNK+V7yXK+le1u8StAKajZIBzVKqV/WIau27oZBXE=";
@@ -27,6 +41,8 @@ in buildGoModule rec {
     inherit rubyEnv;
   };
 
+  ldflags = "-X ${gitaly_package}/internal/version.version=${version} -X ${gitaly_package}/internal/version.moduleVersion=${version}";
+
   tags = [ "static,system_libgit2" ];
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ rubyEnv.wrappedRuby libgit2 openssl zlib pcre http-parser ];
@@ -35,6 +51,7 @@ in buildGoModule rec {
   postInstall = ''
     mkdir -p $ruby
     cp -rv $src/ruby/{bin,lib,proto,git-hooks} $ruby
+    mv $out/bin/gitaly-git2go $out/bin/gitaly-git2go-${version}
   '';
 
   outputs = [ "out" "ruby" ];
diff --git a/pkgs/applications/version-management/gitlab/gitaly/gemset.nix b/pkgs/applications/version-management/gitlab/gitaly/gemset.nix
index 7f3ba7d5014..f5e562ddf6e 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/gemset.nix
+++ b/pkgs/applications/version-management/gitlab/gitaly/gemset.nix
@@ -311,20 +311,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "16qxl287kkf34h71djlf9x3wxmd5ylcm83y2zhnrv81gbrhn8k12";
+      sha256 = "1rsglf7ag17n465iff7vlw83pn2rpl4kv9sb1rpf17nx6xpi7yl5";
       type = "gem";
     };
-    version = "1.38.0";
+    version = "1.30.2";
   };
   grpc-tools = {
     groups = ["development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0sfbf5s19nfgznlb7m2sfw9l0ppvypj46ijjvq5p35fc6b8by5aq";
+      sha256 = "0k9zhsqhamp02ryzgfb4y2bbick151vlhrhj0kqbbz9lyhms0bd4";
       type = "gem";
     };
-    version = "1.38.0";
+    version = "1.30.2";
   };
   i18n = {
     dependencies = ["concurrent-ruby"];
diff --git a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
index f34423ab15e..0e81b89b3db 100644
--- a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
@@ -5,7 +5,7 @@ in
 buildGoModule rec {
   pname = "gitlab-workhorse";
 
-  version = "14.2.1";
+  version = "14.2.3";
 
   src = fetchFromGitLab {
     owner = data.owner;
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile
index ff806aa1ad7..35017bd87d9 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile
+++ b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile
@@ -101,7 +101,7 @@ gem 'graphql', '~> 1.11.8'
 # TODO: remove app/views/graphiql/rails/editors/show.html.erb when https://github.com/rmosolgo/graphiql-rails/pull/71 is released:
 # https://gitlab.com/gitlab-org/gitlab/issues/31747
 gem 'graphiql-rails', '~> 1.4.10'
-gem 'apollo_upload_server', '~> 2.0.2'
+gem 'apollo_upload_server', '~> 2.1.0'
 gem 'graphql-docs', '~> 1.6.0', group: [:development, :test]
 gem 'graphlient', '~> 0.4.0' # Used by BulkImport feature (group::import)
 
@@ -310,7 +310,7 @@ gem 'pg_query', '~> 2.1'
 gem 'premailer-rails', '~> 1.10.3'
 
 # LabKit: Tracing and Correlation
-gem 'gitlab-labkit', '~> 0.21.0'
+gem 'gitlab-labkit', '~> 0.21.1'
 # Thrift is a dependency of gitlab-labkit, we want a version higher than 0.14.0
 # because of https://gitlab.com/gitlab-org/gitlab/-/issues/321900
 gem 'thrift', '>= 0.14.0'
@@ -479,7 +479,7 @@ gem 'gitaly', '~> 14.2.0.pre.rc2'
 # KAS GRPC protocol definitions
 gem 'kas-grpc', '~> 0.0.2'
 
-gem 'grpc', '~> 1.38.0'
+gem 'grpc', '~> 1.30.2'
 
 gem 'google-protobuf', '~> 3.17.1'
 
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
index f43f8610196..3c5286b5edd 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
+++ b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
@@ -73,9 +73,9 @@ GEM
     aes_key_wrap (1.1.0)
     akismet (3.0.0)
     android_key_attestation (0.3.0)
-    apollo_upload_server (2.0.2)
+    apollo_upload_server (2.1.0)
+      actionpack (>= 4.2)
       graphql (>= 1.8)
-      rails (>= 4.2)
     asana (0.10.3)
       faraday (~> 1.0)
       faraday_middleware (~> 1.0)
@@ -468,10 +468,10 @@ GEM
       fog-json (~> 1.2.0)
       mime-types
       ms_rest_azure (~> 0.12.0)
-    gitlab-labkit (0.21.0)
+    gitlab-labkit (0.21.1)
       actionpack (>= 5.0.0, < 7.0.0)
       activesupport (>= 5.0.0, < 7.0.0)
-      grpc (~> 1.38)
+      grpc (~> 1.30.2)
       jaeger-client (~> 1.1)
       opentracing (~> 0.4)
       pg_query (~> 2.1)
@@ -566,8 +566,8 @@ GEM
       graphql (~> 1.6)
       html-pipeline (~> 2.8)
       sass (~> 3.4)
-    grpc (1.38.0)
-      google-protobuf (~> 3.15)
+    grpc (1.30.2)
+      google-protobuf (~> 3.12)
       googleapis-common-protos-types (~> 1.0)
     gssapi (1.2.0)
       ffi (>= 1.0.1)
@@ -1385,7 +1385,7 @@ DEPENDENCIES
   acts-as-taggable-on (~> 7.0)
   addressable (~> 2.8)
   akismet (~> 3.0)
-  apollo_upload_server (~> 2.0.2)
+  apollo_upload_server (~> 2.1.0)
   asana (~> 0.10.3)
   asciidoctor (~> 2.0.10)
   asciidoctor-include-ext (~> 0.3.1)
@@ -1471,7 +1471,7 @@ DEPENDENCIES
   gitlab-dangerfiles (~> 2.3.0)
   gitlab-experiment (~> 0.6.4)
   gitlab-fog-azure-rm (~> 1.1.1)
-  gitlab-labkit (~> 0.21.0)
+  gitlab-labkit (~> 0.21.1)
   gitlab-license (~> 2.0)
   gitlab-mail_room (~> 0.0.9)
   gitlab-markup (~> 1.7.1)
@@ -1493,7 +1493,7 @@ DEPENDENCIES
   graphlient (~> 0.4.0)
   graphql (~> 1.11.8)
   graphql-docs (~> 1.6.0)
-  grpc (~> 1.38.0)
+  grpc (~> 1.30.2)
   gssapi
   guard-rspec
   haml_lint (~> 0.36.0)
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix b/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
index 84c1222dbbc..eb4a7467d50 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
+++ b/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
@@ -195,15 +195,15 @@
     version = "0.3.0";
   };
   apollo_upload_server = {
-    dependencies = ["graphql" "rails"];
+    dependencies = ["actionpack" "graphql"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xk54h9mmzhrbgbmk33v38pavb8w6421mx2yrgsdarkfl9fr90y3";
+      sha256 = "0klhppx4vjfdvgz12wb63bcxy5ymk0mp8wkh01fpgjn2l3fwkwz5";
       type = "gem";
     };
-    version = "2.0.2";
+    version = "2.1.0";
   };
   asana = {
     dependencies = ["faraday" "faraday_middleware" "faraday_middleware-multi_json" "oauth2"];
@@ -1987,10 +1987,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0dzdxrn2ra21nyfnabj44fbwbccjkp3i7cjpym99pzbsx8dkna8z";
+      sha256 = "09xci7jw5sckagnwfjlglz4cywylrf16r83f82asnnngvxadvvmq";
       type = "gem";
     };
-    version = "0.21.0";
+    version = "0.21.1";
   };
   gitlab-license = {
     groups = ["default"];
@@ -2278,10 +2278,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "16qxl287kkf34h71djlf9x3wxmd5ylcm83y2zhnrv81gbrhn8k12";
+      sha256 = "1rsglf7ag17n465iff7vlw83pn2rpl4kv9sb1rpf17nx6xpi7yl5";
       type = "gem";
     };
-    version = "1.38.0";
+    version = "1.30.2";
   };
   gssapi = {
     dependencies = ["ffi"];
diff --git a/pkgs/applications/virtualization/lima/default.nix b/pkgs/applications/virtualization/lima/default.nix
index 93e4c7e0f48..c201ad8805b 100644
--- a/pkgs/applications/virtualization/lima/default.nix
+++ b/pkgs/applications/virtualization/lima/default.nix
@@ -8,13 +8,13 @@
 
 buildGoModule rec {
   pname = "lima";
-  version = "0.6.1";
+  version = "0.6.2";
 
   src = fetchFromGitHub {
     owner = "lima-vm";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-x4IRHxmVeP87M7rSrQWDd9pj2Rb9uGu133mExepxX6Q=";
+    sha256 = "sha256-kSJbSJ85cM6N+V67z+trNNuEO4O2KNs62JTy3Mz8Bi4=";
   };
 
   vendorSha256 = "sha256-PeIEIUX/PwwnbZfXnK3IsENO+zRYLhljBRe910aZgKs=";
diff --git a/pkgs/build-support/rust/build-rust-crate/default.nix b/pkgs/build-support/rust/build-rust-crate/default.nix
index e605c9550e5..13b153315f7 100644
--- a/pkgs/build-support/rust/build-rust-crate/default.nix
+++ b/pkgs/build-support/rust/build-rust-crate/default.nix
@@ -4,313 +4,347 @@
 # This can be useful for deploying packages with NixOps, and to share
 # binary dependencies between projects.
 
-{ lib, stdenv, defaultCrateOverrides, fetchCrate, pkgsBuildBuild, rustc, rust
-, cargo, jq }:
+{ lib
+, stdenv
+, defaultCrateOverrides
+, fetchCrate
+, pkgsBuildBuild
+, rustc
+, rust
+, cargo
+, jq
+, libiconv
+}:
 
 let
-    # Create rustc arguments to link against the given list of dependencies
-    # and renames.
-    #
-    # See docs for crateRenames below.
-    mkRustcDepArgs = dependencies: crateRenames:
-      lib.concatMapStringsSep " " (dep:
+  # Create rustc arguments to link against the given list of dependencies
+  # and renames.
+  #
+  # See docs for crateRenames below.
+  mkRustcDepArgs = dependencies: crateRenames:
+    lib.concatMapStringsSep " "
+      (dep:
         let
-          normalizeName = lib.replaceStrings ["-"] ["_"];
+          normalizeName = lib.replaceStrings [ "-" ] [ "_" ];
           extern = normalizeName dep.libName;
           # Find a choice that matches in name and optionally version.
           findMatchOrUseExtern = choices:
-            lib.findFirst (choice:
-              (!(choice ? version)
-                 || choice.version == dep.version or ""))
-            { rename = extern; }
-            choices;
-          name = if lib.hasAttr dep.crateName crateRenames then
-            let choices = crateRenames.${dep.crateName};
-            in
-            normalizeName (
-              if builtins.isList choices
-              then (findMatchOrUseExtern choices).rename
-              else choices
-            )
-          else
-            extern;
-        in (if lib.any (x: x == "lib" || x == "rlib") dep.crateType then
-           " --extern ${name}=${dep.lib}/lib/lib${extern}-${dep.metadata}.rlib"
-         else
-           " --extern ${name}=${dep.lib}/lib/lib${extern}-${dep.metadata}${stdenv.hostPlatform.extensions.sharedLibrary}")
-      ) dependencies;
+            lib.findFirst
+              (choice:
+                (!(choice ? version)
+                  || choice.version == dep.version or ""))
+              { rename = extern; }
+              choices;
+          name =
+            if lib.hasAttr dep.crateName crateRenames then
+              let choices = crateRenames.${dep.crateName};
+              in
+              normalizeName (
+                if builtins.isList choices
+                then (findMatchOrUseExtern choices).rename
+                else choices
+              )
+            else
+              extern;
+        in
+        (if lib.any (x: x == "lib" || x == "rlib") dep.crateType then
+          " --extern ${name}=${dep.lib}/lib/lib${extern}-${dep.metadata}.rlib"
+        else
+          " --extern ${name}=${dep.lib}/lib/lib${extern}-${dep.metadata}${stdenv.hostPlatform.extensions.sharedLibrary}")
+      )
+      dependencies;
 
-   # Create feature arguments for rustc.
-   mkRustcFeatureArgs = lib.concatMapStringsSep " " (f: ''--cfg feature=\"${f}\"'');
+  # Create feature arguments for rustc.
+  mkRustcFeatureArgs = lib.concatMapStringsSep " " (f: ''--cfg feature=\"${f}\"'');
 
-   inherit (import ./log.nix { inherit lib; }) noisily echo_colored;
+  inherit (import ./log.nix { inherit lib; }) noisily echo_colored;
 
-   configureCrate = import ./configure-crate.nix {
-     inherit lib stdenv rust echo_colored noisily mkRustcDepArgs mkRustcFeatureArgs;
-   };
+  configureCrate = import ./configure-crate.nix {
+    inherit lib stdenv rust echo_colored noisily mkRustcDepArgs mkRustcFeatureArgs;
+  };
 
-   buildCrate = import ./build-crate.nix {
-     inherit lib stdenv mkRustcDepArgs mkRustcFeatureArgs rust;
-   };
+  buildCrate = import ./build-crate.nix {
+    inherit lib stdenv mkRustcDepArgs mkRustcFeatureArgs rust;
+  };
 
-   installCrate = import ./install-crate.nix { inherit stdenv; };
+  installCrate = import ./install-crate.nix { inherit stdenv; };
 
-   # Allow access to the rust attribute set from inside buildRustCrate, which
-   # has a parameter that shadows the name.
-   rustAttrs = rust;
+  # Allow access to the rust attribute set from inside buildRustCrate, which
+  # has a parameter that shadows the name.
+  rustAttrs = rust;
 in
 
-/* The overridable pkgs.buildRustCrate function.
- *
- * Any unrecognized parameters will be passed as to
- * the underlying stdenv.mkDerivation.
- */
- crate_: lib.makeOverridable (
-   # The rust compiler to use.
-   #
-   # Default: pkgs.rustc
-   { rust
-   # Whether to build a release version (`true`) or a debug
-   # version (`false`). Debug versions are faster to build
-   # but might be much slower at runtime.
-   , release
-   # Whether to print rustc invocations etc.
-   #
-   # Example: false
-   # Default: true
-   , verbose
-   # A list of rust/cargo features to enable while building the crate.
-   # Example: [ "std" "async" ]
-   , features
-   # Additional native build inputs for building this crate.
-   , nativeBuildInputs
-   # Additional build inputs for building this crate.
-   #
-   # Example: [ pkgs.openssl ]
-   , buildInputs
-   # Allows to override the parameters to buildRustCrate
-   # for any rust dependency in the transitive build tree.
-   #
-   # Default: pkgs.defaultCrateOverrides
-   #
-   # Example:
-   #
-   # pkgs.defaultCrateOverrides // {
-   #   hello = attrs: { buildInputs = [ openssl ]; };
-   # }
-   , crateOverrides
-   # Rust library dependencies, i.e. other libaries that were built
-   # with buildRustCrate.
-   , dependencies
-   # Rust build dependencies, i.e. other libaries that were built
-   # with buildRustCrate and are used by a build script.
-   , buildDependencies
-   # Specify the "extern" name of a library if it differs from the library target.
-   # See above for an extended explanation.
-   #
-   # Default: no renames.
-   #
-   # Example:
-   #
-   # `crateRenames` supports two formats.
-   #
-   # The simple version is an attrset that maps the
-   # `crateName`s of the dependencies to their alternative
-   # names.
-   #
-   # ```nix
-   # {
-   #   my_crate_name = "my_alternative_name";
-   #   # ...
-   # }
-   # ```
-   #
-   # The extended version is also keyed by the `crateName`s but allows
-   # different names for different crate versions:
-   #
-   # ```nix
-   # {
-   #   my_crate_name = [
-   #       { version = "1.2.3"; rename = "my_alternative_name01"; }
-   #       { version = "3.2.3"; rename = "my_alternative_name03"; }
-   #   ]
-   #   # ...
-   # }
-   # ```
-   #
-   # This roughly corresponds to the following snippet in Cargo.toml:
-   #
-   # ```toml
-   # [dependencies]
-   # my_alternative_name01 = { package = "my_crate_name", version = "0.1" }
-   # my_alternative_name03 = { package = "my_crate_name", version = "0.3" }
-   # ```
-   #
-   # Dependencies which use the lib target name as extern name, do not need
-   # to be specified in the crateRenames, even if their crate name differs.
-   #
-   # Including multiple versions of a crate is very popular during
-   # ecosystem transitions, e.g. from futures 0.1 to futures 0.3.
-   , crateRenames
-   # A list of extra options to pass to rustc.
-   #
-   # Example: [ "-Z debuginfo=2" ]
-   # Default: []
-   , extraRustcOpts
-   # Whether to enable building tests.
-   # Use true to enable.
-   # Default: false
-   , buildTests
-   # Passed to stdenv.mkDerivation.
-   , preUnpack
-   # Passed to stdenv.mkDerivation.
-   , postUnpack
-   # Passed to stdenv.mkDerivation.
-   , prePatch
-   # Passed to stdenv.mkDerivation.
-   , patches
-   # Passed to stdenv.mkDerivation.
-   , postPatch
-   # Passed to stdenv.mkDerivation.
-   , preConfigure
-   # Passed to stdenv.mkDerivation.
-   , postConfigure
-   # Passed to stdenv.mkDerivation.
-   , preBuild
-   # Passed to stdenv.mkDerivation.
-   , postBuild
-   # Passed to stdenv.mkDerivation.
-   , preInstall
-   # Passed to stdenv.mkDerivation.
-   , postInstall
-   }:
+  /* The overridable pkgs.buildRustCrate function.
+    *
+    * Any unrecognized parameters will be passed as to
+    * the underlying stdenv.mkDerivation.
+  */
+crate_: lib.makeOverridable
+  (
+    # The rust compiler to use.
+    #
+    # Default: pkgs.rustc
+    { rust
+      # Whether to build a release version (`true`) or a debug
+      # version (`false`). Debug versions are faster to build
+      # but might be much slower at runtime.
+    , release
+      # Whether to print rustc invocations etc.
+      #
+      # Example: false
+      # Default: true
+    , verbose
+      # A list of rust/cargo features to enable while building the crate.
+      # Example: [ "std" "async" ]
+    , features
+      # Additional native build inputs for building this crate.
+    , nativeBuildInputs
+      # Additional build inputs for building this crate.
+      #
+      # Example: [ pkgs.openssl ]
+    , buildInputs
+      # Allows to override the parameters to buildRustCrate
+      # for any rust dependency in the transitive build tree.
+      #
+      # Default: pkgs.defaultCrateOverrides
+      #
+      # Example:
+      #
+      # pkgs.defaultCrateOverrides // {
+      #   hello = attrs: { buildInputs = [ openssl ]; };
+      # }
+    , crateOverrides
+      # Rust library dependencies, i.e. other libaries that were built
+      # with buildRustCrate.
+    , dependencies
+      # Rust build dependencies, i.e. other libaries that were built
+      # with buildRustCrate and are used by a build script.
+    , buildDependencies
+      # Specify the "extern" name of a library if it differs from the library target.
+      # See above for an extended explanation.
+      #
+      # Default: no renames.
+      #
+      # Example:
+      #
+      # `crateRenames` supports two formats.
+      #
+      # The simple version is an attrset that maps the
+      # `crateName`s of the dependencies to their alternative
+      # names.
+      #
+      # ```nix
+      # {
+      #   my_crate_name = "my_alternative_name";
+      #   # ...
+      # }
+      # ```
+      #
+      # The extended version is also keyed by the `crateName`s but allows
+      # different names for different crate versions:
+      #
+      # ```nix
+      # {
+      #   my_crate_name = [
+      #       { version = "1.2.3"; rename = "my_alternative_name01"; }
+      #       { version = "3.2.3"; rename = "my_alternative_name03"; }
+      #   ]
+      #   # ...
+      # }
+      # ```
+      #
+      # This roughly corresponds to the following snippet in Cargo.toml:
+      #
+      # ```toml
+      # [dependencies]
+      # my_alternative_name01 = { package = "my_crate_name", version = "0.1" }
+      # my_alternative_name03 = { package = "my_crate_name", version = "0.3" }
+      # ```
+      #
+      # Dependencies which use the lib target name as extern name, do not need
+      # to be specified in the crateRenames, even if their crate name differs.
+      #
+      # Including multiple versions of a crate is very popular during
+      # ecosystem transitions, e.g. from futures 0.1 to futures 0.3.
+    , crateRenames
+      # A list of extra options to pass to rustc.
+      #
+      # Example: [ "-Z debuginfo=2" ]
+      # Default: []
+    , extraRustcOpts
+      # Whether to enable building tests.
+      # Use true to enable.
+      # Default: false
+    , buildTests
+      # Passed to stdenv.mkDerivation.
+    , preUnpack
+      # Passed to stdenv.mkDerivation.
+    , postUnpack
+      # Passed to stdenv.mkDerivation.
+    , prePatch
+      # Passed to stdenv.mkDerivation.
+    , patches
+      # Passed to stdenv.mkDerivation.
+    , postPatch
+      # Passed to stdenv.mkDerivation.
+    , preConfigure
+      # Passed to stdenv.mkDerivation.
+    , postConfigure
+      # Passed to stdenv.mkDerivation.
+    , preBuild
+      # Passed to stdenv.mkDerivation.
+    , postBuild
+      # Passed to stdenv.mkDerivation.
+    , preInstall
+      # Passed to stdenv.mkDerivation.
+    , postInstall
+    }:
 
-let crate = crate_ // (lib.attrByPath [ crate_.crateName ] (attr: {}) crateOverrides crate_);
-    dependencies_ = dependencies;
-    buildDependencies_ = buildDependencies;
-    processedAttrs = [
-      "src" "nativeBuildInputs" "buildInputs" "crateBin" "crateLib" "libName" "libPath"
-      "buildDependencies" "dependencies" "features" "crateRenames"
-      "crateName" "version" "build" "authors" "colors" "edition"
-      "buildTests"
-    ];
-    extraDerivationAttrs = builtins.removeAttrs crate processedAttrs;
-    nativeBuildInputs_ = nativeBuildInputs;
-    buildInputs_ = buildInputs;
-    extraRustcOpts_ = extraRustcOpts;
-    buildTests_ = buildTests;
+    let
+      crate = crate_ // (lib.attrByPath [ crate_.crateName ] (attr: { }) crateOverrides crate_);
+      dependencies_ = dependencies;
+      buildDependencies_ = buildDependencies;
+      processedAttrs = [
+        "src"
+        "nativeBuildInputs"
+        "buildInputs"
+        "crateBin"
+        "crateLib"
+        "libName"
+        "libPath"
+        "buildDependencies"
+        "dependencies"
+        "features"
+        "crateRenames"
+        "crateName"
+        "version"
+        "build"
+        "authors"
+        "colors"
+        "edition"
+        "buildTests"
+      ];
+      extraDerivationAttrs = builtins.removeAttrs crate processedAttrs;
+      nativeBuildInputs_ = nativeBuildInputs;
+      buildInputs_ = buildInputs;
+      extraRustcOpts_ = extraRustcOpts;
+      buildTests_ = buildTests;
 
-    # crate2nix has a hack for the old bash based build script that did split
-    # entries at `,`. No we have to work around that hack.
-    # https://github.com/kolloch/crate2nix/blame/5b19c1b14e1b0e5522c3e44e300d0b332dc939e7/crate2nix/templates/build.nix.tera#L89
-    crateBin = lib.filter (bin: !(bin ? name && bin.name == ",")) (crate.crateBin or []);
-    hasCrateBin = crate ? crateBin;
-in
-stdenv.mkDerivation (rec {
+      # crate2nix has a hack for the old bash based build script that did split
+      # entries at `,`. No we have to work around that hack.
+      # https://github.com/kolloch/crate2nix/blame/5b19c1b14e1b0e5522c3e44e300d0b332dc939e7/crate2nix/templates/build.nix.tera#L89
+      crateBin = lib.filter (bin: !(bin ? name && bin.name == ",")) (crate.crateBin or [ ]);
+      hasCrateBin = crate ? crateBin;
+    in
+    stdenv.mkDerivation (rec {
 
-    inherit (crate) crateName;
-    inherit
-      preUnpack
-      postUnpack
-      prePatch
-      patches
-      postPatch
-      preConfigure
-      postConfigure
-      preBuild
-      postBuild
-      preInstall
-      postInstall
-      buildTests
-    ;
+      inherit (crate) crateName;
+      inherit
+        preUnpack
+        postUnpack
+        prePatch
+        patches
+        postPatch
+        preConfigure
+        postConfigure
+        preBuild
+        postBuild
+        preInstall
+        postInstall
+        buildTests
+        ;
 
-    src = crate.src or (fetchCrate { inherit (crate) crateName version sha256; });
-    name = "rust_${crate.crateName}-${crate.version}${lib.optionalString buildTests_ "-test"}";
-    version = crate.version;
-    depsBuildBuild = [ pkgsBuildBuild.stdenv.cc ];
-    nativeBuildInputs = [ rust stdenv.cc cargo jq ] ++ (crate.nativeBuildInputs or []) ++ nativeBuildInputs_;
-    buildInputs = (crate.buildInputs or []) ++ buildInputs_;
-    dependencies = map lib.getLib dependencies_;
-    buildDependencies = map lib.getLib buildDependencies_;
+      src = crate.src or (fetchCrate { inherit (crate) crateName version sha256; });
+      name = "rust_${crate.crateName}-${crate.version}${lib.optionalString buildTests_ "-test"}";
+      version = crate.version;
+      depsBuildBuild = [ pkgsBuildBuild.stdenv.cc ];
+      nativeBuildInputs = [ rust stdenv.cc cargo jq ] ++ (crate.nativeBuildInputs or [ ]) ++ nativeBuildInputs_;
+      buildInputs = lib.optionals stdenv.isDarwin [ libiconv ] ++ (crate.buildInputs or [ ]) ++ buildInputs_;
+      dependencies = map lib.getLib dependencies_;
+      buildDependencies = map lib.getLib buildDependencies_;
 
-    completeDeps = lib.unique (dependencies ++ lib.concatMap (dep: dep.completeDeps) dependencies);
-    completeBuildDeps = lib.unique (
-      buildDependencies
-      ++ lib.concatMap (dep: dep.completeBuildDeps ++ dep.completeDeps) buildDependencies
-    );
+      completeDeps = lib.unique (dependencies ++ lib.concatMap (dep: dep.completeDeps) dependencies);
+      completeBuildDeps = lib.unique (
+        buildDependencies
+          ++ lib.concatMap (dep: dep.completeBuildDeps ++ dep.completeDeps) buildDependencies
+      );
 
-    # Create a list of features that are enabled by the crate itself and
-    # through the features argument of buildRustCrate. Exclude features
-    # with a forward slash, since they are passed through to dependencies.
-    crateFeatures = lib.optionals (crate ? features)
-      (builtins.filter (f: !lib.hasInfix "/" f) (crate.features ++ features));
+      # Create a list of features that are enabled by the crate itself and
+      # through the features argument of buildRustCrate. Exclude features
+      # with a forward slash, since they are passed through to dependencies.
+      crateFeatures = lib.optionals (crate ? features)
+        (builtins.filter (f: !lib.hasInfix "/" f) (crate.features ++ features));
 
-    libName = if crate ? libName then crate.libName else crate.crateName;
-    libPath = if crate ? libPath then crate.libPath else "";
+      libName = if crate ? libName then crate.libName else crate.crateName;
+      libPath = if crate ? libPath then crate.libPath else "";
 
-    # Seed the symbol hashes with something unique every time.
-    # https://doc.rust-lang.org/1.0.0/rustc/metadata/loader/index.html#frobbing-symbols
-    metadata = let
-      depsMetadata = lib.foldl' (str: dep: str + dep.metadata) "" (dependencies ++ buildDependencies);
-      hashedMetadata = builtins.hashString "sha256"
-        (crateName + "-" + crateVersion + "___" + toString (mkRustcFeatureArgs crateFeatures) +
-          "___" + depsMetadata + "___" + rustAttrs.toRustTarget stdenv.hostPlatform);
-      in lib.substring 0 10 hashedMetadata;
+      # Seed the symbol hashes with something unique every time.
+      # https://doc.rust-lang.org/1.0.0/rustc/metadata/loader/index.html#frobbing-symbols
+      metadata =
+        let
+          depsMetadata = lib.foldl' (str: dep: str + dep.metadata) "" (dependencies ++ buildDependencies);
+          hashedMetadata = builtins.hashString "sha256"
+            (crateName + "-" + crateVersion + "___" + toString (mkRustcFeatureArgs crateFeatures) +
+              "___" + depsMetadata + "___" + rustAttrs.toRustTarget stdenv.hostPlatform);
+        in
+        lib.substring 0 10 hashedMetadata;
 
-    build = crate.build or "";
-    # Either set to a concrete sub path to the crate root
-    # or use `null` for auto-detect.
-    workspace_member = crate.workspace_member or ".";
-    crateVersion = crate.version;
-    crateDescription = crate.description or "";
-    crateAuthors = if crate ? authors && lib.isList crate.authors then crate.authors else [];
-    crateHomepage = crate.homepage or "";
-    crateType =
-      if lib.attrByPath ["procMacro"] false crate then ["proc-macro"] else
-      if lib.attrByPath ["plugin"] false crate then ["dylib"] else
-        (crate.type or ["lib"]);
-    colors = lib.attrByPath [ "colors" ] "always" crate;
-    extraLinkFlags = lib.concatStringsSep " " (crate.extraLinkFlags or []);
-    edition = crate.edition or null;
-    extraRustcOpts =
-      lib.optionals (crate ? extraRustcOpts) crate.extraRustcOpts
-      ++ extraRustcOpts_
-      ++ (lib.optional (edition != null) "--edition ${edition}");
+      build = crate.build or "";
+      # Either set to a concrete sub path to the crate root
+      # or use `null` for auto-detect.
+      workspace_member = crate.workspace_member or ".";
+      crateVersion = crate.version;
+      crateDescription = crate.description or "";
+      crateAuthors = if crate ? authors && lib.isList crate.authors then crate.authors else [ ];
+      crateHomepage = crate.homepage or "";
+      crateType =
+        if lib.attrByPath [ "procMacro" ] false crate then [ "proc-macro" ] else
+        if lib.attrByPath [ "plugin" ] false crate then [ "dylib" ] else
+        (crate.type or [ "lib" ]);
+      colors = lib.attrByPath [ "colors" ] "always" crate;
+      extraLinkFlags = lib.concatStringsSep " " (crate.extraLinkFlags or [ ]);
+      edition = crate.edition or null;
+      extraRustcOpts =
+        lib.optionals (crate ? extraRustcOpts) crate.extraRustcOpts
+          ++ extraRustcOpts_
+          ++ (lib.optional (edition != null) "--edition ${edition}");
 
 
-    configurePhase = configureCrate {
-      inherit crateName buildDependencies completeDeps completeBuildDeps crateDescription
-              crateFeatures crateRenames libName build workspace_member release libPath crateVersion
-              extraLinkFlags extraRustcOpts
-              crateAuthors crateHomepage verbose colors;
-    };
-    buildPhase = buildCrate {
-      inherit crateName dependencies
-              crateFeatures crateRenames libName release libPath crateType
-              metadata hasCrateBin crateBin verbose colors
-              extraRustcOpts buildTests;
-    };
-    installPhase = installCrate crateName metadata buildTests;
+      configurePhase = configureCrate {
+        inherit crateName buildDependencies completeDeps completeBuildDeps crateDescription
+          crateFeatures crateRenames libName build workspace_member release libPath crateVersion
+          extraLinkFlags extraRustcOpts
+          crateAuthors crateHomepage verbose colors;
+      };
+      buildPhase = buildCrate {
+        inherit crateName dependencies
+          crateFeatures crateRenames libName release libPath crateType
+          metadata hasCrateBin crateBin verbose colors
+          extraRustcOpts buildTests;
+      };
+      installPhase = installCrate crateName metadata buildTests;
 
-    # depending on the test setting we are either producing something with bins
-    # and libs or just test binaries
-    outputs = if buildTests then [ "out" ] else [ "out" "lib" ];
-    outputDev = if buildTests then [ "out" ] else  [ "lib" ];
+      # depending on the test setting we are either producing something with bins
+      # and libs or just test binaries
+      outputs = if buildTests then [ "out" ] else [ "out" "lib" ];
+      outputDev = if buildTests then [ "out" ] else [ "lib" ];
 
-} // extraDerivationAttrs
-)) {
+    } // extraDerivationAttrs
+    )
+  )
+{
   rust = rustc;
   release = crate_.release or true;
   verbose = crate_.verbose or true;
-  extraRustcOpts = [];
-  features = [];
-  nativeBuildInputs = [];
-  buildInputs = [];
+  extraRustcOpts = [ ];
+  features = [ ];
+  nativeBuildInputs = [ ];
+  buildInputs = [ ];
   crateOverrides = defaultCrateOverrides;
   preUnpack = crate_.preUnpack or "";
   postUnpack = crate_.postUnpack or "";
   prePatch = crate_.prePatch or "";
-  patches = crate_.patches or [];
+  patches = crate_.patches or [ ];
   postPatch = crate_.postPatch or "";
   preConfigure = crate_.preConfigure or "";
   postConfigure = crate_.postConfigure or "";
@@ -318,8 +352,8 @@ stdenv.mkDerivation (rec {
   postBuild = crate_.postBuild or "";
   preInstall = crate_.preInstall or "";
   postInstall = crate_.postInstall or "";
-  dependencies = crate_.dependencies or [];
-  buildDependencies = crate_.buildDependencies or [];
-  crateRenames = crate_.crateRenames or {};
+  dependencies = crate_.dependencies or [ ];
+  buildDependencies = crate_.buildDependencies or [ ];
+  crateRenames = crate_.crateRenames or { };
   buildTests = crate_.buildTests or false;
 }
diff --git a/pkgs/build-support/rust/default-crate-overrides.nix b/pkgs/build-support/rust/default-crate-overrides.nix
index eb58f72f552..e14cbcc1183 100644
--- a/pkgs/build-support/rust/default-crate-overrides.nix
+++ b/pkgs/build-support/rust/default-crate-overrides.nix
@@ -1,7 +1,29 @@
-{ lib, stdenv, pkg-config, curl, darwin, libiconv, libgit2, libssh2,
-  openssl, sqlite, zlib, dbus, dbus-glib, gdk-pixbuf, cairo, python3,
-  libsodium, postgresql, gmp, foundationdb, capnproto, nettle, clang,
-  llvmPackages, linux-pam, ... }:
+{ lib
+, stdenv
+, pkg-config
+, curl
+, darwin
+, libgit2
+, libssh2
+, openssl
+, sqlite
+, zlib
+, dbus
+, dbus-glib
+, gdk-pixbuf
+, cairo
+, python3
+, libsodium
+, postgresql
+, gmp
+, foundationdb
+, capnproto
+, nettle
+, clang
+, llvmPackages
+, linux-pam
+, ...
+}:
 
 let
   inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
@@ -17,20 +39,20 @@ in
 
   cargo = attrs: {
     buildInputs = [ openssl zlib curl ]
-      ++ lib.optionals stdenv.isDarwin [ CoreFoundation Security libiconv ];
+      ++ lib.optionals stdenv.isDarwin [ CoreFoundation Security ];
   };
 
   libz-sys = attrs: {
     nativeBuildInputs = [ pkg-config ];
     buildInputs = [ zlib ];
-    extraLinkFlags = ["-L${zlib.out}/lib"];
+    extraLinkFlags = [ "-L${zlib.out}/lib" ];
   };
 
   curl-sys = attrs: {
     nativeBuildInputs = [ pkg-config ];
     buildInputs = [ zlib curl ];
     propagatedBuildInputs = [ curl zlib ];
-    extraLinkFlags = ["-L${zlib.out}/lib"];
+    extraLinkFlags = [ "-L${zlib.out}/lib" ];
   };
 
   dbus = attrs: {
@@ -115,7 +137,7 @@ in
 
   rink = attrs: {
     buildInputs = [ gmp ];
-    crateBin = [ {  name = "rink"; path = "src/bin/rink.rs"; } ];
+    crateBin = [{ name = "rink"; path = "src/bin/rink.rs"; }];
   };
 
   security-framework-sys = attr: {
diff --git a/pkgs/data/fonts/helvetica-neue-lt-std/default.nix b/pkgs/data/fonts/helvetica-neue-lt-std/default.nix
index 275b0d8f871..19092cb06a5 100644
--- a/pkgs/data/fonts/helvetica-neue-lt-std/default.nix
+++ b/pkgs/data/fonts/helvetica-neue-lt-std/default.nix
@@ -1,21 +1,21 @@
 { lib, fetchzip }:
 
 let
-  version = "2013.06.07"; # date of most recent file in distribution
+  version = "2014.08.16"; # date of most recent file in distribution
 in fetchzip {
   name = "helvetica-neue-lt-std-${version}";
 
-  url = "http://www.ephifonts.com/downloads/helvetica-neue-lt-std.zip";
+  url = "https://web.archive.org/web/20190823153624/http://ephifonts.com/downloads/helvetica-neue-lt-std.zip";
 
   postFetch = ''
     mkdir -p $out/share/fonts
-    unzip -j $downloadedFile Helvetica\ Neue\ LT\ Std/\*.otf -d $out/share/fonts/opentype
+    unzip -j $downloadedFile "Helvetica Neue LT Std/*.otf" -d $out/share/fonts/opentype
   '';
 
   sha256 = "0ampp9vf9xw0sdppl4lb9i9h75ywljhdcqmzh45mx2x9m7h6xgg9";
 
-  meta = {
-    homepage = "http://www.ephifonts.com/free-helvetica-font-helvetica-neue-lt-std.html";
+  meta = with lib; {
+    homepage = "https://web.archive.org/web/20190926040940/http://www.ephifonts.com/free-helvetica-font-helvetica-neue-lt-std.html";
     description = "Helvetica Neue LT Std font";
     longDescription = ''
       Helvetica Neue Lt Std is one of the most highly rated and complete
@@ -28,8 +28,8 @@ in fetchzip {
       font. The numbers are well spaced and defined with high accuracy. The
       punctuation marks are heavily detailed as well.
     '';
-    license = lib.licenses.unfree;
-    maintainers = [ lib.maintainers.romildo ];
-    platforms = lib.platforms.all;
+    license = licenses.unfree;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ romildo ];
   };
 }
diff --git a/pkgs/data/misc/hackage/pin.json b/pkgs/data/misc/hackage/pin.json
index b00021504b4..26b38582e99 100644
--- a/pkgs/data/misc/hackage/pin.json
+++ b/pkgs/data/misc/hackage/pin.json
@@ -1,6 +1,6 @@
 {
-  "commit": "23315eb3220b0748c3aa71a9027dc39e5416ce9e",
-  "url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/23315eb3220b0748c3aa71a9027dc39e5416ce9e.tar.gz",
-  "sha256": "0pgcyfb3lnl7kxpj87sbj50ljlg2l05v4kgcdwy568pcf24bh764",
-  "msg": "Update from Hackage at 2021-08-17T22:21:14Z"
+  "commit": "193a13be44c51ebfc8e991b7bb53a4065129ff4d",
+  "url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/193a13be44c51ebfc8e991b7bb53a4065129ff4d.tar.gz",
+  "sha256": "08j6qx3jqcw7ydwnpjr132l2mlpq6dqvwqgm3gq0ym4kjzrbdwsd",
+  "msg": "Update from Hackage at 2021-08-23T13:50:03Z"
 }
diff --git a/pkgs/desktops/gnome/extensions/collisions.json b/pkgs/desktops/gnome/extensions/collisions.json
index 0eab20b4bd9..7e4953abe4a 100644
--- a/pkgs/desktops/gnome/extensions/collisions.json
+++ b/pkgs/desktops/gnome/extensions/collisions.json
@@ -16,6 +16,18 @@
       "Fuzzy_Clock@dallagi",
       "fuzzy-clock@keepawayfromfire.co.uk"
     ],
+    "hide-activities-button": [
+      "Hide_Activities@shay.shayel.org",
+      "hide-activities-button@nmingori.gnome-shell-extensions.org"
+    ],
+    "shutdowntimer": [
+      "ShutdownTimer@neumann",
+      "ShutdownTimer@deminder"
+    ],
+    "noannoyance": [
+      "noannoyance@sindex.com",
+      "noannoyance@daase.net"
+    ],
     "transparent-window": [
       "transparent-window@pbxqdown.github.com",
       "transparentwindows.mdirshad07"
@@ -23,6 +35,10 @@
     "floating-dock": [
       "floatingDock@sun.wxg@gmail.com",
       "floating-dock@nandoferreira_prof@hotmail.com"
+    ],
+    "gnome-trash": [
+      "gnome-trash@gnome-trash.b00f.gitlab.com",
+      "gnome-trash@b00f.github.io"
     ]
   },
   "40": {
@@ -37,6 +53,23 @@
     "lock-keys": [
       "lockkeys@vaina.lt",
       "lockkeys@fawtytoo"
+    ],
+    "hide-activities-button": [
+      "Hide_Activities@shay.shayel.org",
+      "hide-activities-button@nmingori.gnome-shell-extensions.org"
+    ],
+    "shutdowntimer": [
+      "ShutdownTimer@neumann",
+      "shutdown-timer-gnome-shell-extension",
+      "ShutdownTimer@deminder"
+    ],
+    "noannoyance": [
+      "noannoyance@sindex.com",
+      "noannoyance@daase.net"
+    ],
+    "extension-list": [
+      "extension-list@tu.berry",
+      "screen-lock@garciabaameiro.com"
     ]
   }
 }
diff --git a/pkgs/desktops/gnome/extensions/extensionRenames.nix b/pkgs/desktops/gnome/extensions/extensionRenames.nix
index 674720b4eeb..fe1fcf9985c 100644
--- a/pkgs/desktops/gnome/extensions/extensionRenames.nix
+++ b/pkgs/desktops/gnome/extensions/extensionRenames.nix
@@ -16,6 +16,22 @@
   "system-monitor@paradoxxx.zero.gmail.com" = "system-monitor"; # manually packaged
   "System_Monitor@bghome.gmail.com" = "system-monitor-2";
 
+  "Hide_Activities@shay.shayel.org" = "hide-activities-button";
+  "hide-activities-button@nmingori.gnome-shell-extensions.org" = "hide-activities-button-2";
+
+  # At the moment, ShutdownTimer@deminder is a fork of ShutdownTimer@neumann which adds new features
+  # there seem to be upstream plans, so this should be checked periodically:
+  # https://github.com/Deminder/ShutdownTimer https://github.com/neumann-d/ShutdownTimer/pull/46
+  "ShutdownTimer@neumann" = null;
+  "shutdown-timer-gnome-shell-extension" = "shutdowntimer-2";
+  "ShutdownTimer@deminder" = "shutdowntimer";
+
+  "noannoyance@sindex.com" = "noannoyance";
+  "noannoyance@daase.net" = "noannoyance-2";
+
+  "extension-list@tu.berry" = "extension-list";
+  "screen-lock@garciabaameiro.com" = "screen-lock"; # Don't know why they got 'extension-list' as slug
+
 
   # ############################################################################
   # These are conflicts for 3.38 extensions. They will very probably come back
@@ -32,7 +48,6 @@
   #"flypie@schneegans.github.com" = null;
 
 
-
   # ############################################################################
   # Overrides for extensions that were manually packaged in the past but are gradually
   # being replaced by automatic packaging where possible.
diff --git a/pkgs/desktops/gnome/extensions/extensions.json b/pkgs/desktops/gnome/extensions/extensions.json
index b046591b877..d528b9dfffa 100644
--- a/pkgs/desktops/gnome/extensions/extensions.json
+++ b/pkgs/desktops/gnome/extensions/extensions.json
@@ -1,24 +1,26 @@
 [ {"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": "24", "sha256": "0181cfrs06qplig4yy5aaghxq2w5x88wvc0166c9z31fsgshqh5z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgY2xvY2sgdG8gbGVmdCBvZiBzdGF0dXMgbWVudSBidXR0b24iLAogICJuYW1lIjogIkZyaXBwZXJ5IE1vdmUgQ2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwOi8vZnJpcHBlcnkub3JnL2V4dGVuc2lvbnMiLAogICJ1dWlkIjogIk1vdmVfQ2xvY2tAcm15LnBvYm94LmNvbSIsCiAgInZlcnNpb24iOiAyNAp9"}}}
-, {"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": "52", "sha256": "0qw25lp2hwp5ssi4gq3xpnbwk96fgpwd5j0lgzwk94gg0p9dsi9s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGJvdHRvbSBwYW5lbCB0byB0aGUgc2hlbGwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmcmlwcGVyeS1ib3R0b20tcGFuZWwiLAogICJuYW1lIjogIkZyaXBwZXJ5IEJvdHRvbSBQYW5lbCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZnJpcHBlcnkuYm90dG9tLXBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cDovL2ZyaXBwZXJ5Lm9yZy9leHRlbnNpb25zIiwKICAidXVpZCI6ICJCb3R0b21fUGFuZWxAcm15LnBvYm94LmNvbSIsCiAgInZlcnNpb24iOiA1Mgp9"}}}
+, {"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": "53", "sha256": "1xvlki8wdsc9s8kjz7yid486kdr0jcb0n7ik0bc1c7ma5vi5jfyi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGJvdHRvbSBwYW5lbCB0byB0aGUgc2hlbGwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmcmlwcGVyeS1ib3R0b20tcGFuZWwiLAogICJuYW1lIjogIkZyaXBwZXJ5IEJvdHRvbSBQYW5lbCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZnJpcHBlcnkuYm90dG9tLXBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cDovL2ZyaXBwZXJ5Lm9yZy9leHRlbnNpb25zIiwKICAidXVpZCI6ICJCb3R0b21fUGFuZWxAcm15LnBvYm94LmNvbSIsCiAgInZlcnNpb24iOiA1Mwp9"}}}
 , {"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": "41", "sha256": "1iv39jz3yzfiphd2xfnjzf8i9lmwxnhxlv6yhw6cwlyrf7pz68vx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBsYXVuY2hlcnMgZm9yIEZhdm9yaXRlcyB0byB0aGUgcGFuZWwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmcmlwcGVyeS1wYW5lbC1mYXZvcml0ZXMiLAogICJuYW1lIjogIkZyaXBwZXJ5IFBhbmVsIEZhdm9yaXRlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZnJpcHBlcnkucGFuZWwtZmF2b3JpdGVzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9mcmlwcGVyeS5vcmcvZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAiUGFuZWxfRmF2b3JpdGVzQHJteS5wb2JveC5jb20iLAogICJ2ZXJzaW9uIjogNDEKfQ=="}}}
-, {"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": "47", "sha256": "0qjhq1x0lga8zsgqa8dw03ijykm3izh0qylgw2a4gah1gp5vmg9g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGNhdGVnb3J5LWJhc2VkIG1lbnUgZm9yIGFwcGxpY2F0aW9ucy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImFwcHMtbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkFwcGxpY2F0aW9ucyBNZW51IiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJlMjAwMkBiay5ydSIsCiAgICAiZGViYXJzaGlyQGdub21lLm9yZyIKICBdLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJhcHBzLW1lbnVAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDcKfQ=="}}}
-, {"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": "46", "sha256": "1k98m4kyppa3ky0yxranvp1d8q9w01m3x35v2l7kzanfdlbckbkm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc3RhdHVzIG1lbnUgZm9yIGFjY2Vzc2luZyBhbmQgdW5tb3VudGluZyByZW1vdmFibGUgZGV2aWNlcy4iLAogICJleHRlbnNpb24taWQiOiAiZHJpdmUtbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlJlbW92YWJsZSBEcml2ZSBNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRyaXZlLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJkcml2ZS1tZW51QGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ2Cn0="}}}
-, {"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": "50", "sha256": "1z6hx0djjxqclx0n00rc44cmc9kisjqk76wxj97d7mh1mi91wf2k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIG1lbnUgZm9yIHF1aWNrbHkgbmF2aWdhdGluZyBwbGFjZXMgaW4gdGhlIHN5c3RlbS5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogInBsYWNlcy1tZW51IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiUGxhY2VzIFN0YXR1cyBJbmRpY2F0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucGxhY2VzLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJwbGFjZXMtbWVudUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1MAp9"}}}
-, {"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": "52", "sha256": "05r8svpakhnaw8yqib9j0bxxw4bbdkw5xzahkl4mq3kiy56d9kxv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IGtleWJvYXJkIHNlbGVjdGlvbiBvZiB3aW5kb3dzIGFuZCB3b3Jrc3BhY2VzIGluIG92ZXJsYXkgbW9kZS4gPEN0cmw+bnVtYmVyIHNlbGVjdHMgYSB3b3Jrc3BhY2UsIGFuZCA8QWx0Pm51bWJlciBzZWxlY3RzIGEgd2luZG93LiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3dzTmF2aWdhdG9yIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAid2luZG93TmF2aWdhdG9yIiwKICAib3JpZ2luYWwtYXV0aG9yIjogInphc3BpcmVAcmFtYmxlci5ydSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53aW5kb3dzTmF2aWdhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogIndpbmRvd3NOYXZpZ2F0b3JAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNTIKfQ=="}}}
+, {"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="}}}
+, {"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"}}}
+, {"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=="}}}
+, {"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=="}}}
 , {"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": "47", "sha256": "1y5qd46zbr7qrhglbb1ylb4hl40dfalkjgpvrq3m1kjry6kdvkv1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgQWN0aXZpdGllcyBidXR0b24gd2l0aCBhbiBBcHBsaWNhdGlvbnMgbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImZyaXBwZXJ5LWFwcGxpY2F0aW9ucy1tZW51IiwKICAibmFtZSI6ICJGcmlwcGVyeSBBcHBsaWNhdGlvbnMgTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZnJpcHBlcnkuYXBwbGljYXRpb25zLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwOi8vZnJpcHBlcnkub3JnL2V4dGVuc2lvbnMiLAogICJ1dWlkIjogIkFwcGxpY2F0aW9uc19NZW51QHJteS5wb2JveC5jb20iLAogICJ2ZXJzaW9uIjogNDcKfQ=="}}}
-, {"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": "45", "sha256": "0xljd6469q5p3pxnjhbpd5blrkidhgwffx4dhdicw8253ad3c8qd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgYXBwbGljYXRpb25zIHRvIHNwZWNpZmljIHdvcmtzcGFjZXMgd2hlbiB0aGV5IGNyZWF0ZSB3aW5kb3dzLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJhdXRvLW1vdmUtd2luZG93cyIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkF1dG8gTW92ZSBXaW5kb3dzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJhbGVzc2FuZHJvLmNyaXNtYW5pQGdtYWlsLmNvbSIsCiAgICAidGhvbWFzLmJvdWZmb25AZ21haWwuY29tIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hdXRvLW1vdmUtd2luZG93cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImF1dG8tbW92ZS13aW5kb3dzQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ1Cn0="}}}
-, {"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": "46", "sha256": "0fll3fkszf5lmiy0cmg9w0ma5n7pzq5s3bkx0kyg37pib28zhlaz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd2luZG93cyBpbiBvdmVydmlldyBpbiBhIG1vcmUgY29tcGFjdCB3YXkuIiwKICAiZXh0ZW5zaW9uLWlkIjogIm5hdGl2ZS13aW5kb3ctcGxhY2VtZW50IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiTmF0aXZlIFdpbmRvdyBQbGFjZW1lbnQiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgIndlcG1hc2NoZGFAZ214LmRlIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5uYXRpdmUtd2luZG93LXBsYWNlbWVudCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogIm5hdGl2ZS13aW5kb3ctcGxhY2VtZW50QGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ2Cn0="}}}
-, {"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": "44", "sha256": "14alrbhwqhy48vlqi7l12cila2ai0x57ksw6lxmgfir1mxvj8l03", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgc2hlbGwgdGhlbWVzIGZyb20gdXNlciBkaXJlY3RvcnkuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJVc2VyIFRoZW1lcyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiam9obi5zdG93ZXJzQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXNlci10aGVtZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogInVzZXItdGhlbWVAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDQKfQ=="}}}
-, {"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": "47", "sha256": "03cf5jadkvbz9r33mhv5mkv8qxsv7zf7jib1w7xcks1r2pak4ax9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBhbiBpbmRpY2F0b3Igb24gdGhlIHBhbmVsIHNpZ25hbGluZyBpbiB3aGljaCB3b3Jrc3BhY2UgeW91IGFyZSwgYW5kIGdpdmUgeW91IHRoZSBwb3NzaWJpbGl0eSBvZiBzd2l0Y2hpbmcgdG8gYW5vdGhlciBvbmUuIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJXb3Jrc3BhY2UgSW5kaWNhdG9yIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJlcmljay5yZWRAZ21haWwuY29tIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid29ya3NwYWNlLWluZGljYXRvckBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0Nwp9"}}}
-, {"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": "44", "sha256": "0z9kn4n7snq94yrydikbnj9rwia1ad8q04mysjj0rry1v504mf8c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyBvbiBhIGdyaWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RpbGVAdmlib3UiLAogICJuYW1lIjogImdUaWxlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0aWxlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dUaWxlIiwKICAidXVpZCI6ICJnVGlsZUB2aWJvdSIsCiAgInZlcnNpb24iOiA0NAp9"}, "40": {"version": "44", "sha256": "0z9kn4n7snq94yrydikbnj9rwia1ad8q04mysjj0rry1v504mf8c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyBvbiBhIGdyaWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RpbGVAdmlib3UiLAogICJuYW1lIjogImdUaWxlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0aWxlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dUaWxlIiwKICAidXVpZCI6ICJnVGlsZUB2aWJvdSIsCiAgInZlcnNpb24iOiA0NAp9"}}}
-, {"uuid": "lockkeys@vaina.lt", "name": "Lock Keys", "pname": "lock-keys", "description": "Numlock & Capslock status on the panel", "link": "https://extensions.gnome.org/extension/36/lock-keys/", "shell_version_map": {"38": {"version": "42", "sha256": "0rbb7abbpbzbgpaidf8vgsx0camfczgcd5d10m7xp702gasbq5lk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsIiwKICAibmFtZSI6ICJMb2NrIEtleXMiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIkthemltaWVyYXMgVmFpbmEsIFBpZXJyZSBPc3NtYW4sIGVyZ3VpbGxlLCBqb25uaXVzLCBQaGlsaXBwIFdvbGZlciwgTWFyaXVzeiBMaXNvd3NraSwgQ3Jpc3RpYW4gQmVyb2l6YSwgd2FybXN1bjAyMjAsIFJhc211cyBLYWosIFBhYmxvIE1hcnRpbi1Hb21leiBCb3Vza2EsIFJhcGhhXHUwMGVibCBSb2NoZXQsIEx1aXogTmlja2VsLCBKZXNzZSwgRHVcdTAxNjFhbiBLYXppayIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rYXp5c21hc3Rlci9nbm9tZS1zaGVsbC1leHRlbnNpb24tbG9ja2tleXMiLAogICJ1dWlkIjogImxvY2trZXlzQHZhaW5hLmx0IiwKICAidmVyc2lvbiI6IDQyCn0="}, "40": {"version": "42", "sha256": "0rbb7abbpbzbgpaidf8vgsx0camfczgcd5d10m7xp702gasbq5lk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsIiwKICAibmFtZSI6ICJMb2NrIEtleXMiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIkthemltaWVyYXMgVmFpbmEsIFBpZXJyZSBPc3NtYW4sIGVyZ3VpbGxlLCBqb25uaXVzLCBQaGlsaXBwIFdvbGZlciwgTWFyaXVzeiBMaXNvd3NraSwgQ3Jpc3RpYW4gQmVyb2l6YSwgd2FybXN1bjAyMjAsIFJhc211cyBLYWosIFBhYmxvIE1hcnRpbi1Hb21leiBCb3Vza2EsIFJhcGhhXHUwMGVibCBSb2NoZXQsIEx1aXogTmlja2VsLCBKZXNzZSwgRHVcdTAxNjFhbiBLYXppayIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rYXp5c21hc3Rlci9nbm9tZS1zaGVsbC1leHRlbnNpb24tbG9ja2tleXMiLAogICJ1dWlkIjogImxvY2trZXlzQHZhaW5hLmx0IiwKICAidmVyc2lvbiI6IDQyCn0="}}}
+, {"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"}}}
+, {"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"}}}
+, {"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="}}}
+, {"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=="}}}
+, {"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": "45", "sha256": "1fm4ljkw0l4w8z1qd9i30nd7khvzjvc0kykv659xkqj7lghyk02k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyBvbiBhIGdyaWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RpbGVAdmlib3UiLAogICJuYW1lIjogImdUaWxlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0aWxlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dUaWxlIiwKICAidXVpZCI6ICJnVGlsZUB2aWJvdSIsCiAgInZlcnNpb24iOiA0NQp9"}, "40": {"version": "45", "sha256": "1fm4ljkw0l4w8z1qd9i30nd7khvzjvc0kykv659xkqj7lghyk02k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyBvbiBhIGdyaWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RpbGVAdmlib3UiLAogICJuYW1lIjogImdUaWxlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0aWxlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dUaWxlIiwKICAidXVpZCI6ICJnVGlsZUB2aWJvdSIsCiAgInZlcnNpb24iOiA0NQp9"}}}
+, {"uuid": "lockkeys@vaina.lt", "name": "Lock Keys", "pname": "lock-keys", "description": "Numlock & Capslock status on the panel", "link": "https://extensions.gnome.org/extension/36/lock-keys/", "shell_version_map": {"38": {"version": "43", "sha256": "0acal805w1kifb07hk9v90f779x5fxzfphrm20hphvgyk2dwyaq3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsIiwKICAibmFtZSI6ICJMb2NrIEtleXMiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIkthemltaWVyYXMgVmFpbmEsIFBpZXJyZSBPc3NtYW4sIGVyZ3VpbGxlLCBqb25uaXVzLCBQaGlsaXBwIFdvbGZlciwgTWFyaXVzeiBMaXNvd3NraSwgQ3Jpc3RpYW4gQmVyb2l6YSwgd2FybXN1bjAyMjAsIFJhc211cyBLYWosIFBhYmxvIE1hcnRpbi1Hb21leiBCb3Vza2EsIFJhcGhhXHUwMGVibCBSb2NoZXQsIEx1aXogTmlja2VsLCBKZXNzZSwgRHVcdTAxNjFhbiBLYXppayIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rYXp5c21hc3Rlci9nbm9tZS1zaGVsbC1leHRlbnNpb24tbG9ja2tleXMiLAogICJ1dWlkIjogImxvY2trZXlzQHZhaW5hLmx0IiwKICAidmVyc2lvbiI6IDQzCn0="}, "40": {"version": "43", "sha256": "0acal805w1kifb07hk9v90f779x5fxzfphrm20hphvgyk2dwyaq3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsIiwKICAibmFtZSI6ICJMb2NrIEtleXMiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIkthemltaWVyYXMgVmFpbmEsIFBpZXJyZSBPc3NtYW4sIGVyZ3VpbGxlLCBqb25uaXVzLCBQaGlsaXBwIFdvbGZlciwgTWFyaXVzeiBMaXNvd3NraSwgQ3Jpc3RpYW4gQmVyb2l6YSwgd2FybXN1bjAyMjAsIFJhc211cyBLYWosIFBhYmxvIE1hcnRpbi1Hb21leiBCb3Vza2EsIFJhcGhhXHUwMGVibCBSb2NoZXQsIEx1aXogTmlja2VsLCBKZXNzZSwgRHVcdTAxNjFhbiBLYXppayIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rYXp5c21hc3Rlci9nbm9tZS1zaGVsbC1leHRlbnNpb24tbG9ja2tleXMiLAogICJ1dWlkIjogImxvY2trZXlzQHZhaW5hLmx0IiwKICAidmVyc2lvbiI6IDQzCn0="}}}
 , {"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": "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"}}}
 , {"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="}}}
-, {"uuid": "CoverflowAltTab@palatis.blogspot.com", "name": "Coverflow Alt-Tab", "pname": "coverflow-alt-tab", "description": "Replacement of Alt-Tab, iterates through windows in a cover-flow manner.", "link": "https://extensions.gnome.org/extension/97/coverflow-alt-tab/", "shell_version_map": {"38": {"version": "44", "sha256": "18qpriqi0h6la45bl584hglnni0ka2d5q4qv61wdcan28a7kywq4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNpbm5hbW9uLXZlcnNpb24iOiBbCiAgICAiMS4yIiwKICAgICIxLjQiLAogICAgIjEuNiIsCiAgICAiMS44IiwKICAgICIxLjkiLAogICAgIjIuMCIsCiAgICAiMi4xIiwKICAgICIyLjIiLAogICAgIjIuMyIsCiAgICAiMi40IiwKICAgICIyLjgiLAogICAgIjMuMCIKICBdLAogICJkZXNjcmlwdGlvbiI6ICJSZXBsYWNlbWVudCBvZiBBbHQtVGFiLCBpdGVyYXRlcyB0aHJvdWdoIHdpbmRvd3MgaW4gYSBjb3Zlci1mbG93IG1hbm5lci4iLAogICJuYW1lIjogIkNvdmVyZmxvdyBBbHQtVGFiIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZG1vNjAvQ292ZXJmbG93QWx0VGFiIiwKICAidXVpZCI6ICJDb3ZlcmZsb3dBbHRUYWJAcGFsYXRpcy5ibG9nc3BvdC5jb20iLAogICJ2ZXJzaW9uIjogNDQKfQ=="}, "40": {"version": "45", "sha256": "1csgcr90cdi7r3dlzmp1h9qg225ss4cws4pgzc4iqifjh6c8z2rx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNpbm5hbW9uLXZlcnNpb24iOiBbCiAgICAiMS4yIiwKICAgICIxLjQiLAogICAgIjEuNiIsCiAgICAiMS44IiwKICAgICIxLjkiLAogICAgIjIuMCIsCiAgICAiMi4xIiwKICAgICIyLjIiLAogICAgIjIuMyIsCiAgICAiMi40IiwKICAgICIyLjgiLAogICAgIjMuMCIKICBdLAogICJkZXNjcmlwdGlvbiI6ICJSZXBsYWNlbWVudCBvZiBBbHQtVGFiLCBpdGVyYXRlcyB0aHJvdWdoIHdpbmRvd3MgaW4gYSBjb3Zlci1mbG93IG1hbm5lci4iLAogICJuYW1lIjogIkNvdmVyZmxvdyBBbHQtVGFiIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RtbzYwL0NvdmVyZmxvd0FsdFRhYiIsCiAgInV1aWQiOiAiQ292ZXJmbG93QWx0VGFiQHBhbGF0aXMuYmxvZ3Nwb3QuY29tIiwKICAidmVyc2lvbiI6IDQ1Cn0="}}}
+, {"uuid": "CoverflowAltTab@palatis.blogspot.com", "name": "Coverflow Alt-Tab", "pname": "coverflow-alt-tab", "description": "Replacement of Alt-Tab, iterates through windows in a cover-flow manner.", "link": "https://extensions.gnome.org/extension/97/coverflow-alt-tab/", "shell_version_map": {"38": {"version": "44", "sha256": "18qpriqi0h6la45bl584hglnni0ka2d5q4qv61wdcan28a7kywq4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNpbm5hbW9uLXZlcnNpb24iOiBbCiAgICAiMS4yIiwKICAgICIxLjQiLAogICAgIjEuNiIsCiAgICAiMS44IiwKICAgICIxLjkiLAogICAgIjIuMCIsCiAgICAiMi4xIiwKICAgICIyLjIiLAogICAgIjIuMyIsCiAgICAiMi40IiwKICAgICIyLjgiLAogICAgIjMuMCIKICBdLAogICJkZXNjcmlwdGlvbiI6ICJSZXBsYWNlbWVudCBvZiBBbHQtVGFiLCBpdGVyYXRlcyB0aHJvdWdoIHdpbmRvd3MgaW4gYSBjb3Zlci1mbG93IG1hbm5lci4iLAogICJuYW1lIjogIkNvdmVyZmxvdyBBbHQtVGFiIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZG1vNjAvQ292ZXJmbG93QWx0VGFiIiwKICAidXVpZCI6ICJDb3ZlcmZsb3dBbHRUYWJAcGFsYXRpcy5ibG9nc3BvdC5jb20iLAogICJ2ZXJzaW9uIjogNDQKfQ=="}, "40": {"version": "46", "sha256": "1w8qcwbh6g9gh7gl8ka25sbcv5ggfc6rv6ghw17j54qavkkmppn0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2VtZW50IG9mIEFsdC1UYWIsIGl0ZXJhdGVzIHRocm91Z2ggd2luZG93cyBpbiBhIGNvdmVyLWZsb3cgbWFubmVyLiIsCiAgIm5hbWUiOiAiQ292ZXJmbG93IEFsdC1UYWIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZG1vNjAvQ292ZXJmbG93QWx0VGFiIiwKICAidXVpZCI6ICJDb3ZlcmZsb3dBbHRUYWJAcGFsYXRpcy5ibG9nc3BvdC5jb20iLAogICJ2ZXJzaW9uIjogNDYKfQ=="}}}
+, {"uuid": "netspeed@hedayaty.gmail.com", "name": "NetSpeed", "pname": "netspeed", "description": "Displays Internet Speed", "link": "https://extensions.gnome.org/extension/104/netspeed/", "shell_version_map": {"40": {"version": "33", "sha256": "1l4bxk7b7q1xc8hrvhcgabk88b74f49g0yq4ja4ycp4zhih52mrv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIEludGVybmV0IFNwZWVkIiwKICAibmFtZSI6ICJOZXRTcGVlZCIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJoZWRheWF0eUBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGVkYXlhdHkvTmV0U3BlZWQiLAogICJ1dWlkIjogIm5ldHNwZWVkQGhlZGF5YXR5LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzMwp9"}}}
 , {"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=="}}}
 , {"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": "76", "sha256": "1m8lb3lb4fvb6hb3awbl5yz2lf6858fq122d8h89glhzw7d4jlpc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIFBlcnNpYW4gZGF0ZSBpbiB0aGUgdG9wIHBhbmVsLlxuXG5JdCBzaG93czpcbjEtIFBlcnNpYW4gY2FsZW5kYXJcbjItIEl0IGNhbiBzaG93LCB0b2RheSBpcyBhIGhvbGlkYXkgb3Igbm90IVxuMy0gU2hvdyBub3RpZmljYXRpb24gb25EYXlDaGFuZ2VkIVxuNC0gRGF0ZSBjb252ZXJ0ZXIgYmV0d2VlbiBQZXJzaWFuLCBHcmVnb3JpYW4gYW5kIEx1bmFyIEhpanJpXG41LSBFdmVudHM6XG41LTEtIE9mZmljaWFsIHNvbGFyIGV2ZW50cy5cbjUtMi0gT2ZmaWNpYWwgbHVuYXIgZXZlbnRzLlxuNS0zLSBPZmZpY2lhbCBpbnRlcm5hdGlvbmFsIGV2ZW50cy5cbjUtNC0gVHJhZGl0aW9uYWwgUGVyc2lhbiBldmVudHMuXG41LTUtIFBlcnNpYW4gcGVyc29uYWdlcy5cblxuUGxlYXNlIFwicmF0ZVwiIGhlcmUgYW5kIFwic3RhclwiIHRoZSBwcm9qZWN0IGluIEdpdEh1Yi5cblBsZWFzZSBvcGVuIGFuIGlzc3VlIGluIEdpdEh1YiBpZiB5b3UndmUgZm91bmQgc29tZXRoaW5nIG9yIGhhdmUgYW4gaWRlYSEiLAogICJuYW1lIjogIlBlcnNpYW4gQ2FsZW5kYXIiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIk9taWQgTW90dGFnaGkgUmFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vb21pZC9QZXJzaWFuLUNhbGVuZGFyLWZvci1Hbm9tZS1TaGVsbCIsCiAgInV1aWQiOiAiUGVyc2lhbkNhbGVuZGFyQG94eWdlbndzLmNvbSIsCiAgInZlcnNpb24iOiA3Ngp9"}}}
+, {"uuid": "PersianCalendar@oxygenws.com", "name": "Persian (Iranian/Jalali) 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": "0z7rx09d7l9fjwga4i1hqjbrhqyls4h5cgkf9vhfi710caydmq1c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIFBlcnNpYW4gZGF0ZSBpbiB0aGUgdG9wIHBhbmVsLlxuXG5JdCBzaG93czpcbjEtIFBlcnNpYW4gY2FsZW5kYXJcbjItIEl0IGNhbiBzaG93LCB0b2RheSBpcyBhIGhvbGlkYXkgb3Igbm90IVxuMy0gU2hvdyBub3RpZmljYXRpb24gb25EYXlDaGFuZ2VkIVxuNC0gRGF0ZSBjb252ZXJ0ZXIgYmV0d2VlbiBQZXJzaWFuLCBHcmVnb3JpYW4gYW5kIEx1bmFyIEhpanJpXG41LSBFdmVudHM6XG41LTEtIE9mZmljaWFsIHNvbGFyIGV2ZW50cy5cbjUtMi0gT2ZmaWNpYWwgbHVuYXIgZXZlbnRzLlxuNS0zLSBPZmZpY2lhbCBpbnRlcm5hdGlvbmFsIGV2ZW50cy5cbjUtNC0gVHJhZGl0aW9uYWwgUGVyc2lhbiBldmVudHMuXG41LTUtIFBlcnNpYW4gcGVyc29uYWdlcy5cblxuUGxlYXNlIFwicmF0ZVwiIGhlcmUgYW5kIFwic3RhclwiIHRoZSBwcm9qZWN0IGluIEdpdEh1Yi5cblBsZWFzZSBvcGVuIGFuIGlzc3VlIGluIEdpdEh1YiBpZiB5b3UndmUgZm91bmQgc29tZXRoaW5nIG9yIGhhdmUgYW4gaWRlYSEiLAogICJuYW1lIjogIlBlcnNpYW4gKElyYW5pYW4vSmFsYWxpKSBDYWxlbmRhciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiT21pZCBNb3R0YWdoaSBSYWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9vbWlkL1BlcnNpYW4tQ2FsZW5kYXItZm9yLUdub21lLVNoZWxsIiwKICAidXVpZCI6ICJQZXJzaWFuQ2FsZW5kYXJAb3h5Z2Vud3MuY29tIiwKICAidmVyc2lvbiI6IDczCn0="}, "40": {"version": "88", "sha256": "10vv9absphf7g0jdhmy5j880dk1h6fn63ijv0hslr86mmf1wsbkb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIFBlcnNpYW4gZGF0ZSBpbiB0aGUgdG9wIHBhbmVsLlxuXG5JdCBzaG93czpcbjEtIFBlcnNpYW4gY2FsZW5kYXJcbjItIEl0IGNhbiBzaG93LCB0b2RheSBpcyBhIGhvbGlkYXkgb3Igbm90IVxuMy0gU2hvdyBub3RpZmljYXRpb24gb25EYXlDaGFuZ2VkIVxuNC0gRGF0ZSBjb252ZXJ0ZXIgYmV0d2VlbiBQZXJzaWFuLCBHcmVnb3JpYW4gYW5kIEx1bmFyIEhpanJpXG41LSBFdmVudHM6XG41LTEtIE9mZmljaWFsIHNvbGFyIGV2ZW50cy5cbjUtMi0gT2ZmaWNpYWwgbHVuYXIgZXZlbnRzLlxuNS0zLSBPZmZpY2lhbCBpbnRlcm5hdGlvbmFsIGV2ZW50cy5cbjUtNC0gVHJhZGl0aW9uYWwgUGVyc2lhbiBldmVudHMuXG41LTUtIFBlcnNpYW4gcGVyc29uYWdlcy5cblxuUGxlYXNlIFwicmF0ZVwiIGhlcmUgYW5kIFwic3RhclwiIHRoZSBwcm9qZWN0IGluIEdpdEh1Yi5cblBsZWFzZSBvcGVuIGFuIGlzc3VlIGluIEdpdEh1YiBpZiB5b3UndmUgZm91bmQgc29tZXRoaW5nIG9yIGhhdmUgYW4gaWRlYSEiLAogICJuYW1lIjogIlBlcnNpYW4gKElyYW5pYW4vSmFsYWxpKSBDYWxlbmRhciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiT21pZCBNb3R0YWdoaSBSYWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vb21pZC9QZXJzaWFuLUNhbGVuZGFyLWZvci1Hbm9tZS1TaGVsbCIsCiAgInV1aWQiOiAiUGVyc2lhbkNhbGVuZGFyQG94eWdlbndzLmNvbSIsCiAgInZlcnNpb24iOiA4OAp9"}}}
 , {"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": "62", "sha256": "18nl9m74849vgdljjcickwsa4anrwl1b1p58l7pqw9pv4m08myn7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklucHV0IE1ldGhvZCBQYW5lbCB1c2luZyBLREUncyBraW1wYW5lbCBwcm90b2NvbCBmb3IgR25vbWUtU2hlbGwiLAogICJleHRlbnNpb24taWQiOiAia2ltcGFuZWwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zLWtpbXBhbmVsIiwKICAibG9jYWxlIjogIi91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIiwKICAibmFtZSI6ICJJbnB1dCBNZXRob2QgUGFuZWwiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMua2ltcGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwLjAiLAogICAgIjQwLmJldGEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS93ZW5neHQvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWtpbXBhbmVsIiwKICAidXVpZCI6ICJraW1wYW5lbEBrZGUub3JnIiwKICAidmVyc2lvbiI6IDYyCn0="}}}
 , {"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": "16", "sha256": "1h4x1a6i7b33xa7hlr5pd8llbnq0pin83c957y6r75sri0xwxr6c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNwZWVkIHVwIHRoZSBnbm9tZS1zaGVsbCBhbmltYXRpb24gc3BlZWQiLAogICJuYW1lIjogIkltcGF0aWVuY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwOi8vZ2Z4bW9uay5uZXQvZGlzdC8waW5zdGFsbC9nbm9tZS1zaGVsbC1pbXBhdGllbmNlLnhtbCIsCiAgInV1aWQiOiAiaW1wYXRpZW5jZUBnZnhtb25rLm5ldCIsCiAgInZlcnNpb24iOiAxNgp9"}}}
 , {"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="}}}
@@ -28,40 +30,46 @@
 , {"uuid": "status-area-horizontal-spacing@mathematical.coffee.gmail.com", "name": "Status Area Horizontal Spacing", "pname": "status-area-horizontal-spacing", "description": "Reduce the horizontal spacing between icons in the top-right status area", "link": "https://extensions.gnome.org/extension/355/status-area-horizontal-spacing/", "shell_version_map": {"38": {"version": "16", "sha256": "05hhj10hlcpbgd9sbvq89vxzqj6ndf21syas8zidy6yfy613b6l3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlZHVjZSB0aGUgaG9yaXpvbnRhbCBzcGFjaW5nIGJldHdlZW4gaWNvbnMgaW4gdGhlIHRvcC1yaWdodCBzdGF0dXMgYXJlYSIsCiAgImRldi12ZXJzaW9uIjogIjIuMS40IiwKICAibmFtZSI6ICJTdGF0dXMgQXJlYSBIb3Jpem9udGFsIFNwYWNpbmciLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3RhdHVzLWFyZWEtaG9yaXpvbnRhbC1zcGFjaW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjQiLAogICAgIjMuNiIsCiAgICAiMy44IiwKICAgICIzLjEwIiwKICAgICIzLjEyIiwKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vcDkxcGF1bC9zdGF0dXMtYXJlYS1ob3Jpem9udGFsLXNwYWNpbmctZ25vbWUtc2hlbGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJzdGF0dXMtYXJlYS1ob3Jpem9udGFsLXNwYWNpbmdAbWF0aGVtYXRpY2FsLmNvZmZlZS5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTYKfQ=="}, "40": {"version": "18", "sha256": "0r501b8frnrrxfl8l2j6xcjgw1w99h753n47zr8mwpbx5wpcbw5w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlZHVjZSB0aGUgaG9yaXpvbnRhbCBzcGFjaW5nIGJldHdlZW4gaWNvbnMgaW4gdGhlIHRvcC1yaWdodCBzdGF0dXMgYXJlYSIsCiAgImRldi12ZXJzaW9uIjogIjIuMS40IiwKICAibmFtZSI6ICJTdGF0dXMgQXJlYSBIb3Jpem9udGFsIFNwYWNpbmciLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3RhdHVzLWFyZWEtaG9yaXpvbnRhbC1zcGFjaW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3A5MXBhdWwvc3RhdHVzLWFyZWEtaG9yaXpvbnRhbC1zcGFjaW5nLWdub21lLXNoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAic3RhdHVzLWFyZWEtaG9yaXpvbnRhbC1zcGFjaW5nQG1hdGhlbWF0aWNhbC5jb2ZmZWUuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDE4Cn0="}}}
 , {"uuid": "activities-config@nls1729", "name": "Activities Configurator", "pname": "activities-configurator", "description": "Activities Configurator, activities-config@nls1729 -  Effective March 29, 2021 the extension is NOT MAINTAINED.  I give my permission to anyone who may want to become the maintainer.  I do not have the free time or energy necessary to maintain the extension.\n\nConfigure the Activities Button and Top Panel. Select an icon. Change the text. Disable Hot Corner or set the Hot Corner Threshold. Set Panel Background color and transparency plus much more to enhance your desktop.  Click the icon or text with the secondary mouse button to launch the GS Extension Prefs.", "link": "https://extensions.gnome.org/extension/358/activities-configurator/", "shell_version_map": {"38": {"version": "89", "sha256": "1z00smimg5fj6ri35g80bvfzzy5xxxrgwy4idsakphszdwryi8ny", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFjdGl2aXRpZXMgQ29uZmlndXJhdG9yLCBhY3Rpdml0aWVzLWNvbmZpZ0BubHMxNzI5IC0gIEVmZmVjdGl2ZSBNYXJjaCAyOSwgMjAyMSB0aGUgZXh0ZW5zaW9uIGlzIE5PVCBNQUlOVEFJTkVELiAgSSBnaXZlIG15IHBlcm1pc3Npb24gdG8gYW55b25lIHdobyBtYXkgd2FudCB0byBiZWNvbWUgdGhlIG1haW50YWluZXIuICBJIGRvIG5vdCBoYXZlIHRoZSBmcmVlIHRpbWUgb3IgZW5lcmd5IG5lY2Vzc2FyeSB0byBtYWludGFpbiB0aGUgZXh0ZW5zaW9uLlxuXG5Db25maWd1cmUgdGhlIEFjdGl2aXRpZXMgQnV0dG9uIGFuZCBUb3AgUGFuZWwuIFNlbGVjdCBhbiBpY29uLiBDaGFuZ2UgdGhlIHRleHQuIERpc2FibGUgSG90IENvcm5lciBvciBzZXQgdGhlIEhvdCBDb3JuZXIgVGhyZXNob2xkLiBTZXQgUGFuZWwgQmFja2dyb3VuZCBjb2xvciBhbmQgdHJhbnNwYXJlbmN5IHBsdXMgbXVjaCBtb3JlIHRvIGVuaGFuY2UgeW91ciBkZXNrdG9wLiAgQ2xpY2sgdGhlIGljb24gb3IgdGV4dCB3aXRoIHRoZSBzZWNvbmRhcnkgbW91c2UgYnV0dG9uIHRvIGxhdW5jaCB0aGUgR1MgRXh0ZW5zaW9uIFByZWZzLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJhY3Rpdml0aWVzLWNvbmZpZyIsCiAgImdldHRleHQtZG9tYWluIjogImFjdGl2aXRpZXMtY29uZmlnLWV4dGVuc2lvbiIsCiAgIm5hbWUiOiAiQWN0aXZpdGllcyBDb25maWd1cmF0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYWN0aXZpdGllcy1jb25maWciLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vbmxzMTcyOS5naXRodWIuaW8vYWN0aXZpdGllc19jb25maWcuaHRtbCIsCiAgInV1aWQiOiAiYWN0aXZpdGllcy1jb25maWdAbmxzMTcyOSIsCiAgInZlcnNpb24iOiA4OQp9"}}}
 , {"uuid": "remmina-search-provider@alexmurray.github.com", "name": "Remmina Search Provider", "pname": "remmina-search-provider", "description": "Search for Remmina Remote Desktop Connections\n\nEasily search for and launch connections to remote machines by name and protocol.", "link": "https://extensions.gnome.org/extension/473/remmina-search-provider/", "shell_version_map": {"40": {"version": "13", "sha256": "04wxydmbx0nm5ss2i10y4alxsr6fkia2is85ln23k25bqn8b4csi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlYXJjaCBmb3IgUmVtbWluYSBSZW1vdGUgRGVza3RvcCBDb25uZWN0aW9uc1xuXG5FYXNpbHkgc2VhcmNoIGZvciBhbmQgbGF1bmNoIGNvbm5lY3Rpb25zIHRvIHJlbW90ZSBtYWNoaW5lcyBieSBuYW1lIGFuZCBwcm90b2NvbC4iLAogICJuYW1lIjogIlJlbW1pbmEgU2VhcmNoIFByb3ZpZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjMyIiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYWxleG11cnJheS9yZW1taW5hLXNlYXJjaC1wcm92aWRlci8iLAogICJ1dWlkIjogInJlbW1pbmEtc2VhcmNoLXByb3ZpZGVyQGFsZXhtdXJyYXkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMwp9"}}}
-, {"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": "38", "sha256": "07pzr9cqnlvsqq6rhdib4n936dxnxl03qdb5hjbyl6zqbl6r69vj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGUgdGhlIHNjcmVlbnNhdmVyIGFuZCBhdXRvIHN1c3BlbmQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tY2FmZmVpbmUiLAogICJuYW1lIjogIkNhZmZlaW5lIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmNhZmZlaW5lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZW9ucGF0YXBvbi9nbm9tZS1zaGVsbC1leHRlbnNpb24tY2FmZmVpbmUiLAogICJ1dWlkIjogImNhZmZlaW5lQHBhdGFwb24uaW5mbyIsCiAgInZlcnNpb24iOiAzOAp9"}}}
+, {"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": "39", "sha256": "0ij27rby6c167yqbql022d8vxix27bacqgw0mm4cxn71jqfzm64n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGUgdGhlIHNjcmVlbnNhdmVyIGFuZCBhdXRvIHN1c3BlbmQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tY2FmZmVpbmUiLAogICJuYW1lIjogIkNhZmZlaW5lIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmNhZmZlaW5lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4wIiwKICAgICI0MC4xIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZW9ucGF0YXBvbi9nbm9tZS1zaGVsbC1leHRlbnNpb24tY2FmZmVpbmUiLAogICJ1dWlkIjogImNhZmZlaW5lQHBhdGFwb24uaW5mbyIsCiAgInZlcnNpb24iOiAzOQp9"}}}
 , {"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": "21", "sha256": "1qakl3wiwhx68yfqafd5241hfmin0v1x779ljs5bqj2hqld3dzz8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpYyBiYWNrZ3JvdW5kLWltYWdlICh3YWxscGFwZXIpIHNsaWRlc2hvdyBmb3IgR25vbWUgU2hlbGwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJiYWNrc2xpZGUiLAogICJuYW1lIjogIkJhY2tTbGlkZSIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJMdWthcyBLbnV0aCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vYml0YnVja2V0Lm9yZy9MdWthc0tudXRoL2JhY2tzbGlkZSIsCiAgInV1aWQiOiAiYmFja3NsaWRlQGNvZGVpc2xhbmQub3JnIiwKICAidmVyc2lvbiI6IDIxCn0="}}}
 , {"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": "92", "sha256": "1b3fkii4mnwvjghnyl6iwigvqqi30kahy05gympp54fm2jx68xhl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSB0b3AgYmFyLCBleGNlcHQgaW4gb3ZlcnZpZXcuIEhvd2V2ZXIsIHRoZXJlIGlzIGFuIG9wdGlvbiB0byBzaG93IHRoZSBwYW5lbCB3aGVuZXZlciB0aGUgbW91c2UgcG9pbnRlciBhcHByb2FjaGVzIHRoZSBlZGdlIG9mIHRoZSBzY3JlZW4uIEFuZCBpZiBcImludGVsbGloaWRlXCIgaXMgZW5hYmxlZCwgdGhlIHBhbmVsIG9ubHkgaGlkZXMgd2hlbiBhIHdpbmRvdyB0YWtlcyB0aGUgc3BhY2UuXG5cbi0gUHJlc3MgYmFja3NwYWNlIHRvIHJlbW92ZSBrZXlib2FyZCBzaG9ydGN1dC5cbi0gTG9nIG9mZiBhbmQgb24gYWdhaW4gd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBhZnRlciB1cGdyYWRpbmcuIiwKICAibmFtZSI6ICJIaWRlIFRvcCBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaGlkZXRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tbHV0ZnkvaGlkZXRvcGJhciIsCiAgInV1aWQiOiAiaGlkZXRvcGJhckBtYXRoaWV1LmJpZG9uLmNhIiwKICAidmVyc2lvbiI6IDkyCn0="}, "40": {"version": "92", "sha256": "1b3fkii4mnwvjghnyl6iwigvqqi30kahy05gympp54fm2jx68xhl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSB0b3AgYmFyLCBleGNlcHQgaW4gb3ZlcnZpZXcuIEhvd2V2ZXIsIHRoZXJlIGlzIGFuIG9wdGlvbiB0byBzaG93IHRoZSBwYW5lbCB3aGVuZXZlciB0aGUgbW91c2UgcG9pbnRlciBhcHByb2FjaGVzIHRoZSBlZGdlIG9mIHRoZSBzY3JlZW4uIEFuZCBpZiBcImludGVsbGloaWRlXCIgaXMgZW5hYmxlZCwgdGhlIHBhbmVsIG9ubHkgaGlkZXMgd2hlbiBhIHdpbmRvdyB0YWtlcyB0aGUgc3BhY2UuXG5cbi0gUHJlc3MgYmFja3NwYWNlIHRvIHJlbW92ZSBrZXlib2FyZCBzaG9ydGN1dC5cbi0gTG9nIG9mZiBhbmQgb24gYWdhaW4gd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBhZnRlciB1cGdyYWRpbmcuIiwKICAibmFtZSI6ICJIaWRlIFRvcCBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaGlkZXRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tbHV0ZnkvaGlkZXRvcGJhciIsCiAgInV1aWQiOiAiaGlkZXRvcGJhckBtYXRoaWV1LmJpZG9uLmNhIiwKICAidmVyc2lvbiI6IDkyCn0="}}}
+, {"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": "93", "sha256": "0x3l0l5bv6zsdkvk6gw35f43zhkwdgpliakr3jf92lbil0fngwhy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSB0b3AgYmFyLCBleGNlcHQgaW4gb3ZlcnZpZXcuIEhvd2V2ZXIsIHRoZXJlIGlzIGFuIG9wdGlvbiB0byBzaG93IHRoZSBwYW5lbCB3aGVuZXZlciB0aGUgbW91c2UgcG9pbnRlciBhcHByb2FjaGVzIHRoZSBlZGdlIG9mIHRoZSBzY3JlZW4uIEFuZCBpZiBcImludGVsbGloaWRlXCIgaXMgZW5hYmxlZCwgdGhlIHBhbmVsIG9ubHkgaGlkZXMgd2hlbiBhIHdpbmRvdyB0YWtlcyB0aGUgc3BhY2UuXG5cbi0gUHJlc3MgYmFja3NwYWNlIHRvIHJlbW92ZSBrZXlib2FyZCBzaG9ydGN1dC5cbi0gTG9nIG9mZiBhbmQgb24gYWdhaW4gd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBhZnRlciB1cGdyYWRpbmcuIiwKICAibmFtZSI6ICJIaWRlIFRvcCBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaGlkZXRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tbHV0ZnkvaGlkZXRvcGJhciIsCiAgInV1aWQiOiAiaGlkZXRvcGJhckBtYXRoaWV1LmJpZG9uLmNhIiwKICAidmVyc2lvbiI6IDkzCn0="}, "40": {"version": "93", "sha256": "0x3l0l5bv6zsdkvk6gw35f43zhkwdgpliakr3jf92lbil0fngwhy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSB0b3AgYmFyLCBleGNlcHQgaW4gb3ZlcnZpZXcuIEhvd2V2ZXIsIHRoZXJlIGlzIGFuIG9wdGlvbiB0byBzaG93IHRoZSBwYW5lbCB3aGVuZXZlciB0aGUgbW91c2UgcG9pbnRlciBhcHByb2FjaGVzIHRoZSBlZGdlIG9mIHRoZSBzY3JlZW4uIEFuZCBpZiBcImludGVsbGloaWRlXCIgaXMgZW5hYmxlZCwgdGhlIHBhbmVsIG9ubHkgaGlkZXMgd2hlbiBhIHdpbmRvdyB0YWtlcyB0aGUgc3BhY2UuXG5cbi0gUHJlc3MgYmFja3NwYWNlIHRvIHJlbW92ZSBrZXlib2FyZCBzaG9ydGN1dC5cbi0gTG9nIG9mZiBhbmQgb24gYWdhaW4gd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBhZnRlciB1cGdyYWRpbmcuIiwKICAibmFtZSI6ICJIaWRlIFRvcCBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaGlkZXRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tbHV0ZnkvaGlkZXRvcGJhciIsCiAgInV1aWQiOiAiaGlkZXRvcGJhckBtYXRoaWV1LmJpZG9uLmNhIiwKICAidmVyc2lvbiI6IDkzCn0="}}}
 , {"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": "16", "sha256": "127w08jkiy5dyxhavn735ywr7q9d7cd4bpcv8iyrh0dmxbd1rh1a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgSGVicmV3IERhdGUgaW4gdGhlIFBhbmVsLlxuUmVxdWlyZXMgbGliaGRhdGUtZ2xpYiIsCiAgIm5hbWUiOiAiR25vbWUgSERhdGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMiIsCiAgICAiMy40IiwKICAgICIzLjYiLAogICAgIjMuOCIsCiAgICAiMy4xMCIsCiAgICAiMy4xMiIsCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbWlhZC9nbm9tZS1oZGF0ZSIsCiAgInV1aWQiOiAiaGRhdGVAaGF0dWwuaW5mbyIsCiAgInZlcnNpb24iOiAxNgp9"}}}
 , {"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": "34", "sha256": "0blwddf362fdq160kagfzk2r6vvyabmyjisfpahnl88jj57b4l47", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgaW50ZXJmYWNlIGZvciB0b2RvLnR4dC4gXG5cblRvZG8udHh0IGlzIGEgZnV0dXJlLXByb29mIHN5bnRheCBmb3IgdGFza3MgKG5vdCBtYWRlIGJ5IG1lKSwgZm9yIG1vcmUgaW5mbzogaHR0cDovL3RvZG90eHQuY29tL1xuXG5Tb21lIGV4YW1wbGVzOlxuVGFzazogQmFzaWMgdGFza1xuKEEpIFRhc2s6IEhpZ2ggcHJpb3JpdHkgdGFza1xuVGFzayBAcHJvamVjdCArY29udGV4dDogVGFzayBpcyBwYXJ0IG9mIHByb2plY3QgYW5kIGhhcyBhIGNlcnRhaW4gY29udGV4dFxueCAyMDEzLTA4LTIyIFRhc2s6IFRhc2sgd2FzIGNvbXBsZXRlZCBvbiB0aGUgMjJuZCBvZiBBdWd1c3RcblxuRm9yIG1vcmUgaW5mbyBhYm91dCB0aGUgc3ludGF4OiBodHRwczovL2dpdGh1Yi5jb20vZ2luYXRyYXBhbmkvdG9kby50eHQtY2xpL3dpa2kvVGhlLVRvZG8udHh0LUZvcm1hdFxuXG5RdWljayBzdGFydDpcbldoZW4geW91IGZpcnN0IGVuYWJsZSB0aGUgZXh0ZW5zaW9uLCBjaGFuY2VzIGFyZSBoaWdoIHlvdSdsbCBzZWUgYSBbWF0gaW4geW91ciB0b3AgcGFuZWwuIElmIHlvdSBjbGljayB0aGUgW1hdLCB5b3Ugd2lsbCBiZSBhYmxlIHRvIGNob29zZSBiZXR3ZWVuIGNyZWF0aW5nIHRoZSBuZWNlc3NhcnkgZmlsZXMgYXV0b21hdGljYWxseSBvciBzZWxlY3RpbmcgeW91ciBvd24gZXhpc3RpbmcgZmlsZXMgdG8gYmUgdXNlZCB3aXRoIHRoZSBleHRlbnNpb24uXG5cblBsZWFzZSB1c2UgdGhlIGlzc3VlIHRyYWNrZXIgb24gdGhlIGhvbWVwYWdlIHRvIHJlcG9ydCBidWdzIGFuZC9vciBmaWxlIGZlYXR1cmUgcmVxdWVzdHMsIHRoaXMgbWFrZXMgdHJhY2tpbmcgZWFzaWVyIGZvciBtZS4gVGhhbmtzIVxuXG5TZWUgdGhlIGluY2x1ZGVkIENIQU5HRUxPRy5tZCBmb3IgaW5mbyBhYm91dCBjaGFuZ2VzIGJldHdlZW4gZGlmZmVyZW50IHZlcnNpb25zLCBvciBzZWUgaXQgb25saW5lOiBodHRwczovL2dpdGxhYi5jb20vYmFydGwvdG9kby10eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3Jhdy9tYXN0ZXIvQ0hBTkdFTE9HLm1kIiwKICAibmFtZSI6ICJUb2RvLnR4dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2JhcnRsL3RvZG8tdHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAidG9kby50eHRAYmFydC5saWJlcnQuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDM0Cn0="}}}
 , {"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": "18", "sha256": "17a90g639id7bnl6wr86w231s7f0sbvrnk1phrv3hmiaf5i77mx3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgYmF0dGVyeSBpY29uIGluIHRvcCBwYW5lbCwgaWYgYmF0dGVyeSBpcyBmdWxseSBjaGFyZ2VkIGFuZCBBQyBpcyBjb25uZWN0ZWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhdXRvaGlkZS1iYXR0ZXJ5IiwKICAibmFtZSI6ICJBdXRvaGlkZSBCYXR0ZXJ5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FpL2F1dG9oaWRlLWJhdHRlcnkiLAogICJ1dWlkIjogImF1dG9oaWRlLWJhdHRlcnlAc2l0bmlrLnJ1IiwKICAidmVyc2lvbiI6IDE4Cn0="}}}
-, {"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": "30", "sha256": "1cgljhw0j263b4mcdr2583q3j63a1g47gv8prcjdh03q35qwrrvk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBsYXVuY2ggYSBuZXcgaW5zdGFuY2Ugd2hlbiBjbGlja2luZyBpbiB0aGUgZGFzaCBvciB0aGUgYXBwbGljYXRpb24gdmlldy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJMYXVuY2ggbmV3IGluc3RhbmNlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJsYXVuY2gtbmV3LWluc3RhbmNlQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDMwCn0="}}}
-, {"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": "36", "sha256": "090lpxf7zdwg1x9nyagf3riag5w5dn9jd0bm0qz2jb0jbv0dlndk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgYSB3aW5kb3cgbGlzdCBhdCB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uXG5UaGlzIGV4dGVuc2lvbiBpcyBwYXJ0IG9mIENsYXNzaWMgTW9kZSBhbmQgaXMgb2ZmaWNpYWxseSBzdXBwb3J0ZWQgYnkgR05PTUUuIFBsZWFzZSBkbyBub3QgcmVwb3J0IGJ1Z3MgdXNpbmcgdGhlIGZvcm0gYmVsb3csIHVzZSBHTk9NRSdzIEdpdExhYiBpbnN0YW5jZSBpbnN0ZWFkLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3ctbGlzdCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIldpbmRvdyBMaXN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndpbmRvdy1saXN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2luZG93LWxpc3RAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMzYKfQ=="}}}
+, {"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": "20", "sha256": "0qzjkn97xqf2crc51fq9rkbhhcj5bhn6ba6z2z63bgm3wh2r6s5n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgYmF0dGVyeSBpY29uIGluIHRvcCBwYW5lbCwgaWYgYmF0dGVyeSBpcyBmdWxseSBjaGFyZ2VkIGFuZCBBQyBpcyBjb25uZWN0ZWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhdXRvaGlkZS1iYXR0ZXJ5IiwKICAibmFtZSI6ICJBdXRvaGlkZSBCYXR0ZXJ5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FpL2F1dG9oaWRlLWJhdHRlcnkiLAogICJ1dWlkIjogImF1dG9oaWRlLWJhdHRlcnlAc2l0bmlrLnJ1IiwKICAidmVyc2lvbiI6IDIwCn0="}}}
+, {"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"}}}
+, {"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": "38", "sha256": "0r4mqs88vnz8qrd2qcfg5gs184rnqbb9sgnpl3vrdmj608k1mx1a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgYSB3aW5kb3cgbGlzdCBhdCB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uXG5UaGlzIGV4dGVuc2lvbiBpcyBwYXJ0IG9mIENsYXNzaWMgTW9kZSBhbmQgaXMgb2ZmaWNpYWxseSBzdXBwb3J0ZWQgYnkgR05PTUUuIFBsZWFzZSBkbyBub3QgcmVwb3J0IGJ1Z3MgdXNpbmcgdGhlIGZvcm0gYmVsb3csIHVzZSBHTk9NRSdzIEdpdExhYiBpbnN0YW5jZSBpbnN0ZWFkLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3ctbGlzdCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIldpbmRvdyBMaXN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndpbmRvdy1saXN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogIndpbmRvdy1saXN0QGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDM4Cn0="}}}
 , {"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": "KStatusNotifierItem/AppIndicator Support", "pname": "appindicator-support", "description": "Adds KStatusNotifierItem support to the Shell", "link": "https://extensions.gnome.org/extension/615/appindicator-support/", "shell_version_map": {"38": {"version": "37", "sha256": "1v7lsjpy6mkykkdkgz20xqdywf2a58rmqxfz2mrk07clxckzdlag", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgS1N0YXR1c05vdGlmaWVySXRlbSBzdXBwb3J0IHRvIHRoZSBTaGVsbCIsCiAgIm5hbWUiOiAiS1N0YXR1c05vdGlmaWVySXRlbS9BcHBJbmRpY2F0b3IgU3VwcG9ydCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS91YnVudHUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWFwcGluZGljYXRvciIsCiAgInV1aWQiOiAiYXBwaW5kaWNhdG9yc3VwcG9ydEByZ2Nqb25hcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzcKfQ=="}, "40": {"version": "37", "sha256": "1v7lsjpy6mkykkdkgz20xqdywf2a58rmqxfz2mrk07clxckzdlag", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgS1N0YXR1c05vdGlmaWVySXRlbSBzdXBwb3J0IHRvIHRoZSBTaGVsbCIsCiAgIm5hbWUiOiAiS1N0YXR1c05vdGlmaWVySXRlbS9BcHBJbmRpY2F0b3IgU3VwcG9ydCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS91YnVudHUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWFwcGluZGljYXRvciIsCiAgInV1aWQiOiAiYXBwaW5kaWNhdG9yc3VwcG9ydEByZ2Nqb25hcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzcKfQ=="}}}
+, {"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": "40", "sha256": "0pfp1x9fblgr4r37qlg9f33n7qznh0xs7n1cfbrzs07i7cxwp97g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgQXBwSW5kaWNhdG9yLCBLU3RhdHVzTm90aWZpZXJJdGVtIGFuZCBsZWdhY3kgVHJheSBpY29ucyBzdXBwb3J0IHRvIHRoZSBTaGVsbCIsCiAgImdldHRleHQtZG9tYWluIjogIkFwcEluZGljYXRvckV4dGVuc2lvbiIsCiAgIm5hbWUiOiAiQXBwSW5kaWNhdG9yIGFuZCBLU3RhdHVzTm90aWZpZXJJdGVtIFN1cHBvcnQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3VidW50dS9nbm9tZS1zaGVsbC1leHRlbnNpb24tYXBwaW5kaWNhdG9yIiwKICAidXVpZCI6ICJhcHBpbmRpY2F0b3JzdXBwb3J0QHJnY2pvbmFzLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA0MAp9"}, "40": {"version": "40", "sha256": "0pfp1x9fblgr4r37qlg9f33n7qznh0xs7n1cfbrzs07i7cxwp97g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgQXBwSW5kaWNhdG9yLCBLU3RhdHVzTm90aWZpZXJJdGVtIGFuZCBsZWdhY3kgVHJheSBpY29ucyBzdXBwb3J0IHRvIHRoZSBTaGVsbCIsCiAgImdldHRleHQtZG9tYWluIjogIkFwcEluZGljYXRvckV4dGVuc2lvbiIsCiAgIm5hbWUiOiAiQXBwSW5kaWNhdG9yIGFuZCBLU3RhdHVzTm90aWZpZXJJdGVtIFN1cHBvcnQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3VidW50dS9nbm9tZS1zaGVsbC1leHRlbnNpb24tYXBwaW5kaWNhdG9yIiwKICAidXVpZCI6ICJhcHBpbmRpY2F0b3JzdXBwb3J0QHJnY2pvbmFzLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA0MAp9"}}}
 , {"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": "58", "sha256": "1alsbyykqy2147ssx016ixqyj3phk3pmviw41dr0vakxfwr5f7g1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgaW5mbyBvbiB2YXJpb3VzIGNyeXB0by1jdXJyZW5jeSBleGNoYW5nZXMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtYml0Y29pbi1tYXJrZXRzIiwKICAiZ2l0LXZlcnNpb24iOiAidjU4IiwKICAibmFtZSI6ICJCaXRjb2luIE1hcmtldHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYml0Y29pbi1tYXJrZXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL090dG9BbGxtZW5kaW5nZXIvZ25vbWUtc2hlbGwtYml0Y29pbi1tYXJrZXRzLyIsCiAgInV1aWQiOiAiYml0Y29pbi1tYXJrZXRzQG90dG9hbGxtZW5kaW5nZXIuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1OAp9"}}}
 , {"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-2_0 / gir1.2-lunar-date-2.0", "link": "https://extensions.gnome.org/extension/675/lunar-calendar/", "shell_version_map": {"38": {"version": "25", "sha256": "18v9gq879mp4f9ljah163zxdasy27a3acjjs728ylkz8phxka6yl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNyZWF0b3IiOiAiTmVpIiwKICAiZGVzY3JpcHRpb24iOiAiRGlzcGxheSBDaGluZXNlIEx1bmFyIENhbGVuZGFyIGluIHBhbmVsXG5cblx1MjZhMFx1MjZhMFx1MjZhMCBkZXBlbmRlbmN5OiB0eXBlbGliLTFfMC1MdW5hckRhdGUtMl8wIC8gZ2lyMS4yLWx1bmFyLWRhdGUtMi4wIiwKICAibmFtZSI6ICJMdW5hciBDYWxlbmRhciBcdTUxOWNcdTUzODYiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubHVuYXItY2FsZW5kYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAibHVuYXJjYWxAYWlsaW4ubmVtdWkiLAogICJ2ZXJzaW9uIjogMjUKfQ=="}, "40": {"version": "26", "sha256": "0kf4p8pkr9r7kzfvb5dwlifbxkn92mq773m92vfmyiv79rwj1qzb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNyZWF0b3IiOiAiTmVpIiwKICAiZGVzY3JpcHRpb24iOiAiRGlzcGxheSBDaGluZXNlIEx1bmFyIENhbGVuZGFyIGluIHBhbmVsXG5cblx1MjZhMFx1MjZhMFx1MjZhMCBkZXBlbmRlbmN5OiB0eXBlbGliLTFfMC1MdW5hckRhdGUtMl8wIC8gZ2lyMS4yLWx1bmFyLWRhdGUtMi4wIiwKICAibmFtZSI6ICJMdW5hciBDYWxlbmRhciBcdTUxOWNcdTUzODYiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubHVuYXItY2FsZW5kYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImx1bmFyY2FsQGFpbGluLm5lbXVpIiwKICAidmVyc2lvbiI6IDI2Cn0="}}}
+, {"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": "26", "sha256": "0f5yiazgaylv9h2s53blw2jvs99wqnypdhf5j2p7i2wdyaq1hbip", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNyZWF0b3IiOiAiTmVpIiwKICAiZGVzY3JpcHRpb24iOiAiRGlzcGxheSBDaGluZXNlIEx1bmFyIENhbGVuZGFyIGluIHBhbmVsXG5cblx1MjZhMFx1MjZhMFx1MjZhMCBkZXBlbmRlbmN5OiB0eXBlbGliLTFfMC1MdW5hckRhdGUtM18wIC8gZ2lyMS4yLWx1bmFyLWRhdGUtMi4wIiwKICAibmFtZSI6ICJMdW5hciBDYWxlbmRhciBcdTUxOWNcdTUzODYiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubHVuYXItY2FsZW5kYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImx1bmFyY2FsQGFpbGluLm5lbXVpIiwKICAidmVyc2lvbiI6IDI2Cn0="}}}
 , {"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": "24", "sha256": "1i7l26x22wzqplq42z2317ynq4s4vwwzb3ql9lhpkyn8d7g7xa4x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB3b3Jrc3BhY2VzIGJ5IHNjcm9sbGluZyBvdmVyIHRoZSB0b3AgcGFuZWwiLAogICJuYW1lIjogIlRvcCBQYW5lbCBXb3Jrc3BhY2UgU2Nyb2xsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJ0aW1AZ2Z4bW9uay5uZXQiCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5ldC5nZnhtb25rLnNjcm9sbC13b3Jrc3BhY2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dmeG1vbmsvZ25vbWUtc2hlbGwtc2Nyb2xsLXdvcmtzcGFjZXMiLAogICJ1dWlkIjogInNjcm9sbC13b3Jrc3BhY2VzQGdmeG1vbmsubmV0IiwKICAidmVyc2lvbiI6IDI0Cn0="}}}
+, {"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": "11", "sha256": "12d083bakv6l4dg6hmkh9c4q0cybfjq9y0dl3w85slsc7v60gj2w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpc3Qgb3BlbiB3aW5kb3dzIG9mIGFsbCB3b3Jrc3BhY2VzIiwKICAibmFtZSI6ICJBbGwgV2luZG93cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9seW9uZWwvYWxsLXdpbmRvd3MiLAogICJ1dWlkIjogImFsbC13aW5kb3dzQGV6aXgub3JnIiwKICAidmVyc2lvbiI6IDExCn0="}}}
 , {"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": "24", "sha256": "1y511ixqwz97mx3ykrlzafjskxri94sf9hlhjwnha9p3bys155bl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBpeGVsIFNhdmVyIGlzIGRlc2lnbmVkIHRvIHNhdmUgcGl4ZWwgYnkgZnVzaW5nIGFjdGl2aXR5IGJhciBhbmQgdGl0bGUgYmFyIGluIGEgbmF0dXJhbCB3YXkiLAogICJuYW1lIjogIlBpeGVsIFNhdmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MC4xIiwKICAgICI0MC4yIiwKICAgICI0MC4zIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGVhZGFsbml4L3BpeGVsLXNhdmVyIiwKICAidXVpZCI6ICJwaXhlbC1zYXZlckBkZWFkYWxuaXgubWUiLAogICJ2ZXJzaW9uIjogMjQKfQ=="}, "40": {"version": "24", "sha256": "1y511ixqwz97mx3ykrlzafjskxri94sf9hlhjwnha9p3bys155bl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBpeGVsIFNhdmVyIGlzIGRlc2lnbmVkIHRvIHNhdmUgcGl4ZWwgYnkgZnVzaW5nIGFjdGl2aXR5IGJhciBhbmQgdGl0bGUgYmFyIGluIGEgbmF0dXJhbCB3YXkiLAogICJuYW1lIjogIlBpeGVsIFNhdmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MC4xIiwKICAgICI0MC4yIiwKICAgICI0MC4zIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGVhZGFsbml4L3BpeGVsLXNhdmVyIiwKICAidXVpZCI6ICJwaXhlbC1zYXZlckBkZWFkYWxuaXgubWUiLAogICJ2ZXJzaW9uIjogMjQKfQ=="}}}
 , {"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": "11", "sha256": "0h04xkaad04nmh0hgcjaq8i7929j9cl79l5k4azrsrmbbz7181hb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBmcm9tIHRoZSBzdGF0dXMgYmFyICh0aGUgaG90IGNvcm5lciBhbmQga2V5Ym9hcmQgc2hvcnRjdXQga2VlcHMgd29ya2luZykuIFRvIGRpc2FibGUgdG9wIGxlZnQgaG90IGNvcm5lciB1c2UgJ05vIFRvcGxlZnQgSG90IENvcm5lcicgZXh0ZW5zaW9uIFx1MjAxNCBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8xMTgvbm8tdG9wbGVmdC1ob3QtY29ybmVyLyAuIiwKICAibmFtZSI6ICJIaWRlIEFjdGl2aXRpZXMgQnV0dG9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjEwIiwKICAgICIzLjEyIiwKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIkhpZGVfQWN0aXZpdGllc0BzaGF5LnNoYXllbC5vcmciLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "40": {"version": "11", "sha256": "0h04xkaad04nmh0hgcjaq8i7929j9cl79l5k4azrsrmbbz7181hb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBmcm9tIHRoZSBzdGF0dXMgYmFyICh0aGUgaG90IGNvcm5lciBhbmQga2V5Ym9hcmQgc2hvcnRjdXQga2VlcHMgd29ya2luZykuIFRvIGRpc2FibGUgdG9wIGxlZnQgaG90IGNvcm5lciB1c2UgJ05vIFRvcGxlZnQgSG90IENvcm5lcicgZXh0ZW5zaW9uIFx1MjAxNCBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8xMTgvbm8tdG9wbGVmdC1ob3QtY29ybmVyLyAuIiwKICAibmFtZSI6ICJIaWRlIEFjdGl2aXRpZXMgQnV0dG9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjEwIiwKICAgICIzLjEyIiwKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIkhpZGVfQWN0aXZpdGllc0BzaGF5LnNoYXllbC5vcmciLAogICJ2ZXJzaW9uIjogMTEKfQ=="}}}
 , {"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": "16", "sha256": "0wmvkczzs87zanp37hbi8adv56r0r38jl2xck3wvzss0dkdv9vni", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBzd2l0Y2ggZm9yIGNob29zaW5nIGF1ZGlvIG91dHB1dCB0byB0aGUgc3lzdGVtIG1lbnUuIiwKICAibmFtZSI6ICJBdWRpbyBPdXRwdXQgU3dpdGNoZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXVkaW8tb3V0cHV0LXN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cDovL2dpdGh1Yi5jb20vYWRheGkvYXVkaW8tb3V0cHV0LXN3aXRjaGVyIiwKICAidXVpZCI6ICJhdWRpby1vdXRwdXQtc3dpdGNoZXJAYW5kdWNocyIsCiAgInZlcnNpb24iOiAxNgp9"}, "40": {"version": "16", "sha256": "0wmvkczzs87zanp37hbi8adv56r0r38jl2xck3wvzss0dkdv9vni", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBzd2l0Y2ggZm9yIGNob29zaW5nIGF1ZGlvIG91dHB1dCB0byB0aGUgc3lzdGVtIG1lbnUuIiwKICAibmFtZSI6ICJBdWRpbyBPdXRwdXQgU3dpdGNoZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXVkaW8tb3V0cHV0LXN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cDovL2dpdGh1Yi5jb20vYWRheGkvYXVkaW8tb3V0cHV0LXN3aXRjaGVyIiwKICAidXVpZCI6ICJhdWRpby1vdXRwdXQtc3dpdGNoZXJAYW5kdWNocyIsCiAgInZlcnNpb24iOiAxNgp9"}}}
-, {"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": "26", "sha256": "1avj5v9lyfs3hkl9msjvnbkp9nlxag64aw7s2rl5mpval27401k7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBIaWJlcm5hdGUgYnV0dG9uIGluIFN0YXR1cyBtZW51LiBVc2luZyBBbHQgbW9kaWZpZXIsIHlvdSBjYW4gYWxzbyBzZWxlY3QgSHlicmlkIFNsZWVwIGluc3RlYWQuIiwKICAibmFtZSI6ICJIaWJlcm5hdGUgU3RhdHVzIEJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hcmVsYW5nZS9nbm9tZS1zaGVsbC1leHRlbnNpb24taGliZXJuYXRlLXN0YXR1cyIsCiAgInV1aWQiOiAiaGliZXJuYXRlLXN0YXR1c0Bkcm9taSIsCiAgInZlcnNpb24iOiAyNgp9"}}}
-, {"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": "18", "sha256": "1n2bdr9qdgg1m1a8b88vasaw01iavnp1q6hs8yifs3l7yqqwpqwi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplIGFsbCB3aW5kb3dzIGluIGN1cnJlbnQgd29ya3NwYWNlIiwKICAibmFtZSI6ICJNaW5pbWl6ZSBBbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9zY2hhcmxlc3NhbnRvcy9taW5pbWl6ZWFsbCIsCiAgInV1aWQiOiAibWluaW1pemVhbGxAc2NoYXJsZXNzYW50b3Mub3JnIiwKICAidmVyc2lvbiI6IDE4Cn0="}}}
-, {"uuid": "fq@megh", "name": "Force Quit", "pname": "force-quit", "description": "Adds a force quit button which launches xkill.\nOn accidental click, right click to undo or click on the panel.\nCustomize position by tweaking line 48 of extension.js", "link": "https://extensions.gnome.org/extension/770/force-quit/", "shell_version_map": {"38": {"version": "16", "sha256": "1ms1sir1vq97iq1s2p9fisxcg0jw9nn0zadvr5fcjqf2vmkcwpyp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBmb3JjZSBxdWl0IGJ1dHRvbiB3aGljaCBsYXVuY2hlcyB4a2lsbC5cbk9uIGFjY2lkZW50YWwgY2xpY2ssIHJpZ2h0IGNsaWNrIHRvIHVuZG8gb3IgY2xpY2sgb24gdGhlIHBhbmVsLlxuQ3VzdG9taXplIHBvc2l0aW9uIGJ5IHR3ZWFraW5nIGxpbmUgNDggb2YgZXh0ZW5zaW9uLmpzIiwKICAibmFtZSI6ICJGb3JjZSBRdWl0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWVnaHBya2gvZm9yY2UtcXVpdC8iLAogICJ1dWlkIjogImZxQG1lZ2giLAogICJ2ZXJzaW9uIjogMTYKfQ=="}, "40": {"version": "16", "sha256": "1ms1sir1vq97iq1s2p9fisxcg0jw9nn0zadvr5fcjqf2vmkcwpyp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBmb3JjZSBxdWl0IGJ1dHRvbiB3aGljaCBsYXVuY2hlcyB4a2lsbC5cbk9uIGFjY2lkZW50YWwgY2xpY2ssIHJpZ2h0IGNsaWNrIHRvIHVuZG8gb3IgY2xpY2sgb24gdGhlIHBhbmVsLlxuQ3VzdG9taXplIHBvc2l0aW9uIGJ5IHR3ZWFraW5nIGxpbmUgNDggb2YgZXh0ZW5zaW9uLmpzIiwKICAibmFtZSI6ICJGb3JjZSBRdWl0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWVnaHBya2gvZm9yY2UtcXVpdC8iLAogICJ1dWlkIjogImZxQG1lZ2giLAogICJ2ZXJzaW9uIjogMTYKfQ=="}}}
+, {"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": "30", "sha256": "0jxg8cbhfkw7pblpdg7kv5058c8f9xzdav0w9hgl7xlq1hacmacv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBIaWJlcm5hdGUgYnV0dG9uIGluIFN0YXR1cyBtZW51LiBVc2luZyBBbHQgbW9kaWZpZXIsIHlvdSBjYW4gYWxzbyBzZWxlY3QgSHlicmlkIFNsZWVwIGluc3RlYWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGliZXJuYXRlLXN0YXR1cy1idXR0b24iLAogICJuYW1lIjogIkhpYmVybmF0ZSBTdGF0dXMgQnV0dG9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FyZWxhbmdlL2dub21lLXNoZWxsLWV4dGVuc2lvbi1oaWJlcm5hdGUtc3RhdHVzIiwKICAidXVpZCI6ICJoaWJlcm5hdGUtc3RhdHVzQGRyb21pIiwKICAidmVyc2lvbiI6IDMwCn0="}}}
+, {"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 which launches xkill.\nOn accidental click, right click to undo or click on the panel.\nCustomize position by tweaking line 47 of extension.js", "link": "https://extensions.gnome.org/extension/770/force-quit/", "shell_version_map": {"38": {"version": "18", "sha256": "1yww4xhww0lvfnxik8k5yfs9mhbsdd22g9sk26rf4qvqwyl7gjl4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBmb3JjZSBxdWl0IGJ1dHRvbiB3aGljaCBsYXVuY2hlcyB4a2lsbC5cbk9uIGFjY2lkZW50YWwgY2xpY2ssIHJpZ2h0IGNsaWNrIHRvIHVuZG8gb3IgY2xpY2sgb24gdGhlIHBhbmVsLlxuQ3VzdG9taXplIHBvc2l0aW9uIGJ5IHR3ZWFraW5nIGxpbmUgNDcgb2YgZXh0ZW5zaW9uLmpzIiwKICAibmFtZSI6ICJGb3JjZSBRdWl0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21lZ2hwcmtoL2ZvcmNlLXF1aXQvIiwKICAidXVpZCI6ICJmcUBtZWdoIiwKICAidmVyc2lvbiI6IDE4Cn0="}, "40": {"version": "19", "sha256": "1dmk4ilad5l22y6cnd6iwzc7zc6xr9yql3zj21cc7c0p4h1xrgca", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBmb3JjZSBxdWl0IGJ1dHRvbiB3aGljaCBsYXVuY2hlcyB4a2lsbC5cbk9uIGFjY2lkZW50YWwgY2xpY2ssIHJpZ2h0IGNsaWNrIHRvIHVuZG8gb3IgY2xpY2sgb24gdGhlIHBhbmVsLlxuQ3VzdG9taXplIHBvc2l0aW9uIGJ5IHR3ZWFraW5nIGxpbmUgNDcgb2YgZXh0ZW5zaW9uLmpzIiwKICAibmFtZSI6ICJGb3JjZSBRdWl0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21lZ2hwcmtoL2ZvcmNlLXF1aXQvIiwKICAidXVpZCI6ICJmcUBtZWdoIiwKICAidmVyc2lvbiI6IDE5Cn0="}}}
 , {"uuid": "ProxySwitcher@flannaghan.com", "name": "Proxy Switcher", "pname": "proxy-switcher", "description": "Switches between the system proxy settings profiles defined in Network Settings.", "link": "https://extensions.gnome.org/extension/771/proxy-switcher/", "shell_version_map": {"40": {"version": "14", "sha256": "1m0mj5p41fbbgwkyhc2csbk4hh8yhq6q4cm90ad74w4hb4fnm847", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaGVzIGJldHdlZW4gdGhlIHN5c3RlbSBwcm94eSBzZXR0aW5ncyBwcm9maWxlcyBkZWZpbmVkIGluIE5ldHdvcmsgU2V0dGluZ3MuIiwKICAibmFtZSI6ICJQcm94eSBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xMCIsCiAgICAiMy4xMiIsCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yMS45MSIsCiAgICAiMy4yMi4yIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RvbWZsYW5uYWdoYW4vcHJveHktc3dpdGNoZXIiLAogICJ1dWlkIjogIlByb3h5U3dpdGNoZXJAZmxhbm5hZ2hhbi5jb20iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}}}
 , {"uuid": "clipboard-indicator@tudmotu.com", "name": "Clipboard Indicator", "pname": "clipboard-indicator", "description": "Clipboard Manager extension for Gnome-Shell - Adds a clipboard indicator to the top panel, and caches clipboard history.", "link": "https://extensions.gnome.org/extension/779/clipboard-indicator/", "shell_version_map": {"38": {"version": "37", "sha256": "1nd6ydp5wmd56zf3vwrsi2wflrw15krdbvqv2fkmla8rndallp1i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsaXBib2FyZCBNYW5hZ2VyIGV4dGVuc2lvbiBmb3IgR25vbWUtU2hlbGwgLSBBZGRzIGEgY2xpcGJvYXJkIGluZGljYXRvciB0byB0aGUgdG9wIHBhbmVsLCBhbmQgY2FjaGVzIGNsaXBib2FyZCBoaXN0b3J5LiIsCiAgIm5hbWUiOiAiQ2xpcGJvYXJkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1R1ZG1vdHUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWNsaXBib2FyZC1pbmRpY2F0b3IiLAogICJ1dWlkIjogImNsaXBib2FyZC1pbmRpY2F0b3JAdHVkbW90dS5jb20iLAogICJ2ZXJzaW9uIjogMzcKfQ=="}, "40": {"version": "38", "sha256": "1dw7x4x2assyqgzz9hcclkrpxpd1xkpvf31ll76573rg98n7h5kl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsaXBib2FyZCBNYW5hZ2VyIGV4dGVuc2lvbiBmb3IgR25vbWUtU2hlbGwgLSBBZGRzIGEgY2xpcGJvYXJkIGluZGljYXRvciB0byB0aGUgdG9wIHBhbmVsLCBhbmQgY2FjaGVzIGNsaXBib2FyZCBoaXN0b3J5LiIsCiAgIm5hbWUiOiAiQ2xpcGJvYXJkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9UdWRtb3R1L2dub21lLXNoZWxsLWV4dGVuc2lvbi1jbGlwYm9hcmQtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJjbGlwYm9hcmQtaW5kaWNhdG9yQHR1ZG1vdHUuY29tIiwKICAidmVyc2lvbiI6IDM4Cn0="}}}
+, {"uuid": "pidgin@muffinmad", "name": "Pidgin IM integration", "pname": "pidgin-im-integration", "description": "Integrate Pidgin IMs in the Gnome Shell message tray", "link": "https://extensions.gnome.org/extension/782/pidgin-im-integration/", "shell_version_map": {"40": {"version": "40", "sha256": "1cac3ys8j6hfn8rlkia32x8d5fq6hwc4g0s61h4agpnaiarmfsh3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludGVncmF0ZSBQaWRnaW4gSU1zIGluIHRoZSBHbm9tZSBTaGVsbCBtZXNzYWdlIHRyYXkiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tcGlkZ2luIiwKICAibmFtZSI6ICJQaWRnaW4gSU0gaW50ZWdyYXRpb24iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucGlkZ2luIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL211ZmZpbm1hZC9waWRnaW4taW0tZ25vbWUtc2hlbGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJwaWRnaW5AbXVmZmlubWFkIiwKICAidmVyc2lvbiI6IDQwCn0="}}}
+, {"uuid": "ShutdownTimer@neumann", "name": "ShutdownTimer", "pname": "shutdowntimer", "description": "Shutdown/suspend your 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": "30", "sha256": "0y2qb5c89khs6zcknh8w4f4zfpkwc99iwsb9hj5634waf57ybi6d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNodXRkb3duL3N1c3BlbmQgeW91ciBkZXZpY2UgYWZ0ZXIgYSBzcGVjaWZpYyB0aW1lLlxuXG5NYXhpbXVtIHRpbWVyIHZhbHVlIHVuZCBkZWZhdWx0IHNsaWRlciBwb3NpdGlvbiBjYW4gYmUgbW9kaWZpZWQgaW4gdGhlIHNldHRpbmdzLiIsCiAgImdldHRleHQtZG9tYWluIjogIlNodXRkb3duVGltZXIiLAogICJuYW1lIjogIlNodXRkb3duVGltZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2h1dGRvd250aW1lci1uZXVtYW5uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjEwIiwKICAgICIzLjEyIiwKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL25ldW1hbm4tZC9TaHV0ZG93blRpbWVyIiwKICAidXVpZCI6ICJTaHV0ZG93blRpbWVyQG5ldW1hbm4iLAogICJ2ZXJzaW9uIjogMzAKfQ=="}, "40": {"version": "30", "sha256": "0y2qb5c89khs6zcknh8w4f4zfpkwc99iwsb9hj5634waf57ybi6d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNodXRkb3duL3N1c3BlbmQgeW91ciBkZXZpY2UgYWZ0ZXIgYSBzcGVjaWZpYyB0aW1lLlxuXG5NYXhpbXVtIHRpbWVyIHZhbHVlIHVuZCBkZWZhdWx0IHNsaWRlciBwb3NpdGlvbiBjYW4gYmUgbW9kaWZpZWQgaW4gdGhlIHNldHRpbmdzLiIsCiAgImdldHRleHQtZG9tYWluIjogIlNodXRkb3duVGltZXIiLAogICJuYW1lIjogIlNodXRkb3duVGltZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2h1dGRvd250aW1lci1uZXVtYW5uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjEwIiwKICAgICIzLjEyIiwKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL25ldW1hbm4tZC9TaHV0ZG93blRpbWVyIiwKICAidXVpZCI6ICJTaHV0ZG93blRpbWVyQG5ldW1hbm4iLAogICJ2ZXJzaW9uIjogMzAKfQ=="}}}
 , {"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": "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": "19", "sha256": "03ykk4jaha0cnl3xz8hdnksxwyw7l23d5fbf65kclwcvvg93mj9f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFjY2VzcyBwYXNzd29yZHMgZnJvbSB0aGUgZ25vbWUga2V5cmluZyBpbiBhIGNvbnZlbmllbnQgd2F5OlxuU2ltcGx5IHNlYXJjaCBmb3IgeW91ciBwYXNzd29yZCBhbmQgY29weSBpdCB0byBjbGlwYm9hZCBieSBjbGlja2luZyBpdC4gQWZ0ZXIgYSBjZXJ0YWluIGFtb3VudCBvZiB0aW1lIGl0IHdpbGwgYmUgcmVtb3ZlZCBhdXRvbWF0aWNhbGx5IChkZWZhdWx0IGlzIDUgc2Vjb25kcykuIEFzIHRoaXMgb25seSB3b3JrcyBpZiB0aGUga2V5cmluZ3MgYXJlIHVubG9ja2VkLCB0aGlzIGV4dGVuc2lvbiBhbHNvIHByb3ZpZGVzIGVhc3kgYWNjZXNzIHRvIGxvY2svdW5sb2NrIGtleXJpbmdzLiIsCiAgIm5hbWUiOiAiS2V5TWFuIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJrZXltYW5AcG9laGUuZGUiCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmtleW1hbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kcG9ldHpzY2gva2V5bWFuIiwKICAidXVpZCI6ICJrZXltYW5AZHBvZXR6c2NoLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTkKfQ=="}}}
+, {"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": "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": "22", "sha256": "07fp4zal4s91j0z6lr07xypr7yzmc7lnnh5pplxjnyvqa5aplagy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhlbHBzIHRyYWNrIHRpbWUiLAogICJuYW1lIjogIlRpbWUgVHJhY2tlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50aW1lLXRyYWNrZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vanNuamFjay90aW1lLXRyYWNrZXIvIiwKICAidXVpZCI6ICJ0aW1lX3RyYWNrZXJfanNuamFja0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjIKfQ=="}}}
+, {"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": "22", "sha256": "1xx6jcirqhzm37nm4hjiyihnp7ry300b37xa448k9n87szv7pxv8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNhbGN1bGF0ZXMgc3Ryb25nIHBhc3N3b3JkcyBmb3IgZWFjaCBhbGlhcyBmcm9tIHlvdXIgc2luZ2xlIHNlY3JldC4gTm8gbmVlZCB0byByZW1lbWJlciBkb3plbnMgb2YgcGFzc3dvcmRzIGFueSBsb25nZXIuIE5vIG5lZWQgZm9yIGEgcGFzc3dvcmQgbWFuYWdlciBhbnkgbG9uZ2VyLiBGdWxsIGZyZWVkb20gaW4gY2hvb3NpbmcgYWxpYXNlcyBhbmQgc2VjcmV0LCBlLmcuIGFsaWFzOiBcInVzZXJuYW1lQGdvb2dsZS5jb20jMjAxNFwiLCBzZWNyZXQ6IFwic2FGZVx1MjZiZmluXHU2ZjIyXHU1YjU3XCIuIFJlY2VudCBhbGlhc2VzIGFyZSBrZXB0IGluIGEgZWFzaWx5IGFjY2Vzc2libGUgZHJvcC1kb3duLiBZb3UgbWF5IGNob29zZSBiZXR3ZWVuIEhNQUNfU0hBMSBhbmQgU0hBMS4gVGhlIGZvcm11bGEgaXMgYXMgc2ltcGxlIGFzIFwiW3NlY3JldF1bYWxpYXNdXCIgXHUyMTkyIFNIQTEgXHUyMTkyIEJBU0U2NCAiLAogICJuYW1lIjogIlBhc3N3b3JkIENhbGN1bGF0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucHdjYWxjIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RoaWxvbWF1cmVyL3B3Y2FsYyIsCiAgInV1aWQiOiAicHdjYWxjQHRoaWxvbWF1cmVyLmRlIiwKICAidmVyc2lvbiI6IDIyCn0="}}}
 , {"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": "5", "sha256": "08vdwz4vdjdngaxizygkkgs693hnihy3wwnzw49pkdn6m006yr72", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSBiZXR3ZWVuIGZvY3VzLWZvbGxvdy1tb3VzZSBhbmQgY2xpY2stdG8tZm9jdXMgbW9kZSIsCiAgIm5hbWUiOiAiU3dpdGNoIEZvY3VzIFR5cGUiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIlJvbWFubyBHaWFubmV0dGkgPHJvbWFuby5naWFubmV0dGlAZ21haWwuY29tPiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JtYW5vL2dzZS1zd2l0Y2gtZm9jdXMtbW9kZSIsCiAgInV1aWQiOiAiU3dpdGNoRm9jdXNUeXBlQHJvbWFuby5yZ3R0aS5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}}}
 , {"uuid": "radio@hslbck.gmail.com", "name": "Internet Radio", "pname": "internet-radio", "description": "Listen to an Internet Radio Stream", "link": "https://extensions.gnome.org/extension/836/internet-radio/", "shell_version_map": {"38": {"version": "14", "sha256": "013wbf3npz7f438i39cd41s6whs4lgaigv4i1zais994n9ybw5y9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpc3RlbiB0byBhbiBJbnRlcm5ldCBSYWRpbyBTdHJlYW0iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJyYWRpb0Boc2xiY2suZ21haWwuY29tIiwKICAibmFtZSI6ICJJbnRlcm5ldCBSYWRpbyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yYWRpbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hzbGJjay9nbm9tZS1zaGVsbC1leHRlbnNpb24tcmFkaW8iLAogICJ1dWlkIjogInJhZGlvQGhzbGJjay5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "40": {"version": "15", "sha256": "0l5wi3f78shh2p23mjpjazygbw8wxnmzmwmjs0ng317ya2hnzkh4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpc3RlbiB0byBhbiBJbnRlcm5ldCBSYWRpbyBTdHJlYW0iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJyYWRpb0Boc2xiY2suZ21haWwuY29tIiwKICAibmFtZSI6ICJJbnRlcm5ldCBSYWRpbyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yYWRpbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oc2xiY2svZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXJhZGlvIiwKICAidXVpZCI6ICJyYWRpb0Boc2xiY2suZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDE1Cn0="}}}
 , {"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": "44", "sha256": "0w8knrx85wd9yfjrki6vvsjwljkdcnl5677aj05f7nhg26ipsqqz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIENQVSB0ZW1wZXJhdHVyZSwgZGlzayB0ZW1wZXJhdHVyZSwgdmlkZW8gY2FyZCB0ZW1wZXJhdHVyZSAoTlZJRElBL0NhdGFseXN0L0J1bWJsZWJlZSZOVklESUEpLCB2b2x0YWdlIGFuZCBmYW4gUlBNIChmb3JrZWQgZnJvbSB4dHJhbm9waGlsaXN0L2dub21lLXNoZWxsLWV4dGVuc2lvbi1zZW5zb3JzKSIsCiAgImdldHRleHQtZG9tYWluIjogImZyZW9uIiwKICAibmFtZSI6ICJGcmVvbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5mcmVvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1VzaGFrb3ZWYXNpbGlpL2dub21lLXNoZWxsLWV4dGVuc2lvbi1mcmVvbiIsCiAgInV1aWQiOiAiZnJlb25AVXNoYWtvdlZhc2lsaWlfR2l0aHViLnlhaG9vLmNvbSIsCiAgInZlcnNpb24iOiA0NAp9"}}}
-, {"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="}}}
-, {"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": "24", "sha256": "0igv1lnnbdjyl2l3sbx32i10w2wk18mms3mvnjr7q737m8aly77p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlc2l6ZSB3aW5kb3dzIGZvciBHTk9NRSBTb2Z0d2FyZSBzY3JlZW5zaG90cyIsCiAgImV4dGVuc2lvbi1pZCI6ICJzY3JlZW5zaG90LXdpbmRvdy1zaXplciIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlNjcmVlbnNob3QgV2luZG93IFNpemVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNjcmVlbnNob3Qtd2luZG93LXNpemVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAic2NyZWVuc2hvdC13aW5kb3ctc2l6ZXJAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjQKfQ=="}}}
+, {"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"}}}
+, {"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="}}}
 , {"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\nVersion 10 (1.2.1-10) for 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\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": "10", "sha256": "00c52ddg039hd0r6qkq8hmhcl6x6s8lbndn7g53cscjwd0yqxk7j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVwZ3JhZGVzIHRoZSBUb3BiYXIgaW4gR25vbWUzLCBjcmVhdGluZyBhIGN1c3RvbWl6YWJsZSBwYW5lbCBhbmQgcHJvdmlkaW5nIG9wdGlvbnMgZm9yIGZpbmUtdHVuaW5nIHlvdXIgRGVza3RvcCBFeHBlcmllbmNlLlxuXG5GZWF0dXJlcyBpbmNsdWRlOlxuXHUyNWI4IFNldCBjb21mb3J0IGxldmVscyB0byBwcm92aWRlIHRoZW1lIHN1cHBvcnQgYW5kIGZpbmUtdHVuZSB0aGUgb3ZlcmFsbCBsb29rIGFuZCBmZWVsIG9mIHRoZSBwYW5lbC5cblx1MjViOCBTZXQgdGhlIGxvY2F0aW9uL3Bvc2l0aW9uIG9mIHRoZSBwYW5lbCAoYm90dG9tIGJ5IGRlZmF1bHQpLlxuXHUyNWI4IEFkZCBhIGJ1dHRvbiB0byB0aGUgcGFuZWwgaW4gcGxhY2Ugb2YgdGhlIGFjdGl2aXRpZXMgbGluaywgdXNpbmcgYW4gaWNvbiBvZiB5b3VyIHByZWZlcmVuY2UuXG5cdTI1YjggQXV0by1oaWRlIHRoZSBwYW5lbCB3aGVuIG5vdCBhY3RpdmUvaW4tZm9jdXMgKG1ha2VzIHVzZSBvZiBwcmVzc3VyZS9nZXN0dXJlIGZvciBzaG93aW5nIHRoZSBwYW5lbCkuXG5cdTI1YjggRGlzcGxheSBhbmQgbWFuYWdlIHlvdXIgZmF2b3JpdGVzL3J1bm5pbmcgYXBwcyBkaXJlY3RseSBvbiB0aGUgcGFuZWwuXG5cdTI1YjggTW92ZSB0aGUgZGF0ZSBtZW51IHRvIHRoZSBhZ2dyZWdhdGUvdHJheSBhcmVhLlxuXHUyNWI4IEFjY2VzcyBhbmQgbWFuYWdlIHlvdXIgZXh0ZW5zaW9uIHByZWZlcmVuY2VzIGRpcmVjdGx5IGZyb20gdGhlIGFnZ3JlZ2F0ZSBtZW51LlxuXHUyNWI4IEN1c3RvbWl6ZSBiZWhhdmlvciBvZiB0aGUgb3ZlcnZpZXcgYW5kIHBhbmVsKGhvdC1jb3JuZXJzL2FuaW1hdGlvbnMvZWZmZWN0cykgdG8gc3VpdCB5b3VyIHByZWZlcmVuY2VzLlxuXHUyNWI4IE1vcmUgdG8gY29tZSBzb29uIVxuXG5UaGlzIHByb2plY3QgaXMgbG9vc2VseSBiYXNlZCBvbiB0aGUgUGFuZWwgU2V0dGluZ3MgZXh0ZW5zaW9uOlxuaHR0cHM6Ly9naXRodWIuY29tL2VkZGllZnVsbG1ldGFsL2dub21lLXNoZWxsLWV4dGVuc2lvbnMvdHJlZS9tYXN0ZXIvcGFuZWxTZXR0aW5ncyU0MGVkZGllZnVsbG1ldGFsLmdyXG5cblNhZGx5LCBQYW5lbCBTZXR0aW5ncyBoYXMgbm90IHNlZW4gYW55IG1haW50ZW5hbmNlIGluIHllYXJzLCB0aG91Z2ggdGhpcyBpcyB3aHkgSSBkZWNpZGVkIHRvIGNyZWF0ZSBNTU9EIFBhbmVsLlxuXG5JIGFsc28gdG9vayBpbnNwaXJhdGlvbiBmcm9tIHRoZSBmb2xsb3dpbmcgR25vbWUgZXh0ZW5zaW9uczogU3lzdGVtLU1vbml0b3IsIFRhc2tiYXIsIGFuZCBEYXNoVG9Eb2NrLlxuXG5Gb3IgdGhvc2Ugb2YgeW91IHdobyBhcmUgd29uZGVyaW5nLCB0aGUgdGhlbWUgdXNlZCBpbiB0aGUgc2NyZWVuIHNob3QgaXMgdGhlIFp1a2l0d28tRGFyay1TaGVsbCBTaGVsbCBUaGVtZTsgXG5ldmVyeXRoaW5nIGVsc2UgaXMgZGVmYXVsdCBHbm9tZSBvbiBEZWJpYW4gQnVzdGVyLiBIb3dldmVyLCB0aGUgYXV0aG9yIG9mIHRoZSBhZm9yZW1lbnRpb25lZCBzaGVsbCB0aGVtZSBoYXMgXG5jaGFuZ2VkIHRoZSBuYW1lIGZvciB2YXJpb3VzIHJlYXNvbnMgdG8gQ2lsaW9yYS1QcmltYS1TaGVsbCAtIHdoaWNoIGNhbiBiZSBmb3VuZCBoZXJlOlxuXG4gIGh0dHA6Ly9nbm9tZS1sb29rLm9yZy9jb250ZW50L3Nob3cucGhwP2NvbnRlbnQ9MTY1MDk2XG5cblZlcnNpb24gMTAgKDEuMi4xLTEwKSBmb3IgR25vbWUtU2hlbGw6IDMuMTAsIDMuMTIsIDMuMTIuMiwgMy4xNCwgMy4xNC40LCAzLjE2LCAzLjE2LjIsIDMuMTgsIDMuMjAsIDMuMjIsIDMuMjQsIDMuMjYsIDMuMjYuMiwgMy4yOCwgMy4zMCwgMy4zMiwgMy4zNCwgMy4zNSwgMy4zNS45MSwgMy4zNiwgMy4zNi4zLCAzLjM2LjQsIDMuMzYuNiwgMy4zOCwgMy4zOC4yXG5SaWsgPHJpa0BtbW9kLmNvPlxuXG5HZXJtYW4gVHJhbnNsYXRpb24ocykgZm9yIE1NT0QtUGFuZWwgY291cnRlc3kgb2YgSm9uaXVzIFplaWRsZXIgPGpvbmF0YW5femVpZGxlckBnbXguZGU+XG5cblNvdXJjZSBSZXBvc2l0b3J5OiBodHRwczovL2dpdGxhYi5jb20vbW1vZC9tbW9kLXBhbmVsL1xuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibW1vZC1wYW5lbCIsCiAgIm5hbWUiOiAiTU1PRCBQYW5lbCIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJyaWtAbW1vZC5jbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xMCIsCiAgICAiMy4xMiIsCiAgICAiMy4xMi4yIiwKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE0LjQiLAogICAgIjMuMTYuMiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4yNi4yIiwKICAgICIzLjMyIiwKICAgICIzLjI4LjIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjMuMzYuMyIsCiAgICAiMy4zNi40IiwKICAgICIzLjM1LjkxIiwKICAgICIzLjM2LjYiLAogICAgIjMuMzguMiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL21tb2QvbW1vZC1wYW5lbC8iLAogICJ1dWlkIjogIm1tb2QtcGFuZWxAbW1vZ3AuY29tIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
 , {"uuid": "disconnect-wifi@kgshank.net", "name": "Disconnect Wifi", "pname": "disconnect-wifi", "description": "Adds a Disconnect option for Wifi in status menu, when a network is connected. Shows a Reconnect option, after network is disconnected.", "link": "https://extensions.gnome.org/extension/904/disconnect-wifi/", "shell_version_map": {"38": {"version": "28", "sha256": "0j5f3ckx43zqdhr5iby36rhllgd9pvl8sshpzwfwdwff220yablr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBEaXNjb25uZWN0IG9wdGlvbiBmb3IgV2lmaSBpbiBzdGF0dXMgbWVudSwgd2hlbiBhIG5ldHdvcmsgaXMgY29ubmVjdGVkLiBTaG93cyBhIFJlY29ubmVjdCBvcHRpb24sIGFmdGVyIG5ldHdvcmsgaXMgZGlzY29ubmVjdGVkLiIsCiAgIm5hbWUiOiAiRGlzY29ubmVjdCBXaWZpIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIkdvcEkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2dzaGFuay9nc2UtZGlzY29ubmVjdC13aWZpIiwKICAidXVpZCI6ICJkaXNjb25uZWN0LXdpZmlAa2dzaGFuay5uZXQiLAogICJ2ZXJzaW9uIjogMjgKfQ=="}, "40": {"version": "28", "sha256": "0j5f3ckx43zqdhr5iby36rhllgd9pvl8sshpzwfwdwff220yablr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBEaXNjb25uZWN0IG9wdGlvbiBmb3IgV2lmaSBpbiBzdGF0dXMgbWVudSwgd2hlbiBhIG5ldHdvcmsgaXMgY29ubmVjdGVkLiBTaG93cyBhIFJlY29ubmVjdCBvcHRpb24sIGFmdGVyIG5ldHdvcmsgaXMgZGlzY29ubmVjdGVkLiIsCiAgIm5hbWUiOiAiRGlzY29ubmVjdCBXaWZpIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIkdvcEkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2dzaGFuay9nc2UtZGlzY29ubmVjdC13aWZpIiwKICAidXVpZCI6ICJkaXNjb25uZWN0LXdpZmlAa2dzaGFuay5uZXQiLAogICJ2ZXJzaW9uIjogMjgKfQ=="}}}
@@ -72,7 +80,7 @@
 , {"uuid": "transcode-appsearch@k.kubusha@gmail.com", "name": "Transcode App Search", "pname": "transcodeappsearch", "description": "Searching apps both direct and transcoded name (English, Russian, Ukrainian langs)", "link": "https://extensions.gnome.org/extension/928/transcodeappsearch/", "shell_version_map": {"38": {"version": "8", "sha256": "1v6yzp4s0a0i5l9f4la1l9yr83pcpwmrpb5970x48i75mlmlnmjd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlYXJjaGluZyBhcHBzIGJvdGggZGlyZWN0IGFuZCB0cmFuc2NvZGVkIG5hbWUgKEVuZ2xpc2gsIFJ1c3NpYW4sIFVrcmFpbmlhbiBsYW5ncykiLAogICJuYW1lIjogIlRyYW5zY29kZSBBcHAgU2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjEwIiwKICAgICIzLjEyIiwKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N0YXR5YW4vZ25vbWUtZXh0ZW5zaW9uLXRyYW5zY29kZS1zZWFyY2hhcHAiLAogICJ1dWlkIjogInRyYW5zY29kZS1hcHBzZWFyY2hAay5rdWJ1c2hhQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "40": {"version": "8", "sha256": "1v6yzp4s0a0i5l9f4la1l9yr83pcpwmrpb5970x48i75mlmlnmjd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlYXJjaGluZyBhcHBzIGJvdGggZGlyZWN0IGFuZCB0cmFuc2NvZGVkIG5hbWUgKEVuZ2xpc2gsIFJ1c3NpYW4sIFVrcmFpbmlhbiBsYW5ncykiLAogICJuYW1lIjogIlRyYW5zY29kZSBBcHAgU2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjEwIiwKICAgICIzLjEyIiwKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N0YXR5YW4vZ25vbWUtZXh0ZW5zaW9uLXRyYW5zY29kZS1zZWFyY2hhcHAiLAogICJ1dWlkIjogInRyYW5zY29kZS1hcHBzZWFyY2hAay5rdWJ1c2hhQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}}}
 , {"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": "cpupower@mko-sl.de", "name": "CPU Power Manager", "pname": "cpu-power-manager", "description": "Manage Intel_pstate CPU Frequency scaling driver", "link": "https://extensions.gnome.org/extension/945/cpu-power-manager/", "shell_version_map": {"38": {"version": "23", "sha256": "1iv23vr8zkarclll41h0h8hx7dhh3q84lsmpn8igib7x7d65mslx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBJbnRlbF9wc3RhdGUgQ1BVIEZyZXF1ZW5jeSBzY2FsaW5nIGRyaXZlciIsCiAgImxvY2FsZWRpciI6ICIvdXNyL2xvY2FsL3NoYXJlL2xvY2FsZSIsCiAgIm5hbWUiOiAiQ1BVIFBvd2VyIE1hbmFnZXIiLAogICJzY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY3B1cG93ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tYXJ0aW4zMTgyMS9jcHVwb3dlciIsCiAgInV1aWQiOiAiY3B1cG93ZXJAbWtvLXNsLmRlIiwKICAidmVyc2lvbiI6IDIzCn0="}}}
-, {"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": "12", "sha256": "1z5zzgxsagfb1w543idg81gwynzlnjavfv4s8phj9h305z04lhsn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgd29ybGQgY2xvY2sgZm9yIHRoZSBwYW5lbFxuXG5JbnN0YWxsIGdub21lLWNsb2NrcyB0byBnZXQgc3RhcnRlZCFcbkhpbnQ6IEVpXHUwMGYwYXIgaGFzIHRoZSBzYW1lIHRpbWUgYXMgVVRDXG5cbkdub21lIFx1MjI2NDMuMTQ/IGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzY5Ny9wYW5lbC13b3JsZC1jbG9jay8iLAogICJuYW1lIjogIlBhbmVsIFdvcmxkIENsb2NrIChMaXRlKSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53b3JsZC1jbG9jayIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAid29ybGRfY2xvY2tfbGl0ZUBhaWxpbi5uZW11aSIsCiAgInZlcnNpb24iOiAxMgp9"}}}
+, {"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": "13", "sha256": "1v0p6ia7x8gs2ld0mz78lhavwa32gx8r81j14kng626f91c965j3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgd29ybGQgY2xvY2sgZm9yIHRoZSBwYW5lbFxuXG5JbnN0YWxsIGdub21lLWNsb2NrcyB0byBnZXQgc3RhcnRlZCFcbkhpbnQ6IEVpXHUwMGYwYXIgaGFzIHRoZSBzYW1lIHRpbWUgYXMgVVRDXG5cbkdub21lIFx1MjI2NDMuMTQ/IGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzY5Ny9wYW5lbC13b3JsZC1jbG9jay8iLAogICJuYW1lIjogIlBhbmVsIFdvcmxkIENsb2NrIChMaXRlKSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53b3JsZC1jbG9jayIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAid29ybGRfY2xvY2tfbGl0ZUBhaWxpbi5uZW11aSIsCiAgInZlcnNpb24iOiAxMwp9"}}}
 , {"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": "25", "sha256": "0aqcw2lbcya5x9xx2y8srfjjar9jww9hzsxqx44h65jdw1zdl1vl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgZGltcyB0aGUgc2NyZWVuIHdoZW4gdGhlIG1hY2hpbmUgaXMgcnVubmluZyBvbiBiYXR0ZXJ5IHBvd2VyLiIsCiAgIm5hbWUiOiAiRGltIE9uIEJhdHRlcnkgUG93ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vbmFpbGZhcm1lci9nbm9tZS1zaGVsbC1kaW0tb24tYmF0dGVyeS1leHRlbnNpb24iLAogICJ1dWlkIjogImRpbS1vbi1iYXR0ZXJ5QG5haWxmYXJtZXIubmFpbGZhcm1lci5jb20iLAogICJ2ZXJzaW9uIjogMjUKfQ=="}, "40": {"version": "25", "sha256": "0aqcw2lbcya5x9xx2y8srfjjar9jww9hzsxqx44h65jdw1zdl1vl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgZGltcyB0aGUgc2NyZWVuIHdoZW4gdGhlIG1hY2hpbmUgaXMgcnVubmluZyBvbiBiYXR0ZXJ5IHBvd2VyLiIsCiAgIm5hbWUiOiAiRGltIE9uIEJhdHRlcnkgUG93ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vbmFpbGZhcm1lci9nbm9tZS1zaGVsbC1kaW0tb24tYmF0dGVyeS1leHRlbnNpb24iLAogICJ1dWlkIjogImRpbS1vbi1iYXR0ZXJ5QG5haWxmYXJtZXIubmFpbGZhcm1lci5jb20iLAogICJ2ZXJzaW9uIjogMjUKfQ=="}}}
 , {"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"}}}
@@ -87,27 +95,31 @@
 , {"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": "10", "sha256": "09835gdpq5ssx14dar2m0hgi97a2k0hias9ffb3vpwyqw2d5jm30", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkljaW5nYS9OYWdpb3MgY2hlY2tlciIsCiAgImV4dGVuc2lvbi1pZCI6ICJpY2luZ2EtY2hlY2tlciIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkljaW5nYSBjaGVja2VyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogInBhd2VsQHNvc3Vsc2tpLm5ldCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pY2luZ2EtY2hlY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJpY2luZ2EtY2hlY2tlckBzb3N1bHNraS5uZXQiLAogICJ2ZXJzaW9uIjogMTAKfQ=="}, "40": {"version": "10", "sha256": "09835gdpq5ssx14dar2m0hgi97a2k0hias9ffb3vpwyqw2d5jm30", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkljaW5nYS9OYWdpb3MgY2hlY2tlciIsCiAgImV4dGVuc2lvbi1pZCI6ICJpY2luZ2EtY2hlY2tlciIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkljaW5nYSBjaGVja2VyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogInBhd2VsQHNvc3Vsc2tpLm5ldCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pY2luZ2EtY2hlY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJpY2luZ2EtY2hlY2tlckBzb3N1bHNraS5uZXQiLAogICJ2ZXJzaW9uIjogMTAKfQ=="}}}
 , {"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"}}}
 , {"uuid": "randomwallpaper@iflow.space", "name": "Random Wallpaper", "pname": "random-wallpaper", "description": "Fetch a random wallpaper from an online source and set it as a desktop background. \nThe desktop background can be updated periodically or manually.\n\nFeatures:\nMany different online sources with filters:\n        - Unsplash (https://unsplash.com/)\n        - Wallhaven (https://alpha.wallhaven.cc/)\n        - Reddit (https://reddit.com)\n        - Basically any JSON API/File (see Examples on GitHub)\nHistory of previous images\nSet lock screen image\nAutomatic renewal (Auto-Fetching)", "link": "https://extensions.gnome.org/extension/1040/random-wallpaper/", "shell_version_map": {"38": {"version": "22", "sha256": "0gwcqd5wzjnp3r4mpcbacbqk9j9v4pxh2wlcl5ssinj8z4pxm5qj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZldGNoIGEgcmFuZG9tIHdhbGxwYXBlciBmcm9tIGFuIG9ubGluZSBzb3VyY2UgYW5kIHNldCBpdCBhcyBhIGRlc2t0b3AgYmFja2dyb3VuZC4gXG5UaGUgZGVza3RvcCBiYWNrZ3JvdW5kIGNhbiBiZSB1cGRhdGVkIHBlcmlvZGljYWxseSBvciBtYW51YWxseS5cblxuRmVhdHVyZXM6XG5NYW55IGRpZmZlcmVudCBvbmxpbmUgc291cmNlcyB3aXRoIGZpbHRlcnM6XG4gICAgICAgIC0gVW5zcGxhc2ggKGh0dHBzOi8vdW5zcGxhc2guY29tLylcbiAgICAgICAgLSBXYWxsaGF2ZW4gKGh0dHBzOi8vYWxwaGEud2FsbGhhdmVuLmNjLylcbiAgICAgICAgLSBSZWRkaXQgKGh0dHBzOi8vcmVkZGl0LmNvbSlcbiAgICAgICAgLSBCYXNpY2FsbHkgYW55IEpTT04gQVBJL0ZpbGUgKHNlZSBFeGFtcGxlcyBvbiBHaXRIdWIpXG5IaXN0b3J5IG9mIHByZXZpb3VzIGltYWdlc1xuU2V0IGxvY2sgc2NyZWVuIGltYWdlXG5BdXRvbWF0aWMgcmVuZXdhbCAoQXV0by1GZXRjaGluZykiLAogICJuYW1lIjogIlJhbmRvbSBXYWxscGFwZXIiLAogICJzZW1hbnRpYy12ZXJzaW9uIjogIjIuNC41IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNwYWNlLmlmbG93LnJhbmRvbXdhbGxwYXBlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2lmbDB3L1JhbmRvbVdhbGxwYXBlckdub21lMyIsCiAgInV1aWQiOiAicmFuZG9td2FsbHBhcGVyQGlmbG93LnNwYWNlIiwKICAidmVyc2lvbiI6IDIyCn0="}, "40": {"version": "25", "sha256": "1nqa901ilmdr9wxxs11mbcb96qwzwz6ckaimx8y0vpnrdzackmx4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZldGNoIGEgcmFuZG9tIHdhbGxwYXBlciBmcm9tIGFuIG9ubGluZSBzb3VyY2UgYW5kIHNldCBpdCBhcyBhIGRlc2t0b3AgYmFja2dyb3VuZC4gXG5UaGUgZGVza3RvcCBiYWNrZ3JvdW5kIGNhbiBiZSB1cGRhdGVkIHBlcmlvZGljYWxseSBvciBtYW51YWxseS5cblxuRmVhdHVyZXM6XG5NYW55IGRpZmZlcmVudCBvbmxpbmUgc291cmNlcyB3aXRoIGZpbHRlcnM6XG4gICAgICAgIC0gVW5zcGxhc2ggKGh0dHBzOi8vdW5zcGxhc2guY29tLylcbiAgICAgICAgLSBXYWxsaGF2ZW4gKGh0dHBzOi8vYWxwaGEud2FsbGhhdmVuLmNjLylcbiAgICAgICAgLSBSZWRkaXQgKGh0dHBzOi8vcmVkZGl0LmNvbSlcbiAgICAgICAgLSBCYXNpY2FsbHkgYW55IEpTT04gQVBJL0ZpbGUgKHNlZSBFeGFtcGxlcyBvbiBHaXRIdWIpXG5IaXN0b3J5IG9mIHByZXZpb3VzIGltYWdlc1xuU2V0IGxvY2sgc2NyZWVuIGltYWdlXG5BdXRvbWF0aWMgcmVuZXdhbCAoQXV0by1GZXRjaGluZykiLAogICJuYW1lIjogIlJhbmRvbSBXYWxscGFwZXIiLAogICJzZW1hbnRpYy12ZXJzaW9uIjogIjIuNS4wIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNwYWNlLmlmbG93LnJhbmRvbXdhbGxwYXBlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIsCiAgICAiNDAuMSIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pZmwwdy9SYW5kb21XYWxscGFwZXJHbm9tZTMiLAogICJ1dWlkIjogInJhbmRvbXdhbGxwYXBlckBpZmxvdy5zcGFjZSIsCiAgInZlcnNpb24iOiAyNQp9"}}}
-, {"uuid": "gse-haguichi-indicator@ztefn.github.com", "name": "Haguichi Indicator", "pname": "haguichi-indicator", "description": "Lets you control Haguichi directly from the system status area in GNOME Shell.", "link": "https://extensions.gnome.org/extension/1045/haguichi-indicator/", "shell_version_map": {"38": {"version": "14", "sha256": "0irnb19sl893427ag9722w2dj55j7p4f2yy61bwqdbp4fpi8zjww", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxldHMgeW91IGNvbnRyb2wgSGFndWljaGkgZGlyZWN0bHkgZnJvbSB0aGUgc3lzdGVtIHN0YXR1cyBhcmVhIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiSGFndWljaGkgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20venRlZm4vZ3NlLWhhZ3VpY2hpLWluZGljYXRvciIsCiAgInV1aWQiOiAiZ3NlLWhhZ3VpY2hpLWluZGljYXRvckB6dGVmbi5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE0Cn0="}, "40": {"version": "14", "sha256": "0irnb19sl893427ag9722w2dj55j7p4f2yy61bwqdbp4fpi8zjww", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxldHMgeW91IGNvbnRyb2wgSGFndWljaGkgZGlyZWN0bHkgZnJvbSB0aGUgc3lzdGVtIHN0YXR1cyBhcmVhIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiSGFndWljaGkgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20venRlZm4vZ3NlLWhhZ3VpY2hpLWluZGljYXRvciIsCiAgInV1aWQiOiAiZ3NlLWhhZ3VpY2hpLWluZGljYXRvckB6dGVmbi5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE0Cn0="}}}
+, {"uuid": "gse-haguichi-indicator@ztefn.github.com", "name": "Haguichi Indicator", "pname": "haguichi-indicator", "description": "Lets you control Haguichi directly from the system status area in GNOME Shell.", "link": "https://extensions.gnome.org/extension/1045/haguichi-indicator/", "shell_version_map": {"38": {"version": "16", "sha256": "1ag94vhwx67cpdc4ry307lxrj60nkkwwd9kv49k5mfwy9hbxpbf3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxldHMgeW91IGNvbnRyb2wgSGFndWljaGkgZGlyZWN0bHkgZnJvbSB0aGUgc3lzdGVtIHN0YXR1cyBhcmVhIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiSGFndWljaGkgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3p0ZWZuL2dzZS1oYWd1aWNoaS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImdzZS1oYWd1aWNoaS1pbmRpY2F0b3JAenRlZm4uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxNgp9"}, "40": {"version": "16", "sha256": "1ag94vhwx67cpdc4ry307lxrj60nkkwwd9kv49k5mfwy9hbxpbf3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxldHMgeW91IGNvbnRyb2wgSGFndWljaGkgZGlyZWN0bHkgZnJvbSB0aGUgc3lzdGVtIHN0YXR1cyBhcmVhIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiSGFndWljaGkgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3p0ZWZuL2dzZS1oYWd1aWNoaS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImdzZS1oYWd1aWNoaS1pbmRpY2F0b3JAenRlZm4uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxNgp9"}}}
+, {"uuid": "timezone@jwendell", "name": "Timezone", "pname": "timezone", "description": "See people with their timezones from the Shell", "link": "https://extensions.gnome.org/extension/1060/timezone/", "shell_version_map": {"40": {"version": "18", "sha256": "1ksb8pm2y4lxjcwn2l0yj6piz5cqgmzx6k4rygx1mbh5y76mwdji", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlZSBwZW9wbGUgd2l0aCB0aGVpciB0aW1lem9uZXMgZnJvbSB0aGUgU2hlbGwiLAogICJuYW1lIjogIlRpbWV6b25lIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRpbWV6b25lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMyIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2p3ZW5kZWxsL2dub21lLXNoZWxsLWV4dGVuc2lvbi10aW1lem9uZSIsCiAgInV1aWQiOiAidGltZXpvbmVAandlbmRlbGwiLAogICJ2ZXJzaW9uIjogMTgKfQ=="}}}
 , {"uuid": "On_Screen_Keyboard_Button@bradan.eu", "name": "On Screen Keyboard Button", "pname": "on-screen-keyboard-button", "description": "Shows or hides the OSK via top bar button. It works with X, not with wayland. Wayland has it's own technique: swipe the keyboard up from the bottom display edge.\n\nSource code: https://github.com/Bradan/Gnome-On-Screen-Keyboard-Button", "link": "https://extensions.gnome.org/extension/1061/on-screen-keyboard-button/", "shell_version_map": {"38": {"version": "5", "sha256": "0z3jcv5gzv1pwfla9ghp5kjljc5n80fcab0d2c2i2pw7y7kvpabr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIG9yIGhpZGVzIHRoZSBPU0sgdmlhIHRvcCBiYXIgYnV0dG9uLiBJdCB3b3JrcyB3aXRoIFgsIG5vdCB3aXRoIHdheWxhbmQuIFdheWxhbmQgaGFzIGl0J3Mgb3duIHRlY2huaXF1ZTogc3dpcGUgdGhlIGtleWJvYXJkIHVwIGZyb20gdGhlIGJvdHRvbSBkaXNwbGF5IGVkZ2UuXG5cblNvdXJjZSBjb2RlOiBodHRwczovL2dpdGh1Yi5jb20vQnJhZGFuL0dub21lLU9uLVNjcmVlbi1LZXlib2FyZC1CdXR0b24iLAogICJuYW1lIjogIk9uIFNjcmVlbiBLZXlib2FyZCBCdXR0b24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjgiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiT25fU2NyZWVuX0tleWJvYXJkX0J1dHRvbkBicmFkYW4uZXUiLAogICJ2ZXJzaW9uIjogNQp9"}}}
 , {"uuid": "System_Monitor@bghome.gmail.com", "name": "System Monitor", "pname": "system-monitor", "description": "Display resource usage.\n\nLinux distribution specific installation instructions can be found in the wiki at https://github.com/elvetemedve/gnome-shell-extension-system-monitor/wiki/Installation.\n\nPlease report bugs here: https://github.com/elvetemedve/gnome-shell-extension-system-monitor/issues", "link": "https://extensions.gnome.org/extension/1064/system-monitor/", "shell_version_map": {"38": {"version": "21", "sha256": "1kp4xqsglmj7likmln1x8nz2vmlz8m8vh13chnsn1rsn5a16s7v9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgcmVzb3VyY2UgdXNhZ2UuXG5cbkxpbnV4IGRpc3RyaWJ1dGlvbiBzcGVjaWZpYyBpbnN0YWxsYXRpb24gaW5zdHJ1Y3Rpb25zIGNhbiBiZSBmb3VuZCBpbiB0aGUgd2lraSBhdCBodHRwczovL2dpdGh1Yi5jb20vZWx2ZXRlbWVkdmUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXN5c3RlbS1tb25pdG9yL3dpa2kvSW5zdGFsbGF0aW9uLlxuXG5QbGVhc2UgcmVwb3J0IGJ1Z3MgaGVyZTogaHR0cHM6Ly9naXRodWIuY29tL2VsdmV0ZW1lZHZlL2dub21lLXNoZWxsLWV4dGVuc2lvbi1zeXN0ZW0tbW9uaXRvci9pc3N1ZXMiLAogICJuYW1lIjogIlN5c3RlbSBNb25pdG9yIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnN5c3RlbS1tb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWx2ZXRlbWVkdmUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXN5c3RlbS1tb25pdG9yIiwKICAidXVpZCI6ICJTeXN0ZW1fTW9uaXRvckBiZ2hvbWUuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDIxCn0="}, "40": {"version": "21", "sha256": "1kp4xqsglmj7likmln1x8nz2vmlz8m8vh13chnsn1rsn5a16s7v9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgcmVzb3VyY2UgdXNhZ2UuXG5cbkxpbnV4IGRpc3RyaWJ1dGlvbiBzcGVjaWZpYyBpbnN0YWxsYXRpb24gaW5zdHJ1Y3Rpb25zIGNhbiBiZSBmb3VuZCBpbiB0aGUgd2lraSBhdCBodHRwczovL2dpdGh1Yi5jb20vZWx2ZXRlbWVkdmUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXN5c3RlbS1tb25pdG9yL3dpa2kvSW5zdGFsbGF0aW9uLlxuXG5QbGVhc2UgcmVwb3J0IGJ1Z3MgaGVyZTogaHR0cHM6Ly9naXRodWIuY29tL2VsdmV0ZW1lZHZlL2dub21lLXNoZWxsLWV4dGVuc2lvbi1zeXN0ZW0tbW9uaXRvci9pc3N1ZXMiLAogICJuYW1lIjogIlN5c3RlbSBNb25pdG9yIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnN5c3RlbS1tb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWx2ZXRlbWVkdmUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXN5c3RlbS1tb25pdG9yIiwKICAidXVpZCI6ICJTeXN0ZW1fTW9uaXRvckBiZ2hvbWUuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDIxCn0="}}}
 , {"uuid": "syncthing@gnome.2nv2u.com", "name": "Syncthing Indicator", "pname": "syncthing-indicator", "description": "Shell indicator for starting, monitoring and controlling the Syncthing daemon using SystemD", "link": "https://extensions.gnome.org/extension/1070/syncthing-indicator/", "shell_version_map": {"38": {"version": "20", "sha256": "11ljyy9glhlc2mrvmfz64cxngxamzri09wz8gkgs8dx5zwk31si8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNoZWxsIGluZGljYXRvciBmb3Igc3RhcnRpbmcsIG1vbml0b3JpbmcgYW5kIGNvbnRyb2xsaW5nIHRoZSBTeW5jdGhpbmcgZGFlbW9uIHVzaW5nIFN5c3RlbUQiLAogICJuYW1lIjogIlN5bmN0aGluZyBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vMm52MnUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXN5bmN0aGluZy1pbmRpY2F0b3IiLAogICJ1dWlkIjogInN5bmN0aGluZ0Bnbm9tZS4ybnYydS5jb20iLAogICJ2ZXJzaW9uIjogMjAKfQ=="}, "40": {"version": "20", "sha256": "11ljyy9glhlc2mrvmfz64cxngxamzri09wz8gkgs8dx5zwk31si8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNoZWxsIGluZGljYXRvciBmb3Igc3RhcnRpbmcsIG1vbml0b3JpbmcgYW5kIGNvbnRyb2xsaW5nIHRoZSBTeW5jdGhpbmcgZGFlbW9uIHVzaW5nIFN5c3RlbUQiLAogICJuYW1lIjogIlN5bmN0aGluZyBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vMm52MnUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXN5bmN0aGluZy1pbmRpY2F0b3IiLAogICJ1dWlkIjogInN5bmN0aGluZ0Bnbm9tZS4ybnYydS5jb20iLAogICJ2ZXJzaW9uIjogMjAKfQ=="}}}
 , {"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": "12", "sha256": "0m0wsgpx390qkx6csicsfdp5v9pa15xpyk57ym7hbr8947h77494", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGEgdG9vbHRpcCBvdmVyIGFwcGxpY2F0aW9ucyBpY29ucyBvbiBhcHBsaWNhdGlvbnMgb3ZlcnZpZXcgd2l0aCBhcHBsaWNhdGlvbiBuYW1lIGFuZC9vciBkZXNjcmlwdGlvbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhcHBsaWNhdGlvbnMtb3ZlcnZpZXctdG9vbHRpcCIsCiAgIm5hbWUiOiAiQXBwbGljYXRpb25zIE92ZXJ2aWV3IFRvb2x0aXAiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwbGljYXRpb25zLW92ZXJ2aWV3LXRvb2x0aXAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUmFwaGFlbFJvY2hldC9hcHBsaWNhdGlvbnMtb3ZlcnZpZXctdG9vbHRpcCIsCiAgInV1aWQiOiAiYXBwbGljYXRpb25zLW92ZXJ2aWV3LXRvb2x0aXBAUmFwaGFlbFJvY2hldCIsCiAgInZlcnNpb24iOiAxMgp9"}}}
 , {"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": "35", "sha256": "0arb73gv1y5krlqwpqwzynpd2ki8wlv47xx0zpjlal066pyyjgfw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgcGFuZWwgc2hvd2luZyB3aGV0aGVyIHlvdXIgZmF2b3JpdGUgVHdpdGNoLnR2IHN0cmVhbWVycyBhcmUgc3RyZWFtaW5nLlxuXG5DeWNsZXMgdGhyb3VnaCB0aGUgb25saW5lIHN0cmVhbWVycyBpZiBtdWx0aXBsZXMgYXJlIGNvbmZpZ3VyZWQuIENsaWNrIG9uIHRoZSBwYW5lbCBhbmQgdGhlbiBvbiBzdHJlYW1lcidzIG5hbWUgdG8gbGF1bmNoIHRoZSBzdHJlYW0gd2l0aCBhIGN1c3RvbSBjb21tYW5kICh5b3VyIGJyb3dzZXIgb3Igc29tZSBvdGhlciBhcHBsaWNhdGlvbikuXG5cbk5lZWRzIGN1cmwgYW5kIG1vZ3JpZnkgdG8gZnVsbHkgc3VwcG9ydCBzdHJlYW1lciBsb2dvcy4gRm9yIGFuIGV4dGVuc2lvbiB2ZXJzaW9uIGNvbXBhdGlibGUgd2l0aCBzaGVsbCB2ZXJzaW9uIDMuMzAgb3IgZWFybGllciB2aXNpdCBvdXIgZ2l0aHViIHBhZ2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidHdpdGNobGl2ZSIsCiAgIm5hbWUiOiAiVHdpdGNoTGl2ZSBQYW5lbCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50d2l0Y2hsaXZlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21hd2VraS90d2l0Y2hsaXZlLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiVHdpdGNoTGl2ZV9QYW5lbEBleHRlbnNpb25zLm1hd2VraS5kZSIsCiAgInZlcnNpb24iOiAzNQp9"}}}
-, {"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": "47", "sha256": "08snf0yqp85i4fnmspg7hg8m0xq16pjxh26x8yp5x7zk42hf462s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5c3RlbSBNb25pdG9yIGFuZCBQb3dlciBNYW5hZ2VyLlxuXG5UaGlzIGlzIGEgbGlnaHR3ZWlnaHQgc3lzdGVtIG1vbml0b3IgYW5kIHBvd2VyIG1hbmFnZW1lbnQgdG9vbC4gSXQgbmVlZHMgcm9vdCBwZXJtaXNzaW9uIHRvIGFibGUgY2hhbmdpbmcgZ292ZXJub3JzLlxuXG5GZWF0dXJlczpcblx1MjZhYiBDb21wYXRpYmxlIHdpdGggbWFueSBoYXJkd2FyZSBhcmNoaXRlY3R1cmVzO1xuXHUyNmFiIENQVSBGcmVxdWVuY3kgbW9uaXRvcmluZztcblx1MjZhYiBDUFUgR292ZXJub3IgbWFuYWdlbWVudDtcblx1MjZhYiBDUFUgRnJlcXVlbmN5IHNwZWVkIGxpbWl0cztcblx1MjZhYiBDUFUgQm9vc3Qgc3VwcG9ydGluZztcblx1MjZhYiBDUFUgQ29yZSBQb3dlciBvbi9vZmY7XG5cdTI2YWIgU2F2aW5nL1Jlc3RvcmluZyBzZXR0aW5ncy4uLlxuXG5Gb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgaG93LXRvIHNlZSBSRUFETUUubWQiLAogICJuYW1lIjogImNwdWZyZXEiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY3B1ZnJlcSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2tvbmtvci9jcHVmcmVxIiwKICAidXVpZCI6ICJjcHVmcmVxQGtvbmtvciIsCiAgInZlcnNpb24iOiA0Nwp9"}, "40": {"version": "47", "sha256": "08snf0yqp85i4fnmspg7hg8m0xq16pjxh26x8yp5x7zk42hf462s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5c3RlbSBNb25pdG9yIGFuZCBQb3dlciBNYW5hZ2VyLlxuXG5UaGlzIGlzIGEgbGlnaHR3ZWlnaHQgc3lzdGVtIG1vbml0b3IgYW5kIHBvd2VyIG1hbmFnZW1lbnQgdG9vbC4gSXQgbmVlZHMgcm9vdCBwZXJtaXNzaW9uIHRvIGFibGUgY2hhbmdpbmcgZ292ZXJub3JzLlxuXG5GZWF0dXJlczpcblx1MjZhYiBDb21wYXRpYmxlIHdpdGggbWFueSBoYXJkd2FyZSBhcmNoaXRlY3R1cmVzO1xuXHUyNmFiIENQVSBGcmVxdWVuY3kgbW9uaXRvcmluZztcblx1MjZhYiBDUFUgR292ZXJub3IgbWFuYWdlbWVudDtcblx1MjZhYiBDUFUgRnJlcXVlbmN5IHNwZWVkIGxpbWl0cztcblx1MjZhYiBDUFUgQm9vc3Qgc3VwcG9ydGluZztcblx1MjZhYiBDUFUgQ29yZSBQb3dlciBvbi9vZmY7XG5cdTI2YWIgU2F2aW5nL1Jlc3RvcmluZyBzZXR0aW5ncy4uLlxuXG5Gb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgaG93LXRvIHNlZSBSRUFETUUubWQiLAogICJuYW1lIjogImNwdWZyZXEiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY3B1ZnJlcSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2tvbmtvci9jcHVmcmVxIiwKICAidXVpZCI6ICJjcHVmcmVxQGtvbmtvciIsCiAgInZlcnNpb24iOiA0Nwp9"}}}
-, {"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 &amp; down speed in bits per second\n4. Up &amp; 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": "21", "sha256": "0s6m6k06sd9yagrxf5ny7qw613800qiy7yp60fnxb41vdls1s0mv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBseSBzaG93aW5nIG5ldHdvcmsgc3BlZWQuIExlZnQgY2xpY2sgdG8gY2hhbmdlIG1vZGVzOlxuXG4xLiBUb3RhbCBuZXQgc3BlZWQgaW4gYml0cyBwZXIgc2Vjb25kXG4yLiBUb3RhbCBuZXQgc3BlZWQgaW4gQnl0ZXMgcGVyIHNlY29uZFxuMy4gVXAgJmFtcDsgZG93biBzcGVlZCBpbiBiaXRzIHBlciBzZWNvbmRcbjQuIFVwICZhbXA7IGRvd24gc3BlZWQgaW4gQnl0ZXMgcGVyIHNlY29uZFxuNS4gVG90YWwgb2YgZG93bmxvYWRlZCBpbiBCeXRlcyAoUmlnaHQgY2xpY2sgdG8gcmVzZXQgY291bnRlcilcblxuTWlkZGxlIGNsaWNrIHRvIGNoYW5nZSBmb250IHNpemUiLAogICJuYW1lIjogIlNpbXBsZSBuZXQgc3BlZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIiwKICAgICI0NCIsCiAgICAiNDUiLAogICAgIjQ2IiwKICAgICI0NyIsCiAgICAiNDgiLAogICAgIjQ5IiwKICAgICI1MCIsCiAgICAiNTEiLAogICAgIjUyIiwKICAgICI1MyIsCiAgICAiNTQiLAogICAgIjU1IiwKICAgICI1NiIsCiAgICAiNTciLAogICAgIjU4IiwKICAgICI1OSIsCiAgICAiNjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iaWppL3NpbXBsZW5ldHNwZWVkIiwKICAidXVpZCI6ICJzaW1wbGVuZXRzcGVlZEBiaWppLmV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiAyMQp9"}, "40": {"version": "21", "sha256": "0s6m6k06sd9yagrxf5ny7qw613800qiy7yp60fnxb41vdls1s0mv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBseSBzaG93aW5nIG5ldHdvcmsgc3BlZWQuIExlZnQgY2xpY2sgdG8gY2hhbmdlIG1vZGVzOlxuXG4xLiBUb3RhbCBuZXQgc3BlZWQgaW4gYml0cyBwZXIgc2Vjb25kXG4yLiBUb3RhbCBuZXQgc3BlZWQgaW4gQnl0ZXMgcGVyIHNlY29uZFxuMy4gVXAgJmFtcDsgZG93biBzcGVlZCBpbiBiaXRzIHBlciBzZWNvbmRcbjQuIFVwICZhbXA7IGRvd24gc3BlZWQgaW4gQnl0ZXMgcGVyIHNlY29uZFxuNS4gVG90YWwgb2YgZG93bmxvYWRlZCBpbiBCeXRlcyAoUmlnaHQgY2xpY2sgdG8gcmVzZXQgY291bnRlcilcblxuTWlkZGxlIGNsaWNrIHRvIGNoYW5nZSBmb250IHNpemUiLAogICJuYW1lIjogIlNpbXBsZSBuZXQgc3BlZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiLAogICAgIjQzIiwKICAgICI0NCIsCiAgICAiNDUiLAogICAgIjQ2IiwKICAgICI0NyIsCiAgICAiNDgiLAogICAgIjQ5IiwKICAgICI1MCIsCiAgICAiNTEiLAogICAgIjUyIiwKICAgICI1MyIsCiAgICAiNTQiLAogICAgIjU1IiwKICAgICI1NiIsCiAgICAiNTciLAogICAgIjU4IiwKICAgICI1OSIsCiAgICAiNjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iaWppL3NpbXBsZW5ldHNwZWVkIiwKICAidXVpZCI6ICJzaW1wbGVuZXRzcGVlZEBiaWppLmV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiAyMQp9"}}}
+, {"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": "50", "sha256": "0s4hgdh4yg5dachns0zf3m7xyc7ycc6jjapg3b3352i0rgw8cfdw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5c3RlbSBNb25pdG9yIGFuZCBQb3dlciBNYW5hZ2VyLlxuXG5UaGlzIGlzIGEgbGlnaHR3ZWlnaHQgc3lzdGVtIG1vbml0b3IgYW5kIHBvd2VyIG1hbmFnZW1lbnQgdG9vbC4gSXQgbmVlZHMgcm9vdCBwZXJtaXNzaW9uIHRvIGFibGUgY2hhbmdpbmcgZ292ZXJub3JzLlxuXG5GZWF0dXJlczpcblx1MjZhYiBDb21wYXRpYmxlIHdpdGggbWFueSBoYXJkd2FyZSBhcmNoaXRlY3R1cmVzO1xuXHUyNmFiIENQVSBGcmVxdWVuY3kgbW9uaXRvcmluZztcblx1MjZhYiBDUFUgR292ZXJub3IgbWFuYWdlbWVudDtcblx1MjZhYiBDUFUgRnJlcXVlbmN5IHNwZWVkIGxpbWl0cztcblx1MjZhYiBDUFUgQm9vc3Qgc3VwcG9ydGluZztcblx1MjZhYiBDUFUgQ29yZSBQb3dlciBvbi9vZmY7XG5cdTI2YWIgU2F2aW5nL1Jlc3RvcmluZyBzZXR0aW5ncy4uLlxuXG5Gb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgaG93LXRvIHNlZSBSRUFETUUubWQiLAogICJuYW1lIjogImNwdWZyZXEiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY3B1ZnJlcSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rb25rb3IvY3B1ZnJlcSIsCiAgInV1aWQiOiAiY3B1ZnJlcUBrb25rb3IiLAogICJ2ZXJzaW9uIjogNTAKfQ=="}, "40": {"version": "50", "sha256": "0s4hgdh4yg5dachns0zf3m7xyc7ycc6jjapg3b3352i0rgw8cfdw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5c3RlbSBNb25pdG9yIGFuZCBQb3dlciBNYW5hZ2VyLlxuXG5UaGlzIGlzIGEgbGlnaHR3ZWlnaHQgc3lzdGVtIG1vbml0b3IgYW5kIHBvd2VyIG1hbmFnZW1lbnQgdG9vbC4gSXQgbmVlZHMgcm9vdCBwZXJtaXNzaW9uIHRvIGFibGUgY2hhbmdpbmcgZ292ZXJub3JzLlxuXG5GZWF0dXJlczpcblx1MjZhYiBDb21wYXRpYmxlIHdpdGggbWFueSBoYXJkd2FyZSBhcmNoaXRlY3R1cmVzO1xuXHUyNmFiIENQVSBGcmVxdWVuY3kgbW9uaXRvcmluZztcblx1MjZhYiBDUFUgR292ZXJub3IgbWFuYWdlbWVudDtcblx1MjZhYiBDUFUgRnJlcXVlbmN5IHNwZWVkIGxpbWl0cztcblx1MjZhYiBDUFUgQm9vc3Qgc3VwcG9ydGluZztcblx1MjZhYiBDUFUgQ29yZSBQb3dlciBvbi9vZmY7XG5cdTI2YWIgU2F2aW5nL1Jlc3RvcmluZyBzZXR0aW5ncy4uLlxuXG5Gb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgaG93LXRvIHNlZSBSRUFETUUubWQiLAogICJuYW1lIjogImNwdWZyZXEiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY3B1ZnJlcSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rb25rb3IvY3B1ZnJlcSIsCiAgInV1aWQiOiAiY3B1ZnJlcUBrb25rb3IiLAogICJ2ZXJzaW9uIjogNTAKfQ=="}}}
+, {"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": "23", "sha256": "16g6203q6d8il018rf8zhh6gziybpczc6r5v5289kz0i343bmkfj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBseSBzaG93aW5nIG5ldHdvcmsgc3BlZWQuIExlZnQgY2xpY2sgdG8gY2hhbmdlIG1vZGVzOlxuXG4xLiBUb3RhbCBuZXQgc3BlZWQgaW4gYml0cyBwZXIgc2Vjb25kXG4yLiBUb3RhbCBuZXQgc3BlZWQgaW4gQnl0ZXMgcGVyIHNlY29uZFxuMy4gVXAgJiBkb3duIHNwZWVkIGluIGJpdHMgcGVyIHNlY29uZFxuNC4gVXAgJiBkb3duIHNwZWVkIGluIEJ5dGVzIHBlciBzZWNvbmRcbjUuIFRvdGFsIG9mIGRvd25sb2FkZWQgaW4gQnl0ZXMgKFJpZ2h0IGNsaWNrIHRvIHJlc2V0IGNvdW50ZXIpXG5cbk1pZGRsZSBjbGljayB0byBjaGFuZ2UgZm9udCBzaXplIiwKICAibmFtZSI6ICJTaW1wbGUgbmV0IHNwZWVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iaWppL3NpbXBsZW5ldHNwZWVkIiwKICAidXVpZCI6ICJzaW1wbGVuZXRzcGVlZEBiaWppLmV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiAyMwp9"}, "40": {"version": "23", "sha256": "16g6203q6d8il018rf8zhh6gziybpczc6r5v5289kz0i343bmkfj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBseSBzaG93aW5nIG5ldHdvcmsgc3BlZWQuIExlZnQgY2xpY2sgdG8gY2hhbmdlIG1vZGVzOlxuXG4xLiBUb3RhbCBuZXQgc3BlZWQgaW4gYml0cyBwZXIgc2Vjb25kXG4yLiBUb3RhbCBuZXQgc3BlZWQgaW4gQnl0ZXMgcGVyIHNlY29uZFxuMy4gVXAgJiBkb3duIHNwZWVkIGluIGJpdHMgcGVyIHNlY29uZFxuNC4gVXAgJiBkb3duIHNwZWVkIGluIEJ5dGVzIHBlciBzZWNvbmRcbjUuIFRvdGFsIG9mIGRvd25sb2FkZWQgaW4gQnl0ZXMgKFJpZ2h0IGNsaWNrIHRvIHJlc2V0IGNvdW50ZXIpXG5cbk1pZGRsZSBjbGljayB0byBjaGFuZ2UgZm9udCBzaXplIiwKICAibmFtZSI6ICJTaW1wbGUgbmV0IHNwZWVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iaWppL3NpbXBsZW5ldHNwZWVkIiwKICAidXVpZCI6ICJzaW1wbGVuZXRzcGVlZEBiaWppLmV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiAyMwp9"}}}
+, {"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="}}}
 , {"uuid": "add-username-toppanel@brendaw.com", "name": "Add Username to Top Panel", "pname": "add-username-to-top-panel", "description": "Simply add your username to topbar panel aggregate menu", "link": "https://extensions.gnome.org/extension/1108/add-username-to-top-panel/", "shell_version_map": {"38": {"version": "3", "sha256": "0j5i5rcp2mz9s630wxcrk5pz7j052p5955y1hqnn475ywbw8fzwk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBseSBhZGQgeW91ciB1c2VybmFtZSB0byB0b3BiYXIgcGFuZWwgYWdncmVnYXRlIG1lbnUiLAogICJuYW1lIjogIkFkZCBVc2VybmFtZSB0byBUb3AgUGFuZWwiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgIndpbGxpYW1icmVuZGF3QHByb3Rvbm1haWwuY29tIgogIF0sCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xMiIsCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4yMC40IiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MC4xIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JyZW5kYXcvYWRkLXVzZXJuYW1lLXRvcHBhbmVsIiwKICAidXVpZCI6ICJhZGQtdXNlcm5hbWUtdG9wcGFuZWxAYnJlbmRhdy5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "3", "sha256": "0j5i5rcp2mz9s630wxcrk5pz7j052p5955y1hqnn475ywbw8fzwk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBseSBhZGQgeW91ciB1c2VybmFtZSB0byB0b3BiYXIgcGFuZWwgYWdncmVnYXRlIG1lbnUiLAogICJuYW1lIjogIkFkZCBVc2VybmFtZSB0byBUb3AgUGFuZWwiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgIndpbGxpYW1icmVuZGF3QHByb3Rvbm1haWwuY29tIgogIF0sCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xMiIsCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4yMC40IiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MC4xIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JyZW5kYXcvYWRkLXVzZXJuYW1lLXRvcHBhbmVsIiwKICAidXVpZCI6ICJhZGQtdXNlcm5hbWUtdG9wcGFuZWxAYnJlbmRhdy5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}}}
+, {"uuid": "Hide_Clock@grantmcwilliams.com", "name": "Hide Clock", "pname": "hide-clock", "description": "Hides the Gnome title bar clock. \nThis is useful for anyone recording their desktop as it allows you to edit the video without the titlebar clock jumping time.\nNow supports Gnome 40.", "link": "https://extensions.gnome.org/extension/1110/hide-clock/", "shell_version_map": {"38": {"version": "3", "sha256": "1niax4lw42nvp99wbxiydassgrzsx0pkkxrnbvim0n2b8bizg8rx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSBHbm9tZSB0aXRsZSBiYXIgY2xvY2suIFxuVGhpcyBpcyB1c2VmdWwgZm9yIGFueW9uZSByZWNvcmRpbmcgdGhlaXIgZGVza3RvcCBhcyBpdCBhbGxvd3MgeW91IHRvIGVkaXQgdGhlIHZpZGVvIHdpdGhvdXQgdGhlIHRpdGxlYmFyIGNsb2NrIGp1bXBpbmcgdGltZS5cbk5vdyBzdXBwb3J0cyBHbm9tZSA0MC4iLAogICJuYW1lIjogIkhpZGUgQ2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIkhpZGVfQ2xvY2tAZ3JhbnRtY3dpbGxpYW1zLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "3", "sha256": "1niax4lw42nvp99wbxiydassgrzsx0pkkxrnbvim0n2b8bizg8rx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSBHbm9tZSB0aXRsZSBiYXIgY2xvY2suIFxuVGhpcyBpcyB1c2VmdWwgZm9yIGFueW9uZSByZWNvcmRpbmcgdGhlaXIgZGVza3RvcCBhcyBpdCBhbGxvd3MgeW91IHRvIGVkaXQgdGhlIHZpZGVvIHdpdGhvdXQgdGhlIHRpdGxlYmFyIGNsb2NrIGp1bXBpbmcgdGltZS5cbk5vdyBzdXBwb3J0cyBHbm9tZSA0MC4iLAogICJuYW1lIjogIkhpZGUgQ2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIkhpZGVfQ2xvY2tAZ3JhbnRtY3dpbGxpYW1zLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"uuid": "gnome-shell-screenshot@ttll.de", "name": "Screenshot Tool", "pname": "screenshot-tool", "description": "Conveniently create, copy, store and upload screenshots", "link": "https://extensions.gnome.org/extension/1112/screenshot-tool/", "shell_version_map": {"38": {"version": "56", "sha256": "07bg3fgg9k7wqyd746w75a12vzm93dn4wr3l1czd6864f4pmalpd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnZlbmllbnRseSBjcmVhdGUsIGNvcHksIHN0b3JlIGFuZCB1cGxvYWQgc2NyZWVuc2hvdHMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1zY3JlZW5zaG90IiwKICAiZ2l0LXZlcnNpb24iOiAidjU2IiwKICAibmFtZSI6ICJTY3JlZW5zaG90IFRvb2wiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2NyZWVuc2hvdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL090dG9BbGxtZW5kaW5nZXIvZ25vbWUtc2hlbGwtc2NyZWVuc2hvdC8iLAogICJ1dWlkIjogImdub21lLXNoZWxsLXNjcmVlbnNob3RAdHRsbC5kZSIsCiAgInZlcnNpb24iOiA1Ngp9"}, "40": {"version": "58", "sha256": "0rh86n98jmma7kkbhyfvw71rk1qa85nb7nx14dsb5r15pbdx6v5r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnZlbmllbnRseSBjcmVhdGUsIGNvcHksIHN0b3JlIGFuZCB1cGxvYWQgc2NyZWVuc2hvdHMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1zY3JlZW5zaG90IiwKICAiZ2l0LXZlcnNpb24iOiAidjU4IiwKICAibmFtZSI6ICJTY3JlZW5zaG90IFRvb2wiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2NyZWVuc2hvdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9PdHRvQWxsbWVuZGluZ2VyL2dub21lLXNoZWxsLXNjcmVlbnNob3QvIiwKICAidXVpZCI6ICJnbm9tZS1zaGVsbC1zY3JlZW5zaG90QHR0bGwuZGUiLAogICJ2ZXJzaW9uIjogNTgKfQ=="}}}
 , {"uuid": "nothing-to-say@extensions.gnome.wouter.bolsterl.ee", "name": "Nothing to say", "pname": "nothing-to-say", "description": "Unmute the microphone only when you have something to say.", "link": "https://extensions.gnome.org/extension/1113/nothing-to-say/", "shell_version_map": {"38": {"version": "8", "sha256": "12ngc4dv1ijbvihqn2rjn77bal0gdhdq4cxf1zv5lr2ckz0ishm4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVubXV0ZSB0aGUgbWljcm9waG9uZSBvbmx5IHdoZW4geW91IGhhdmUgc29tZXRoaW5nIHRvIHNheS4iLAogICJuYW1lIjogIk5vdGhpbmcgdG8gc2F5IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5vdGhpbmctdG8tc2F5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vd2JvbHN0ZXIvbm90aGluZy10by1zYXkiLAogICJ1dWlkIjogIm5vdGhpbmctdG8tc2F5QGV4dGVuc2lvbnMuZ25vbWUud291dGVyLmJvbHN0ZXJsLmVlIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "40": {"version": "9", "sha256": "0advxxg1bd9b8c1pi0yf4c08xrfbavwv97sg57lgc98mg3asgzh4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVubXV0ZSB0aGUgbWljcm9waG9uZSBvbmx5IHdoZW4geW91IGhhdmUgc29tZXRoaW5nIHRvIHNheS4iLAogICJuYW1lIjogIk5vdGhpbmcgdG8gc2F5IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5vdGhpbmctdG8tc2F5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3dib2xzdGVyL25vdGhpbmctdG8tc2F5IiwKICAidXVpZCI6ICJub3RoaW5nLXRvLXNheUBleHRlbnNpb25zLmdub21lLndvdXRlci5ib2xzdGVybC5lZSIsCiAgInZlcnNpb24iOiA5Cn0="}}}
 , {"uuid": "workspace-switch-wraparound@theychx.org", "name": "Workspace Switch Wraparound", "pname": "workspace-switch-wraparound", "description": "When switching workspaces, going down from the bottom workspace switches to the top workspace. Likewise, up from the top workspace goes to the bottom workspace.", "link": "https://extensions.gnome.org/extension/1116/workspace-switch-wraparound/", "shell_version_map": {"38": {"version": "7", "sha256": "1zc92s0pffsd6mwsmpy8s8gici0q1wzd5s1vwjld4y1cy34kp2ad", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldoZW4gc3dpdGNoaW5nIHdvcmtzcGFjZXMsIGdvaW5nIGRvd24gZnJvbSB0aGUgYm90dG9tIHdvcmtzcGFjZSBzd2l0Y2hlcyB0byB0aGUgdG9wIHdvcmtzcGFjZS4gTGlrZXdpc2UsIHVwIGZyb20gdGhlIHRvcCB3b3Jrc3BhY2UgZ29lcyB0byB0aGUgYm90dG9tIHdvcmtzcGFjZS4iLAogICJuYW1lIjogIldvcmtzcGFjZSBTd2l0Y2ggV3JhcGFyb3VuZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90aGV5Y2h4L1dvcmtzcGFjZVN3aXRjaGVyV3JhcEFyb3VuZCIsCiAgInV1aWQiOiAid29ya3NwYWNlLXN3aXRjaC13cmFwYXJvdW5kQHRoZXljaHgub3JnIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "1zc92s0pffsd6mwsmpy8s8gici0q1wzd5s1vwjld4y1cy34kp2ad", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldoZW4gc3dpdGNoaW5nIHdvcmtzcGFjZXMsIGdvaW5nIGRvd24gZnJvbSB0aGUgYm90dG9tIHdvcmtzcGFjZSBzd2l0Y2hlcyB0byB0aGUgdG9wIHdvcmtzcGFjZS4gTGlrZXdpc2UsIHVwIGZyb20gdGhlIHRvcCB3b3Jrc3BhY2UgZ29lcyB0byB0aGUgYm90dG9tIHdvcmtzcGFjZS4iLAogICJuYW1lIjogIldvcmtzcGFjZSBTd2l0Y2ggV3JhcGFyb3VuZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90aGV5Y2h4L1dvcmtzcGFjZVN3aXRjaGVyV3JhcEFyb3VuZCIsCiAgInV1aWQiOiAid29ya3NwYWNlLXN3aXRjaC13cmFwYXJvdW5kQHRoZXljaHgub3JnIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"uuid": "ibus-font-setting@ibus.github.com", "name": "ibus font setting", "pname": "ibus-font-setting", "description": "use ibus font setting of ibus setup dialog to enhance the user experience", "link": "https://extensions.gnome.org/extension/1121/ibus-font-setting/", "shell_version_map": {"38": {"version": "9", "sha256": "163byvsc3dj2w9xq498py1xjziyi98icyki1cd6wv7vxaxfmk7y6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInVzZSBpYnVzIGZvbnQgc2V0dGluZyBvZiBpYnVzIHNldHVwIGRpYWxvZyB0byBlbmhhbmNlIHRoZSB1c2VyIGV4cGVyaWVuY2UiLAogICJuYW1lIjogImlidXMgZm9udCBzZXR0aW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL3B3dS5mZWRvcmFwZW9wbGUub3JnL2lidXMvaWJ1cy1mb250LXNldHRpbmciLAogICJ1dWlkIjogImlidXMtZm9udC1zZXR0aW5nQGlidXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA5Cn0="}, "40": {"version": "10", "sha256": "1bgbnpab1vw5glbv15zrbxngb60dl9bmk1y2iadxq47f0zh1fgly", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInVzZSBpYnVzIGZvbnQgc2V0dGluZyBvZiBpYnVzIHNldHVwIGRpYWxvZyB0byBlbmhhbmNlIHRoZSB1c2VyIGV4cGVyaWVuY2UiLAogICJuYW1lIjogImlidXMgZm9udCBzZXR0aW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9wd3UuZmVkb3JhcGVvcGxlLm9yZy9pYnVzL2lidXMtZm9udC1zZXR0aW5nIiwKICAidXVpZCI6ICJpYnVzLWZvbnQtc2V0dGluZ0BpYnVzLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTAKfQ=="}}}
 , {"uuid": "github.notifications@alexandre.dufournet.gmail.com", "name": "Github Notifications", "pname": "github-notifications", "description": "Integrate github's notifications within the gnome desktop environment\nSource code is available here: https://github.com/alexduf/gnome-github-notifications", "link": "https://extensions.gnome.org/extension/1125/github-notifications/", "shell_version_map": {"38": {"version": "17", "sha256": "0lj41ngk4kmkz94hn9bi51w8dbhzhxbb3kaza1h68lcvv2cis4sq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludGVncmF0ZSBnaXRodWIncyBub3RpZmljYXRpb25zIHdpdGhpbiB0aGUgZ25vbWUgZGVza3RvcCBlbnZpcm9ubWVudFxuU291cmNlIGNvZGUgaXMgYXZhaWxhYmxlIGhlcmU6IGh0dHBzOi8vZ2l0aHViLmNvbS9hbGV4ZHVmL2dub21lLWdpdGh1Yi1ub3RpZmljYXRpb25zIiwKICAibmFtZSI6ICJHaXRodWIgTm90aWZpY2F0aW9ucyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJnaXRodWIubm90aWZpY2F0aW9uc0BhbGV4YW5kcmUuZHVmb3VybmV0LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxNwp9"}}}
-, {"uuid": "desk-changer@eric.gach.gmail.com", "name": "Desk Changer", "pname": "desk-changer", "description": "Simple wallpaper changer with multiple profile support. Supports integration into the system menu or its own panel icon. The daemon is written in Python and runs independently of the extension.", "link": "https://extensions.gnome.org/extension/1131/desk-changer/", "shell_version_map": {"38": {"version": "19", "sha256": "0w62m9k585j2d3in78x4irzmi6z1zmzzm443y3nm02cah5y9yp23", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSB3YWxscGFwZXIgY2hhbmdlciB3aXRoIG11bHRpcGxlIHByb2ZpbGUgc3VwcG9ydC4gU3VwcG9ydHMgaW50ZWdyYXRpb24gaW50byB0aGUgc3lzdGVtIG1lbnUgb3IgaXRzIG93biBwYW5lbCBpY29uLiBUaGUgZGFlbW9uIGlzIHdyaXR0ZW4gaW4gUHl0aG9uIGFuZCBydW5zIGluZGVwZW5kZW50bHkgb2YgdGhlIGV4dGVuc2lvbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkZXNrLWNoYW5nZXIiLAogICJuYW1lIjogIkRlc2sgQ2hhbmdlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kZXNrLWNoYW5nZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9CaWdFL2Rlc2stY2hhbmdlci8iLAogICJ1dWlkIjogImRlc2stY2hhbmdlckBlcmljLmdhY2guZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDE5Cn0="}}}
+, {"uuid": "desk-changer@eric.gach.gmail.com", "name": "Desk Changer", "pname": "desk-changer", "description": "Simple wallpaper changer with multiple profile support. Integrates into the shell by providing it's own panel icon. The daemon is written using gjs and runs independently of the extension as a background process.", "link": "https://extensions.gnome.org/extension/1131/desk-changer/", "shell_version_map": {"38": {"version": "22", "sha256": "1da77qa05lcmn22kq055dh3k5qqav9lqh75ylkqsxvkpg5k5w8hg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSB3YWxscGFwZXIgY2hhbmdlciB3aXRoIG11bHRpcGxlIHByb2ZpbGUgc3VwcG9ydC4gSW50ZWdyYXRlcyBpbnRvIHRoZSBzaGVsbCBieSBwcm92aWRpbmcgaXQncyBvd24gcGFuZWwgaWNvbi4gVGhlIGRhZW1vbiBpcyB3cml0dGVuIHVzaW5nIGdqcyBhbmQgcnVucyBpbmRlcGVuZGVudGx5IG9mIHRoZSBleHRlbnNpb24gYXMgYSBiYWNrZ3JvdW5kIHByb2Nlc3MuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGVzay1jaGFuZ2VyIiwKICAibmFtZSI6ICJEZXNrIENoYW5nZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZGVzay1jaGFuZ2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0JpZ0UvZGVzay1jaGFuZ2VyLyIsCiAgInV1aWQiOiAiZGVzay1jaGFuZ2VyQGVyaWMuZ2FjaC5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjIKfQ=="}, "40": {"version": "22", "sha256": "1da77qa05lcmn22kq055dh3k5qqav9lqh75ylkqsxvkpg5k5w8hg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSB3YWxscGFwZXIgY2hhbmdlciB3aXRoIG11bHRpcGxlIHByb2ZpbGUgc3VwcG9ydC4gSW50ZWdyYXRlcyBpbnRvIHRoZSBzaGVsbCBieSBwcm92aWRpbmcgaXQncyBvd24gcGFuZWwgaWNvbi4gVGhlIGRhZW1vbiBpcyB3cml0dGVuIHVzaW5nIGdqcyBhbmQgcnVucyBpbmRlcGVuZGVudGx5IG9mIHRoZSBleHRlbnNpb24gYXMgYSBiYWNrZ3JvdW5kIHByb2Nlc3MuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGVzay1jaGFuZ2VyIiwKICAibmFtZSI6ICJEZXNrIENoYW5nZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZGVzay1jaGFuZ2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0JpZ0UvZGVzay1jaGFuZ2VyLyIsCiAgInV1aWQiOiAiZGVzay1jaGFuZ2VyQGVyaWMuZ2FjaC5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjIKfQ=="}}}
 , {"uuid": "Shortcuts@kyle.aims.ac.za", "name": "Shortcuts", "pname": "shortcuts", "description": "This shows a pop-up of useful keyboard shortcuts when Super + S is pressed", "link": "https://extensions.gnome.org/extension/1144/shortcuts/", "shell_version_map": {"38": {"version": "6", "sha256": "1ma022dlhhk0ia7j8b1lm52arq9zz7in4x02hdvs0k29jcl4f9dd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgc2hvd3MgYSBwb3AtdXAgb2YgdXNlZnVsIGtleWJvYXJkIHNob3J0Y3V0cyB3aGVuIFN1cGVyICsgUyBpcyBwcmVzc2VkIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiU2hvcnRjdXRzIiwKICAibmFtZSI6ICJTaG9ydGN1dHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2hvcnRjdXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vcGFkZGF0cmFwcGVyL3Nob3J0Y3V0cy1nbm9tZS1leHRlbnNpb24iLAogICJ1dWlkIjogIlNob3J0Y3V0c0BreWxlLmFpbXMuYWMuemEiLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "sensory-perception@HarlemSquirrel.github.io", "name": "Sensory Perception", "pname": "sensory-perception", "description": "Requires lm-sensors (or lm_sensors). Shows CPU temperature, disk temperature, video card temperature, voltage and fan RPM.", "link": "https://extensions.gnome.org/extension/1145/sensory-perception/", "shell_version_map": {"38": {"version": "13", "sha256": "16wc49khyk5arsis8kzpjgl6nl8gccc2y5sspq8rwnab22jnzwjh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcXVpcmVzIGxtLXNlbnNvcnMgKG9yIGxtX3NlbnNvcnMpLiBTaG93cyBDUFUgdGVtcGVyYXR1cmUsIGRpc2sgdGVtcGVyYXR1cmUsIHZpZGVvIGNhcmQgdGVtcGVyYXR1cmUsIHZvbHRhZ2UgYW5kIGZhbiBSUE0uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAic2Vuc29yeS1wZXJjZXB0aW9uIiwKICAibmFtZSI6ICJTZW5zb3J5IFBlcmNlcHRpb24iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2Vuc29yeS1wZXJjZXB0aW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vSGFybGVtU3F1aXJyZWwvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNlbnNvcnktcGVyY2VwdGlvbiIsCiAgInV1aWQiOiAic2Vuc29yeS1wZXJjZXB0aW9uQEhhcmxlbVNxdWlycmVsLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMwp9"}, "40": {"version": "14", "sha256": "1g3yvzpvvrpg90vhgqabp028mgxpsfy2xzqpbg5d4zriam94ply8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcXVpcmVzIGxtLXNlbnNvcnMgKG9yIGxtX3NlbnNvcnMpLiBTaG93cyBDUFUgdGVtcGVyYXR1cmUsIGRpc2sgdGVtcGVyYXR1cmUsIHZpZGVvIGNhcmQgdGVtcGVyYXR1cmUsIHZvbHRhZ2UgYW5kIGZhbiBSUE0uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAic2Vuc29yeS1wZXJjZXB0aW9uIiwKICAibmFtZSI6ICJTZW5zb3J5IFBlcmNlcHRpb24iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2Vuc29yeS1wZXJjZXB0aW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0hhcmxlbVNxdWlycmVsL2dub21lLXNoZWxsLWV4dGVuc2lvbi1zZW5zb3J5LXBlcmNlcHRpb24iLAogICJ1dWlkIjogInNlbnNvcnktcGVyY2VwdGlvbkBIYXJsZW1TcXVpcnJlbC5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}}}
-, {"uuid": "activityAppLauncher@rastersoft.com", "name": "Activity App Launcher", "pname": "activity-app-launcher", "description": "Integrates a category-based application launcher in the activities window. IMPORTANT: it needs the 'gnome-menus' and 'libgnome-menu-3-dev'; they must be installed in the system before installing this extension.", "link": "https://extensions.gnome.org/extension/1149/activity-app-launcher/", "shell_version_map": {"38": {"version": "23", "sha256": "01dvak9l2jay31y39kp5fgc58hjnav9rqglzl12zm6z50qgjnn4j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludGVncmF0ZXMgYSBjYXRlZ29yeS1iYXNlZCBhcHBsaWNhdGlvbiBsYXVuY2hlciBpbiB0aGUgYWN0aXZpdGllcyB3aW5kb3cuIElNUE9SVEFOVDogaXQgbmVlZHMgdGhlICdnbm9tZS1tZW51cycgYW5kICdsaWJnbm9tZS1tZW51LTMtZGV2JzsgdGhleSBtdXN0IGJlIGluc3RhbGxlZCBpbiB0aGUgc3lzdGVtIGJlZm9yZSBpbnN0YWxsaW5nIHRoaXMgZXh0ZW5zaW9uLiIsCiAgIm5hbWUiOiAiQWN0aXZpdHkgQXBwIExhdW5jaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vcmFzdGVyc29mdC9hY3Rpdml0eUFwcExhdW5jaGVyIiwKICAidXVpZCI6ICJhY3Rpdml0eUFwcExhdW5jaGVyQHJhc3RlcnNvZnQuY29tIiwKICAidmVyc2lvbiI6IDIzCn0="}}}
-, {"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=="}}}
+, {"uuid": "activityAppLauncher@rastersoft.com", "name": "Activity App Launcher", "pname": "activity-app-launcher", "description": "Integrates a category-based application launcher in the activities window. IMPORTANT: it needs the 'gnome-menus' and 'libgnome-menu-3-dev'; they must be installed in the system before installing this extension.", "link": "https://extensions.gnome.org/extension/1149/activity-app-launcher/", "shell_version_map": {"38": {"version": "31", "sha256": "18jqnk4psdvdx1hydfss1870v0gnpxkmsm5yasnb0m5m484in0qv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludGVncmF0ZXMgYSBjYXRlZ29yeS1iYXNlZCBhcHBsaWNhdGlvbiBsYXVuY2hlciBpbiB0aGUgYWN0aXZpdGllcyB3aW5kb3cuIElNUE9SVEFOVDogaXQgbmVlZHMgdGhlICdnbm9tZS1tZW51cycgYW5kICdsaWJnbm9tZS1tZW51LTMtZGV2JzsgdGhleSBtdXN0IGJlIGluc3RhbGxlZCBpbiB0aGUgc3lzdGVtIGJlZm9yZSBpbnN0YWxsaW5nIHRoaXMgZXh0ZW5zaW9uLiIsCiAgIm5hbWUiOiAiQWN0aXZpdHkgQXBwIExhdW5jaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vcmFzdGVyc29mdC9hY3Rpdml0eUFwcExhdW5jaGVyIiwKICAidXVpZCI6ICJhY3Rpdml0eUFwcExhdW5jaGVyQHJhc3RlcnNvZnQuY29tIiwKICAidmVyc2lvbiI6IDMxCn0="}, "40": {"version": "32", "sha256": "0h1pnv64jcyi0h7m8bk1rr0pfiz7pn6s08v10b2x3jmpdzahxxcy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludGVncmF0ZXMgYSBjYXRlZ29yeS1iYXNlZCBhcHBsaWNhdGlvbiBsYXVuY2hlciBpbiB0aGUgYWN0aXZpdGllcyB3aW5kb3cuIElNUE9SVEFOVDogaXQgbmVlZHMgdGhlICdnbm9tZS1tZW51cycgYW5kICdsaWJnbm9tZS1tZW51LTMtZGV2JzsgdGhleSBtdXN0IGJlIGluc3RhbGxlZCBpbiB0aGUgc3lzdGVtIGJlZm9yZSBpbnN0YWxsaW5nIHRoaXMgZXh0ZW5zaW9uLiIsCiAgIm5hbWUiOiAiQWN0aXZpdHkgQXBwIExhdW5jaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9yYXN0ZXJzb2Z0L2FjdGl2aXR5QXBwTGF1bmNoZXIiLAogICJ1dWlkIjogImFjdGl2aXR5QXBwTGF1bmNoZXJAcmFzdGVyc29mdC5jb20iLAogICJ2ZXJzaW9uIjogMzIKfQ=="}}}
+, {"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 &gt; Titlebar Buttons &gt; Minimize &amp; 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": "18qgq3v50l6md7g6q1jsd7v1irbphxwk5p9qxm1wcpyhad34dd7c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGljb24gdGFza2JhciBmb3IgdGhlIEdub21lIFNoZWxsLiBUaGlzIGV4dGVuc2lvbiBtb3ZlcyB0aGUgZGFzaCBpbnRvIHRoZSBnbm9tZSBtYWluIHBhbmVsIHNvIHRoYXQgdGhlIGFwcGxpY2F0aW9uIGxhdW5jaGVycyBhbmQgc3lzdGVtIHRyYXkgYXJlIGNvbWJpbmVkIGludG8gYSBzaW5nbGUgcGFuZWwsIHNpbWlsYXIgdG8gdGhhdCBmb3VuZCBpbiBLREUgUGxhc21hIGFuZCBXaW5kb3dzIDcrLiBBIHNlcGFyYXRlIGRvY2sgaXMgbm8gbG9uZ2VyIG5lZWRlZCBmb3IgZWFzeSBhY2Nlc3MgdG8gcnVubmluZyBhbmQgZmF2b3JpdGVkIGFwcGxpY2F0aW9ucy5cblxuRm9yIGEgbW9yZSB0cmFkaXRpb25hbCBleHBlcmllbmNlLCB5b3UgbWF5IGFsc28gd2FudCB0byB1c2UgVHdlYWsgVG9vbCB0byBlbmFibGUgV2luZG93cyAmZ3Q7IFRpdGxlYmFyIEJ1dHRvbnMgJmd0OyBNaW5pbWl6ZSAmYW1wOyBNYXhpbWl6ZS5cblxuRm9yIHRoZSBiZXN0IHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyBvbiBHaXRodWIuIERhc2gtdG8tcGFuZWwgaXMgZGV2ZWxvcGVkIGFuZCBtYWludGFpbmVkIGJ5IEBqZGVyb3NlOSBhbmQgQGNoYXJsZXNnOTkuIiwKICAiZXh0ZW5zaW9uLWlkIjogImRhc2gtdG8tcGFuZWwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkYXNoLXRvLXBhbmVsIiwKICAibmFtZSI6ICJEYXNoIHRvIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vamRlcm9zZTkvZGFzaC10by1wYW5lbCIsCiAgInV1aWQiOiAiZGFzaC10by1wYW5lbEBqZGVyb3NlOS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQyCn0="}, "40": {"version": "43", "sha256": "1h44cfb7zcpw9vsl85ry9g232vfqg7hgnrxd19w5i2wxhrw7712j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGljb24gdGFza2JhciBmb3IgdGhlIEdub21lIFNoZWxsLiBUaGlzIGV4dGVuc2lvbiBtb3ZlcyB0aGUgZGFzaCBpbnRvIHRoZSBnbm9tZSBtYWluIHBhbmVsIHNvIHRoYXQgdGhlIGFwcGxpY2F0aW9uIGxhdW5jaGVycyBhbmQgc3lzdGVtIHRyYXkgYXJlIGNvbWJpbmVkIGludG8gYSBzaW5nbGUgcGFuZWwsIHNpbWlsYXIgdG8gdGhhdCBmb3VuZCBpbiBLREUgUGxhc21hIGFuZCBXaW5kb3dzIDcrLiBBIHNlcGFyYXRlIGRvY2sgaXMgbm8gbG9uZ2VyIG5lZWRlZCBmb3IgZWFzeSBhY2Nlc3MgdG8gcnVubmluZyBhbmQgZmF2b3JpdGVkIGFwcGxpY2F0aW9ucy5cblxuRm9yIGEgbW9yZSB0cmFkaXRpb25hbCBleHBlcmllbmNlLCB5b3UgbWF5IGFsc28gd2FudCB0byB1c2UgVHdlYWsgVG9vbCB0byBlbmFibGUgV2luZG93cyAmZ3Q7IFRpdGxlYmFyIEJ1dHRvbnMgJmd0OyBNaW5pbWl6ZSAmYW1wOyBNYXhpbWl6ZS5cblxuRm9yIHRoZSBiZXN0IHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyBvbiBHaXRodWIuIERhc2gtdG8tcGFuZWwgaXMgZGV2ZWxvcGVkIGFuZCBtYWludGFpbmVkIGJ5IEBqZGVyb3NlOSBhbmQgQGNoYXJsZXNnOTkuIiwKICAiZXh0ZW5zaW9uLWlkIjogImRhc2gtdG8tcGFuZWwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkYXNoLXRvLXBhbmVsIiwKICAibmFtZSI6ICJEYXNoIHRvIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2pkZXJvc2U5L2Rhc2gtdG8tcGFuZWwiLAogICJ1dWlkIjogImRhc2gtdG8tcGFuZWxAamRlcm9zZTkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0Mwp9"}}}
 , {"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": "3", "sha256": "0b9yr3ixrlr1ngc8f68spddpk94nz367cvrklf02598jj48sgxbl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgYSBzeXN0ZW0gbWVudSBpdGVtIHRvIHJlbmV3IEtlcmJlcm9zIHRpY2tldHMiLAogICJuYW1lIjogIktlcmJlcm9zIGxvZ2luIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyLjIiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImdub21lLWtpbml0QGJvbnppbmkuZ251Lm9yZyIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"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"}}}
@@ -118,27 +130,30 @@
 , {"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": "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", "link": "https://extensions.gnome.org/extension/1218/printers/", "shell_version_map": {"38": {"version": "12", "sha256": "0b5vfw13qdvy13crikp72h1m3ypjzhpxihzlfp0rk530cp031cmz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBKb2JzIGFuZCBQcmludGVycyIsCiAgImV4dGVuc2lvbi1pZCI6ICJwcmludGVycyIsCiAgIm5hbWUiOiAiUHJpbnRlcnMiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImpvYW8uY2FsZGFzLmxvcGVzQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucHJpbnRlcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9saW51eC1tYW4vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXByaW50ZXJzIiwKICAidXVpZCI6ICJwcmludGVyc0BsaW51eC1tYW4ub3JnIiwKICAidmVyc2lvbiI6IDEyCn0="}, "40": {"version": "13", "sha256": "016mqy0pifaxz37g43pag2w62b3dyf8n0fxhf43m0p9wphxa5zwf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBKb2JzIGFuZCBQcmludGVycyIsCiAgImV4dGVuc2lvbi1pZCI6ICJwcmludGVycyIsCiAgIm5hbWUiOiAiUHJpbnRlcnMiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImpvYW8uY2FsZGFzLmxvcGVzQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucHJpbnRlcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGludXgtbWFuL2dub21lLXNoZWxsLWV4dGVuc2lvbi1wcmludGVycyIsCiAgInV1aWQiOiAicHJpbnRlcnNAbGludXgtbWFuLm9yZyIsCiAgInZlcnNpb24iOiAxMwp9"}}}
+, {"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": "21", "sha256": "1ad3nhxkc9n0b70nf0vgwgrjy2mh0ard57f53587zgsys6lbl3d8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIEdtYWlsIGFuZCBPdXRsb29rIG5vdGlmaWNhdGlvbnMgaW4gR25vbWUgTWVzc2FnZSBUcmF5IHVzaW5nIEdub21lIE9ubGluZSBBY2NvdW50c1xuIiwKICAibmFtZSI6ICJHbm9tZSBFbWFpbCBOb3RpZmljYXRpb25zIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NodW1pbmdjaC9nbm9tZS1lbWFpbC1ub3RpZmljYXRpb25zIiwKICAidXVpZCI6ICJHbWFpbE1lc3NhZ2VUcmF5QHNodW1pbmcwMjA3LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyMQp9"}}}
+, {"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"}}}
 , {"uuid": "switchWorkSpace@sun.wxg@gmail.com", "name": "Switch Workspace", "pname": "switch-workspace", "description": "Switch workspace like using ALT+TAB key to switch windows \n\n Default shortcut key to switch workspace is Ctrl+Above_Tab .", "link": "https://extensions.gnome.org/extension/1231/switch-workspace/", "shell_version_map": {"38": {"version": "30", "sha256": "1z6dafy981y2kjbnk9dncnkkpgqk45njbh3k08s3jg385qvfryvg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCB3b3Jrc3BhY2UgbGlrZSB1c2luZyBBTFQrVEFCIGtleSB0byBzd2l0Y2ggd2luZG93cyBcblxuIERlZmF1bHQgc2hvcnRjdXQga2V5IHRvIHN3aXRjaCB3b3Jrc3BhY2UgaXMgQ3RybCtBYm92ZV9UYWIgLiIsCiAgIm5hbWUiOiAiU3dpdGNoIFdvcmtzcGFjZSIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAic3VuLnd4Z0BnbWFpbC5jb20iCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3Vud3hnL2dub21lLXNoZWxsLWV4dGVuc2lvbi1zd2l0Y2h3b3Jrc3BhY2UiLAogICJ1dWlkIjogInN3aXRjaFdvcmtTcGFjZUBzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzMAp9"}, "40": {"version": "31", "sha256": "0gq3q0sh8088gp0mjp9xn8n5ff8yxbhrp3ik3dbavs12wm26qlbh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCB3b3Jrc3BhY2UgbGlrZSB1c2luZyBBTFQrVEFCIGtleSB0byBzd2l0Y2ggd2luZG93cyBcblxuIERlZmF1bHQgc2hvcnRjdXQga2V5IHRvIHN3aXRjaCB3b3Jrc3BhY2UgaXMgQ3RybCtBYm92ZV9UYWIgLiIsCiAgIm5hbWUiOiAiU3dpdGNoIFdvcmtzcGFjZSIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAic3VuLnd4Z0BnbWFpbC5jb20iCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tc3dpdGNod29ya3NwYWNlIiwKICAidXVpZCI6ICJzd2l0Y2hXb3JrU3BhY2VAc3VuLnd4Z0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzEKfQ=="}}}
+, {"uuid": "noannoyance@sindex.com", "name": "NoAnnoyance", "pname": "noannoyance", "description": "Disable the “Window is ready” notification.", "link": "https://extensions.gnome.org/extension/1236/noannoyance/", "shell_version_map": {"38": {"version": "5", "sha256": "0x7p3i9qws8pgj3y2raw2vfgjwqm6rprrn3s7lck5bjx9ydri5b6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGUgdGhlIFx1MjAxY1dpbmRvdyBpcyByZWFkeVx1MjAxZCBub3RpZmljYXRpb24uIiwKICAibmFtZSI6ICJOb0Fubm95YW5jZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zaW5kZXgvbm8tYW5ub3lhbmNlIiwKICAidXVpZCI6ICJub2Fubm95YW5jZUBzaW5kZXguY29tIiwKICAidmVyc2lvbiI6IDUKfQ=="}, "40": {"version": "5", "sha256": "0x7p3i9qws8pgj3y2raw2vfgjwqm6rprrn3s7lck5bjx9ydri5b6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGUgdGhlIFx1MjAxY1dpbmRvdyBpcyByZWFkeVx1MjAxZCBub3RpZmljYXRpb24uIiwKICAibmFtZSI6ICJOb0Fubm95YW5jZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zaW5kZXgvbm8tYW5ub3lhbmNlIiwKICAidXVpZCI6ICJub2Fubm95YW5jZUBzaW5kZXguY29tIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
 , {"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": "156", "sha256": "125jfvslb2h77b3cnnrjbj0kc0qhv07aiir9b7na5fanr4cid97c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNhY2hlLWZpbGUtZm9ybWF0LXZlcnNpb24iOiB7CiAgICAiYWxhcm1zIjogMywKICAgICJwb21vZG9ybyI6IDMsCiAgICAic3RvcHdhdGNoIjogNCwKICAgICJ0aW1lciI6IDMsCiAgICAidG9kbyI6IDEwCiAgfSwKICAiZGVzY3JpcHRpb24iOiAiQSB0b2RvLnR4dCBtYW5hZ2VyLCB0aW1lIHRyYWNrZXIsIHRpbWVyLCBzdG9wd2F0Y2gsIHBvbW9kb3JvLCBhbmQgYWxhcm0gY2xvY2siLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ0aW1lcHAiLAogICJpc3N1ZXNfdXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS96YWdvcnRlbmF5MzMzL3RpbWVwcF9fZ25vbWUvaXNzdWVzIiwKICAibmFtZSI6ICJUaW1lICsrIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImh0dHBzOi8vZ2l0aHViLmNvbS96YWdvcnRlbmF5MzMzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ0cmFuc2xhdGlvbnNfdXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS96YWdvcnRlbmF5MzMzL3RpbWVwcF9fZ25vbWUvdHJlZS9tYXN0ZXIvZGF0YS9wb19maWxlcyIsCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vemFnb3J0ZW5heTMzMy90aW1lcHBfX2dub21lIiwKICAidXVpZCI6ICJ0aW1lcHBAemFnb3J0ZW5heTMzMyIsCiAgInZlcnNpb24iOiAxNTYKfQ=="}, "40": {"version": "156", "sha256": "125jfvslb2h77b3cnnrjbj0kc0qhv07aiir9b7na5fanr4cid97c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNhY2hlLWZpbGUtZm9ybWF0LXZlcnNpb24iOiB7CiAgICAiYWxhcm1zIjogMywKICAgICJwb21vZG9ybyI6IDMsCiAgICAic3RvcHdhdGNoIjogNCwKICAgICJ0aW1lciI6IDMsCiAgICAidG9kbyI6IDEwCiAgfSwKICAiZGVzY3JpcHRpb24iOiAiQSB0b2RvLnR4dCBtYW5hZ2VyLCB0aW1lIHRyYWNrZXIsIHRpbWVyLCBzdG9wd2F0Y2gsIHBvbW9kb3JvLCBhbmQgYWxhcm0gY2xvY2siLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ0aW1lcHAiLAogICJpc3N1ZXNfdXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS96YWdvcnRlbmF5MzMzL3RpbWVwcF9fZ25vbWUvaXNzdWVzIiwKICAibmFtZSI6ICJUaW1lICsrIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImh0dHBzOi8vZ2l0aHViLmNvbS96YWdvcnRlbmF5MzMzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ0cmFuc2xhdGlvbnNfdXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS96YWdvcnRlbmF5MzMzL3RpbWVwcF9fZ25vbWUvdHJlZS9tYXN0ZXIvZGF0YS9wb19maWxlcyIsCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vemFnb3J0ZW5heTMzMy90aW1lcHBfX2dub21lIiwKICAidXVpZCI6ICJ0aW1lcHBAemFnb3J0ZW5heTMzMyIsCiAgInZlcnNpb24iOiAxNTYKfQ=="}}}
-, {"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* Optionally clean up Wallpaper directory after between 1 and 7 days (delete oldest first)\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* 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\nPlease report bugs to the GitHub page below:", "link": "https://extensions.gnome.org/extension/1262/bing-wallpaper-changer/", "shell_version_map": {"38": {"version": "32", "sha256": "0va1rykzfc1xajhd28wpqmwk4fq2jd1ddydbfvq5kf9zcbral5c3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IEdOT01FIHNoZWxsIGV4dGVuc2lvbiB0byBzZXQgeW91ciB3YWxscGFwZXIgdG8gdG9kYXkncyBNaWNyb3NvZnQgQmluZyBpbWFnZSBvZiB0aGUgZGF5ICh0aGUgaW1hZ2UgeW91IHNlZSB3aGVuIHlvdSB2aXNpdCBCaW5nLmNvbSkuXG5cbiAqRGlzY2xhaW1lcio6IHRoaXMgZXh0ZW5zaW9uIGlzIHVub2ZmaWNpYWwgYW5kIG5vdCBhZmZpbGlhdGVkIHdpdGggQmluZyBvciBNaWNyb3NvZnQgaW4gYW55IHdheS4gSW1hZ2VzIGFyZSBwcm90ZWN0ZWQgYnkgY29weXJpZ2h0IGFuZCBhcmUgbGljZW5zZWQgb25seSBmb3IgdXNlIGFzIHdhbGxwYXBlcnMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGJhc2VkIGV4dGVuc2l2ZWx5IG9uIHRoZSBOQVNBIEFQT0QgZXh0ZW5zaW9uIGJ5IEVsaW52ZW50aW9uIChodHRwczovL2dpdGh1Yi5jb20vRWxpbnZlbnRpb24pIGFuZCBpbnNwaXJlZCBieSBCaW5nIERlc2t0b3AgV2FsbHBhcGVyIENoYW5nZXIgYnkgVXRrYXJzaCBHdXB0YSAoaHR0cHM6Ly9naXRodWIuY29tL1V0a2Fyc2hHcHRhKS5cblxuRmVhdHVyZXM6XG4qIEZldGNoZXMgQmluZyB3YWxscGFwZXIgb2YgdGhlIGRheSBhbmQgc2V0cyBhcyBib3RoIGxvY2sgc2NyZWVuIGFuZCBkZXNrdG9wIHdhbGxwYXBlciAodXNlciBzZWxlY3RhYmxlIG9uIEdOT01FIHZlcnNpb25zIHRoYXQgc3VwcG9ydCBpdClcbiogT3B0aW9uYWxseSBmb3JjZSBhIHNwZWNpZmljIHJlZ2lvbiAoaS5lLiBsb2NhbGUpXG4qIFVIRCBzdXBwb3J0ZWQgcmVzb2x1dGlvbnNcbiogT3B0aW9uYWxseSBjbGVhbiB1cCBXYWxscGFwZXIgZGlyZWN0b3J5IGFmdGVyIGJldHdlZW4gMSBhbmQgNyBkYXlzIChkZWxldGUgb2xkZXN0IGZpcnN0KVxuKiBPbmx5IGF0dGVtcHRzIHRvIGRvd25sb2FkIHdhbGxwYXBlcnMgd2hlbiB0aGV5IGhhdmUgYmVlbiB1cGRhdGVkXG4qIERvZXNuJ3QgcG9sbCBjb250aW51b3VzbHkgLSBvbmx5IG9uY2UgcGVyIGRheSBhbmQgb24gc3RhcnR1cCAoc2NoZWR1bGVzIGEgcmVmcmVzaCB3aGVuIEJpbmcgaXMgZHVlIHRvIHVwZGF0ZSlcbiogRW5nbGlzaCAoZW4pLCBHZXJtYW4gKGRlKSwgRHV0Y2ggKG5sKSwgSXRhbGlhbiAoaXQpLCBQb2xpc2ggKHBsKSwgQ2hpbmVzZSAoemhfQ04pLCBGcmVuY2ggKGZyX0ZSKSwgUG9ydHVndWVzZSAocHQsIHB0X0JSKSwgUnVzc2lhbiAocnVfUlUpLCBTcGFuaXNoIChlcyksIEtvcmVhbiAoa28sIGtvX0tSLCBrb19LUCksIEluZG9uZXNpYW4gKGlkKSwgQ2F0YWxhbiAoY2EpLCBOb3J3ZWdpYW4gQm9rbVx1MDBlNWwgKG5iKSAmIE55bm9yc2sgKG5pKSwgU3dlZGlzaCAoc3YpLCBBcmFiaWMgKGFyKSwgSHVuZ2FyaWFuIChodSkgYW5kIEZpbm5pc2ggKGZpX0ZJKSAtIGEgSFVHRSB0aGFua3MgdG8gdGhlIHRyYW5zbGF0b3JzXG5cblBsZWFzZSByZXBvcnQgYnVncyB0byB0aGUgR2l0SHViIHBhZ2UgYmVsb3c6IiwKICAibmFtZSI6ICJCaW5nIFdhbGxwYXBlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iaW5nd2FsbHBhcGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL25lZmZvL2Jpbmctd2FsbHBhcGVyLWdub21lLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiQmluZ1dhbGxwYXBlckBpbmVmZmFibGUtZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDMyCn0="}, "40": {"version": "32", "sha256": "0va1rykzfc1xajhd28wpqmwk4fq2jd1ddydbfvq5kf9zcbral5c3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IEdOT01FIHNoZWxsIGV4dGVuc2lvbiB0byBzZXQgeW91ciB3YWxscGFwZXIgdG8gdG9kYXkncyBNaWNyb3NvZnQgQmluZyBpbWFnZSBvZiB0aGUgZGF5ICh0aGUgaW1hZ2UgeW91IHNlZSB3aGVuIHlvdSB2aXNpdCBCaW5nLmNvbSkuXG5cbiAqRGlzY2xhaW1lcio6IHRoaXMgZXh0ZW5zaW9uIGlzIHVub2ZmaWNpYWwgYW5kIG5vdCBhZmZpbGlhdGVkIHdpdGggQmluZyBvciBNaWNyb3NvZnQgaW4gYW55IHdheS4gSW1hZ2VzIGFyZSBwcm90ZWN0ZWQgYnkgY29weXJpZ2h0IGFuZCBhcmUgbGljZW5zZWQgb25seSBmb3IgdXNlIGFzIHdhbGxwYXBlcnMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGJhc2VkIGV4dGVuc2l2ZWx5IG9uIHRoZSBOQVNBIEFQT0QgZXh0ZW5zaW9uIGJ5IEVsaW52ZW50aW9uIChodHRwczovL2dpdGh1Yi5jb20vRWxpbnZlbnRpb24pIGFuZCBpbnNwaXJlZCBieSBCaW5nIERlc2t0b3AgV2FsbHBhcGVyIENoYW5nZXIgYnkgVXRrYXJzaCBHdXB0YSAoaHR0cHM6Ly9naXRodWIuY29tL1V0a2Fyc2hHcHRhKS5cblxuRmVhdHVyZXM6XG4qIEZldGNoZXMgQmluZyB3YWxscGFwZXIgb2YgdGhlIGRheSBhbmQgc2V0cyBhcyBib3RoIGxvY2sgc2NyZWVuIGFuZCBkZXNrdG9wIHdhbGxwYXBlciAodXNlciBzZWxlY3RhYmxlIG9uIEdOT01FIHZlcnNpb25zIHRoYXQgc3VwcG9ydCBpdClcbiogT3B0aW9uYWxseSBmb3JjZSBhIHNwZWNpZmljIHJlZ2lvbiAoaS5lLiBsb2NhbGUpXG4qIFVIRCBzdXBwb3J0ZWQgcmVzb2x1dGlvbnNcbiogT3B0aW9uYWxseSBjbGVhbiB1cCBXYWxscGFwZXIgZGlyZWN0b3J5IGFmdGVyIGJldHdlZW4gMSBhbmQgNyBkYXlzIChkZWxldGUgb2xkZXN0IGZpcnN0KVxuKiBPbmx5IGF0dGVtcHRzIHRvIGRvd25sb2FkIHdhbGxwYXBlcnMgd2hlbiB0aGV5IGhhdmUgYmVlbiB1cGRhdGVkXG4qIERvZXNuJ3QgcG9sbCBjb250aW51b3VzbHkgLSBvbmx5IG9uY2UgcGVyIGRheSBhbmQgb24gc3RhcnR1cCAoc2NoZWR1bGVzIGEgcmVmcmVzaCB3aGVuIEJpbmcgaXMgZHVlIHRvIHVwZGF0ZSlcbiogRW5nbGlzaCAoZW4pLCBHZXJtYW4gKGRlKSwgRHV0Y2ggKG5sKSwgSXRhbGlhbiAoaXQpLCBQb2xpc2ggKHBsKSwgQ2hpbmVzZSAoemhfQ04pLCBGcmVuY2ggKGZyX0ZSKSwgUG9ydHVndWVzZSAocHQsIHB0X0JSKSwgUnVzc2lhbiAocnVfUlUpLCBTcGFuaXNoIChlcyksIEtvcmVhbiAoa28sIGtvX0tSLCBrb19LUCksIEluZG9uZXNpYW4gKGlkKSwgQ2F0YWxhbiAoY2EpLCBOb3J3ZWdpYW4gQm9rbVx1MDBlNWwgKG5iKSAmIE55bm9yc2sgKG5pKSwgU3dlZGlzaCAoc3YpLCBBcmFiaWMgKGFyKSwgSHVuZ2FyaWFuIChodSkgYW5kIEZpbm5pc2ggKGZpX0ZJKSAtIGEgSFVHRSB0aGFua3MgdG8gdGhlIHRyYW5zbGF0b3JzXG5cblBsZWFzZSByZXBvcnQgYnVncyB0byB0aGUgR2l0SHViIHBhZ2UgYmVsb3c6IiwKICAibmFtZSI6ICJCaW5nIFdhbGxwYXBlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iaW5nd2FsbHBhcGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL25lZmZvL2Jpbmctd2FsbHBhcGVyLWdub21lLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiQmluZ1dhbGxwYXBlckBpbmVmZmFibGUtZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDMyCn0="}}}
+, {"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": "158", "sha256": "0cyydpidzrz4avc1i8gb5rp28pfyn5m3m1c20i11s5lb873diig7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNhY2hlLWZpbGUtZm9ybWF0LXZlcnNpb24iOiB7CiAgICAiYWxhcm1zIjogMywKICAgICJwb21vZG9ybyI6IDMsCiAgICAic3RvcHdhdGNoIjogNCwKICAgICJ0aW1lciI6IDMsCiAgICAidG9kbyI6IDEwCiAgfSwKICAiZGVzY3JpcHRpb24iOiAiQSB0b2RvLnR4dCBtYW5hZ2VyLCB0aW1lIHRyYWNrZXIsIHRpbWVyLCBzdG9wd2F0Y2gsIHBvbW9kb3JvLCBhbmQgYWxhcm0gY2xvY2siLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ0aW1lcHAiLAogICJpc3N1ZXNfdXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS96YWdvcnRlbmF5MzMzL3RpbWVwcF9fZ25vbWUvaXNzdWVzIiwKICAibmFtZSI6ICJUaW1lICsrIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImh0dHBzOi8vZ2l0aHViLmNvbS96YWdvcnRlbmF5MzMzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ0cmFuc2xhdGlvbnNfdXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS96YWdvcnRlbmF5MzMzL3RpbWVwcF9fZ25vbWUvdHJlZS9tYXN0ZXIvZGF0YS9wb19maWxlcyIsCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vemFnb3J0ZW5heTMzMy90aW1lcHBfX2dub21lIiwKICAidXVpZCI6ICJ0aW1lcHBAemFnb3J0ZW5heTMzMyIsCiAgInZlcnNpb24iOiAxNTgKfQ=="}}}
+, {"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": "22", "sha256": "1r7q5p600lqlkagz9gdxj5wi77i5066sgiwxfsj4w1ixd1g44cz5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk9uZS1DbGljayBGaWxlIFNoYXJpbmcgZm9yIHlvdXIgbmV0d29yay5cbk9ibWluIGlzIGxpZ2h0d2VpZ2h0IEhUVFAoUykgRmlsZSBTZXJ2ZXIgZm9yIEdOVS9MaW51eCBzeXN0ZW1zLlxuXG5GZWF0dXJlczpcblx1MjZhYiBFYXN5IGluc3RhbGxhdGlvbi5cblx1MjZhYiBFYXN5IHNldHVwIGp1c3QgY2hvb3NlIGZpbGUocykgbG9jYXRpb25zIGFuZCB0dW5lIE9ibWluIG9uLlxuXHUyNmFiIERvZXNuJ3QgcmVxdWlyZSBST09UIHByaXZpbGVnZXMuXG5cdTI2YWIgRG9lc24ndCByZXF1aXJlIGFueSBzcGVjaWFsIGNsaWVudCBzaWRlIGluc3RhbGxhdGlvbi5cblx1MjZhYiBIVFRQIHRyYW5zZmVyIHByb3RvY29sIGF2YWlsYWJsZSBldmVyeXdoZXJlIExpbnV4LCBPU1gsIFdpbmRvd3MsIEFuZHJvaWQsIGlPUyBzby5cblx1MjZhYiBNb3JlIC4uLlxuXG5Gb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgaG93LXRvIHNlZSBSRUFETUUubWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zLW9ibWluIiwKICAibmFtZSI6ICJPYm1pbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5vYm1pbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zMiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vb2JtaW4uZ2l0aHViLmlvIiwKICAidXVpZCI6ICJvYm1pbkBrb25rb3IiLAogICJ2ZXJzaW9uIjogMjIKfQ=="}, "40": {"version": "22", "sha256": "1r7q5p600lqlkagz9gdxj5wi77i5066sgiwxfsj4w1ixd1g44cz5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk9uZS1DbGljayBGaWxlIFNoYXJpbmcgZm9yIHlvdXIgbmV0d29yay5cbk9ibWluIGlzIGxpZ2h0d2VpZ2h0IEhUVFAoUykgRmlsZSBTZXJ2ZXIgZm9yIEdOVS9MaW51eCBzeXN0ZW1zLlxuXG5GZWF0dXJlczpcblx1MjZhYiBFYXN5IGluc3RhbGxhdGlvbi5cblx1MjZhYiBFYXN5IHNldHVwIGp1c3QgY2hvb3NlIGZpbGUocykgbG9jYXRpb25zIGFuZCB0dW5lIE9ibWluIG9uLlxuXHUyNmFiIERvZXNuJ3QgcmVxdWlyZSBST09UIHByaXZpbGVnZXMuXG5cdTI2YWIgRG9lc24ndCByZXF1aXJlIGFueSBzcGVjaWFsIGNsaWVudCBzaWRlIGluc3RhbGxhdGlvbi5cblx1MjZhYiBIVFRQIHRyYW5zZmVyIHByb3RvY29sIGF2YWlsYWJsZSBldmVyeXdoZXJlIExpbnV4LCBPU1gsIFdpbmRvd3MsIEFuZHJvaWQsIGlPUyBzby5cblx1MjZhYiBNb3JlIC4uLlxuXG5Gb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgaG93LXRvIHNlZSBSRUFETUUubWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zLW9ibWluIiwKICAibmFtZSI6ICJPYm1pbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5vYm1pbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zMiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vb2JtaW4uZ2l0aHViLmlvIiwKICAidXVpZCI6ICJvYm1pbkBrb25rb3IiLAogICJ2ZXJzaW9uIjogMjIKfQ=="}}}
+, {"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": "34", "sha256": "0vj4phjs29fn6yrpmgp0d6qcz7zpmvxc2z8l8n2vyafh4lpf1ds9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IEdOT01FIHNoZWxsIGV4dGVuc2lvbiB0byBzZXQgeW91ciB3YWxscGFwZXIgdG8gdG9kYXkncyBNaWNyb3NvZnQgQmluZyBpbWFnZSBvZiB0aGUgZGF5ICh0aGUgaW1hZ2UgeW91IHNlZSB3aGVuIHlvdSB2aXNpdCBCaW5nLmNvbSkuXG5cbiAqRGlzY2xhaW1lcio6IHRoaXMgZXh0ZW5zaW9uIGlzIHVub2ZmaWNpYWwgYW5kIG5vdCBhZmZpbGlhdGVkIHdpdGggQmluZyBvciBNaWNyb3NvZnQgaW4gYW55IHdheS4gSW1hZ2VzIGFyZSBwcm90ZWN0ZWQgYnkgY29weXJpZ2h0IGFuZCBhcmUgbGljZW5zZWQgb25seSBmb3IgdXNlIGFzIHdhbGxwYXBlcnMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGJhc2VkIGV4dGVuc2l2ZWx5IG9uIHRoZSBOQVNBIEFQT0QgZXh0ZW5zaW9uIGJ5IEVsaW52ZW50aW9uIChodHRwczovL2dpdGh1Yi5jb20vRWxpbnZlbnRpb24pIGFuZCBpbnNwaXJlZCBieSBCaW5nIERlc2t0b3AgV2FsbHBhcGVyIENoYW5nZXIgYnkgVXRrYXJzaCBHdXB0YSAoaHR0cHM6Ly9naXRodWIuY29tL1V0a2Fyc2hHcHRhKS5cblxuRmVhdHVyZXM6XG4qIEZldGNoZXMgQmluZyB3YWxscGFwZXIgb2YgdGhlIGRheSBhbmQgc2V0cyBhcyBib3RoIGxvY2sgc2NyZWVuIGFuZCBkZXNrdG9wIHdhbGxwYXBlciAodXNlciBzZWxlY3RhYmxlIG9uIEdOT01FIHZlcnNpb25zIHRoYXQgc3VwcG9ydCBpdClcbiogT3B0aW9uYWxseSBmb3JjZSBhIHNwZWNpZmljIHJlZ2lvbiAoaS5lLiBsb2NhbGUpXG4qIFVIRCBzdXBwb3J0ZWQgcmVzb2x1dGlvbnNcbiogT25seSBhdHRlbXB0cyB0byBkb3dubG9hZCB3YWxscGFwZXJzIHdoZW4gdGhleSBoYXZlIGJlZW4gdXBkYXRlZFxuKiBEb2Vzbid0IHBvbGwgY29udGludW91c2x5IC0gb25seSBvbmNlIHBlciBkYXkgYW5kIG9uIHN0YXJ0dXAgKHNjaGVkdWxlcyBhIHJlZnJlc2ggd2hlbiBCaW5nIGlzIGR1ZSB0byB1cGRhdGUpXG4gKk5FVzogcmFuZG9tIG1vZGVcbiAqTkVXOiBzZWxlY3Qgd2FsbHBhcGVyIGZyb20gcHJldmlvdXNseSBkb3dubG9hZGVkIGltYWdlc1xuKiBFbmdsaXNoIChlbiksIEdlcm1hbiAoZGUpLCBEdXRjaCAobmwpLCBJdGFsaWFuIChpdCksIFBvbGlzaCAocGwpLCBDaGluZXNlICh6aF9DTiksIEZyZW5jaCAoZnJfRlIpLCBQb3J0dWd1ZXNlIChwdCwgcHRfQlIpLCBSdXNzaWFuIChydV9SVSksIFNwYW5pc2ggKGVzKSwgS29yZWFuIChrbywga29fS1IsIGtvX0tQKSwgSW5kb25lc2lhbiAoaWQpLCBDYXRhbGFuIChjYSksIE5vcndlZ2lhbiBCb2ttXHUwMGU1bCAobmIpICYgTnlub3JzayAobmkpLCBTd2VkaXNoIChzdiksIEFyYWJpYyAoYXIpLCBIdW5nYXJpYW4gKGh1KSBhbmQgRmlubmlzaCAoZmlfRkkpIC0gYSBIVUdFIHRoYW5rcyB0byB0aGUgdHJhbnNsYXRvcnNcblxuQWx3YXlzIHJlc3RhcnQgR05PTUUgYWZ0ZXIgbWFudWFsbHkgdXBkYXRpbmcgZXh0ZW5zaW9ucy4gUGxlYXNlIHJlcG9ydCBidWdzIHRvIHRoZSBHaXRIdWIgcGFnZSBiZWxvdzoiLAogICJuYW1lIjogIkJpbmcgV2FsbHBhcGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJpbmd3YWxscGFwZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmVmZm8vYmluZy13YWxscGFwZXItZ25vbWUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJCaW5nV2FsbHBhcGVyQGluZWZmYWJsZS1nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzQKfQ=="}, "40": {"version": "34", "sha256": "0vj4phjs29fn6yrpmgp0d6qcz7zpmvxc2z8l8n2vyafh4lpf1ds9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IEdOT01FIHNoZWxsIGV4dGVuc2lvbiB0byBzZXQgeW91ciB3YWxscGFwZXIgdG8gdG9kYXkncyBNaWNyb3NvZnQgQmluZyBpbWFnZSBvZiB0aGUgZGF5ICh0aGUgaW1hZ2UgeW91IHNlZSB3aGVuIHlvdSB2aXNpdCBCaW5nLmNvbSkuXG5cbiAqRGlzY2xhaW1lcio6IHRoaXMgZXh0ZW5zaW9uIGlzIHVub2ZmaWNpYWwgYW5kIG5vdCBhZmZpbGlhdGVkIHdpdGggQmluZyBvciBNaWNyb3NvZnQgaW4gYW55IHdheS4gSW1hZ2VzIGFyZSBwcm90ZWN0ZWQgYnkgY29weXJpZ2h0IGFuZCBhcmUgbGljZW5zZWQgb25seSBmb3IgdXNlIGFzIHdhbGxwYXBlcnMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGJhc2VkIGV4dGVuc2l2ZWx5IG9uIHRoZSBOQVNBIEFQT0QgZXh0ZW5zaW9uIGJ5IEVsaW52ZW50aW9uIChodHRwczovL2dpdGh1Yi5jb20vRWxpbnZlbnRpb24pIGFuZCBpbnNwaXJlZCBieSBCaW5nIERlc2t0b3AgV2FsbHBhcGVyIENoYW5nZXIgYnkgVXRrYXJzaCBHdXB0YSAoaHR0cHM6Ly9naXRodWIuY29tL1V0a2Fyc2hHcHRhKS5cblxuRmVhdHVyZXM6XG4qIEZldGNoZXMgQmluZyB3YWxscGFwZXIgb2YgdGhlIGRheSBhbmQgc2V0cyBhcyBib3RoIGxvY2sgc2NyZWVuIGFuZCBkZXNrdG9wIHdhbGxwYXBlciAodXNlciBzZWxlY3RhYmxlIG9uIEdOT01FIHZlcnNpb25zIHRoYXQgc3VwcG9ydCBpdClcbiogT3B0aW9uYWxseSBmb3JjZSBhIHNwZWNpZmljIHJlZ2lvbiAoaS5lLiBsb2NhbGUpXG4qIFVIRCBzdXBwb3J0ZWQgcmVzb2x1dGlvbnNcbiogT25seSBhdHRlbXB0cyB0byBkb3dubG9hZCB3YWxscGFwZXJzIHdoZW4gdGhleSBoYXZlIGJlZW4gdXBkYXRlZFxuKiBEb2Vzbid0IHBvbGwgY29udGludW91c2x5IC0gb25seSBvbmNlIHBlciBkYXkgYW5kIG9uIHN0YXJ0dXAgKHNjaGVkdWxlcyBhIHJlZnJlc2ggd2hlbiBCaW5nIGlzIGR1ZSB0byB1cGRhdGUpXG4gKk5FVzogcmFuZG9tIG1vZGVcbiAqTkVXOiBzZWxlY3Qgd2FsbHBhcGVyIGZyb20gcHJldmlvdXNseSBkb3dubG9hZGVkIGltYWdlc1xuKiBFbmdsaXNoIChlbiksIEdlcm1hbiAoZGUpLCBEdXRjaCAobmwpLCBJdGFsaWFuIChpdCksIFBvbGlzaCAocGwpLCBDaGluZXNlICh6aF9DTiksIEZyZW5jaCAoZnJfRlIpLCBQb3J0dWd1ZXNlIChwdCwgcHRfQlIpLCBSdXNzaWFuIChydV9SVSksIFNwYW5pc2ggKGVzKSwgS29yZWFuIChrbywga29fS1IsIGtvX0tQKSwgSW5kb25lc2lhbiAoaWQpLCBDYXRhbGFuIChjYSksIE5vcndlZ2lhbiBCb2ttXHUwMGU1bCAobmIpICYgTnlub3JzayAobmkpLCBTd2VkaXNoIChzdiksIEFyYWJpYyAoYXIpLCBIdW5nYXJpYW4gKGh1KSBhbmQgRmlubmlzaCAoZmlfRkkpIC0gYSBIVUdFIHRoYW5rcyB0byB0aGUgdHJhbnNsYXRvcnNcblxuQWx3YXlzIHJlc3RhcnQgR05PTUUgYWZ0ZXIgbWFudWFsbHkgdXBkYXRpbmcgZXh0ZW5zaW9ucy4gUGxlYXNlIHJlcG9ydCBidWdzIHRvIHRoZSBHaXRIdWIgcGFnZSBiZWxvdzoiLAogICJuYW1lIjogIkJpbmcgV2FsbHBhcGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJpbmd3YWxscGFwZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmVmZm8vYmluZy13YWxscGFwZXItZ25vbWUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJCaW5nV2FsbHBhcGVyQGluZWZmYWJsZS1nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzQKfQ=="}}}
 , {"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": "night-light-slider.timur@linux.com", "name": "Night Light Slider", "pname": "night-light-slider", "description": "A GNOME extension to manage the built-in night light temperature", "link": "https://extensions.gnome.org/extension/1276/night-light-slider/", "shell_version_map": {"38": {"version": "19", "sha256": "01vp7p3qwr51n4xqar55ak61a84wypbrla6kkmw0wdb6a0d119mc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgZXh0ZW5zaW9uIHRvIG1hbmFnZSB0aGUgYnVpbHQtaW4gbmlnaHQgbGlnaHQgdGVtcGVyYXR1cmUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJuaWdodC1saWdodC1zbGlkZXIudGltdXJAbGludXguY29tIiwKICAiZ3Jlc291cmNlLWRhdGEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubmlnaHRsaWdodHNsaWRlci5kYXRhLmdyZXNvdXJjZSIsCiAgIm5hbWUiOiAiTmlnaHQgTGlnaHQgU2xpZGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5pZ2h0bGlnaHRzbGlkZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vY29kZWJlcmcub3JnL2tpeXVpL2dub21lLXNoZWxsLW5pZ2h0LWxpZ2h0LXNsaWRlci1leHRlbnNpb24iLAogICJ1dWlkIjogIm5pZ2h0LWxpZ2h0LXNsaWRlci50aW11ckBsaW51eC5jb20iLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "40": {"version": "22", "sha256": "127wb0mp6nwnyk68mlkawa62f0fin8fqlclrazh92j3j8gpkrkqh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgZXh0ZW5zaW9uIHRvIG1hbmFnZSB0aGUgYnVpbHQtaW4gbmlnaHQgbGlnaHQgdGVtcGVyYXR1cmUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJuaWdodC1saWdodC1zbGlkZXIudGltdXJAbGludXguY29tIiwKICAibmFtZSI6ICJOaWdodCBMaWdodCBTbGlkZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubmlnaHRsaWdodHNsaWRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9jb2RlYmVyZy5vcmcva2l5dWkvZ25vbWUtc2hlbGwtbmlnaHQtbGlnaHQtc2xpZGVyLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAibmlnaHQtbGlnaHQtc2xpZGVyLnRpbXVyQGxpbnV4LmNvbSIsCiAgInZlcnNpb24iOiAyMgp9"}}}
+, {"uuid": "night-light-slider.timur@linux.com", "name": "Night Light Slider", "pname": "night-light-slider", "description": "A GNOME extension to manage the built-in night light temperature", "link": "https://extensions.gnome.org/extension/1276/night-light-slider/", "shell_version_map": {"38": {"version": "19", "sha256": "01vp7p3qwr51n4xqar55ak61a84wypbrla6kkmw0wdb6a0d119mc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgZXh0ZW5zaW9uIHRvIG1hbmFnZSB0aGUgYnVpbHQtaW4gbmlnaHQgbGlnaHQgdGVtcGVyYXR1cmUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJuaWdodC1saWdodC1zbGlkZXIudGltdXJAbGludXguY29tIiwKICAiZ3Jlc291cmNlLWRhdGEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubmlnaHRsaWdodHNsaWRlci5kYXRhLmdyZXNvdXJjZSIsCiAgIm5hbWUiOiAiTmlnaHQgTGlnaHQgU2xpZGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5pZ2h0bGlnaHRzbGlkZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vY29kZWJlcmcub3JnL2tpeXVpL2dub21lLXNoZWxsLW5pZ2h0LWxpZ2h0LXNsaWRlci1leHRlbnNpb24iLAogICJ1dWlkIjogIm5pZ2h0LWxpZ2h0LXNsaWRlci50aW11ckBsaW51eC5jb20iLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "40": {"version": "23", "sha256": "1yqawlnpv2hql90xgkz947930bb4xdk94mrnf5rib2qyp9a83111", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgZXh0ZW5zaW9uIHRvIG1hbmFnZSB0aGUgYnVpbHQtaW4gbmlnaHQgbGlnaHQgdGVtcGVyYXR1cmUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJuaWdodC1saWdodC1zbGlkZXIudGltdXJAbGludXguY29tIiwKICAibmFtZSI6ICJOaWdodCBMaWdodCBTbGlkZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubmlnaHRsaWdodHNsaWRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9jb2RlYmVyZy5vcmcva2l5dWkvZ25vbWUtc2hlbGwtbmlnaHQtbGlnaHQtc2xpZGVyLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAibmlnaHQtbGlnaHQtc2xpZGVyLnRpbXVyQGxpbnV4LmNvbSIsCiAgInZlcnNpb24iOiAyMwp9"}}}
 , {"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": "3", "sha256": "0mgih6aq16z0q4dlbrvnlp8bamk6pmxydjnq6019agc5cjmqpr2l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIHRvcCBiYXIgY2xvY2sgZnV6enkiLAogICJuYW1lIjogIkZ1enp5IENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQ2otTWFsb25lL0Z1enp5LUNsb2NrIiwKICAidXVpZCI6ICJmdXp6eS1jbG9ja0BrZWVwYXdheWZyb21maXJlLmNvLnVrIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "40": {"version": "3", "sha256": "0mgih6aq16z0q4dlbrvnlp8bamk6pmxydjnq6019agc5cjmqpr2l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIHRvcCBiYXIgY2xvY2sgZnV6enkiLAogICJuYW1lIjogIkZ1enp5IENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQ2otTWFsb25lL0Z1enp5LUNsb2NrIiwKICAidXVpZCI6ICJmdXp6eS1jbG9ja0BrZWVwYXdheWZyb21maXJlLmNvLnVrIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
 , {"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": "13", "sha256": "0fl59kg2kc054c5lzim2wvb6d0cw4hcpgq9h8lf2p40q8smyrfmq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhvdGVsIE1hbmFnZXIgYWxsb3dzIHRvIHN0YXJ0IGFuZCBzdG9wIHRoZSBIb3RlbCBkYWVtb24gYW5kIHlvdXIgZGV2ZWxvcG1lbnQgc2VydmVycyB2aWEgYSBtZW51IGluIHRoZSBzdGF0dXMgYXJlYS4iLAogICJuYW1lIjogIkhvdGVsIE1hbmFnZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGFyZHBpeGVsL2hvdGVsLW1hbmFnZXIiLAogICJ1dWlkIjogImhvdGVsLW1hbmFnZXJAaGFyZHBpeGVsLmV1IiwKICAidmVyc2lvbiI6IDEzCn0="}, "40": {"version": "13", "sha256": "0fl59kg2kc054c5lzim2wvb6d0cw4hcpgq9h8lf2p40q8smyrfmq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhvdGVsIE1hbmFnZXIgYWxsb3dzIHRvIHN0YXJ0IGFuZCBzdG9wIHRoZSBIb3RlbCBkYWVtb24gYW5kIHlvdXIgZGV2ZWxvcG1lbnQgc2VydmVycyB2aWEgYSBtZW51IGluIHRoZSBzdGF0dXMgYXJlYS4iLAogICJuYW1lIjogIkhvdGVsIE1hbmFnZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGFyZHBpeGVsL2hvdGVsLW1hbmFnZXIiLAogICJ1dWlkIjogImhvdGVsLW1hbmFnZXJAaGFyZHBpeGVsLmV1IiwKICAidmVyc2lvbiI6IDEzCn0="}}}
-, {"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 xorg-x11-utils\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": "53", "sha256": "0vj4ca098x6ndajy8571zc8r7d6ap7wcyf4k9y1d0k4bynyy9372", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuaXRlIGlzIGEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIHdoaWNoIG1ha2VzIGEgZmV3IGxheW91dCB0d2Vha3MgdG8gdGhlIHRvcCBwYW5lbCBhbmQgcmVtb3ZlcyB3aW5kb3cgZGVjb3JhdGlvbnMgdG8gbWFrZSBpdCBsb29rIGxpa2UgVWJ1bnR1IFVuaXR5IFNoZWxsLlxuXG4tIEFkZHMgd2luZG93IGJ1dHRvbnMgdG8gdGhlIHRvcCBwYW5lbCBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFNob3dzIGN1cnJlbnQgd2luZG93IHRpdGxlIGluIHRoZSBhcHAgbWVudSBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFJlbW92ZXMgdGl0bGViYXJzIG9uIG1heGltaXplZCB3aW5kb3dzLlxuLSBIaWRlcyB3aW5kb3cgY29udHJvbHMgb24gbWF4aW1pemVkIHdpbmRvd3Mgd2l0aCBoZWFkZXJiYXJzLlxuLSBNb3ZlcyB0aGUgZGF0ZSB0byB0aGUgcmlnaHQsIHJlZHVjZXMgcGFuZWwgc3BhY2luZyBhbmQgcmVtb3ZlcyBkcm9wZG93biBhcnJvd3MuXG4tIE1vdmVzIGxlZ2FjeSB0cmF5IGljb25zIHRvIHRoZSB0b3AgcGFuZWwuXG4tIE1vdmVzIG5vdGlmaWNhdGlvbnMgdG8gdGhlIHJpZ2h0LlxuLSBIaWRlcyBhY3Rpdml0aWVzIGJ1dHRvbi5cbi0gQWRkcyBkZXNrdG9wIG5hbWUgdG8gdGhlIHRvcCBwYW5lbC5cblxuVGhpcyBleHRlbnNpb24gZGVwZW5kcyBvbiBzb21lIFhvcmcgdXRpbGl0aWVzLiBUbyBpbnN0YWxsIHRoZW06XG4tIERlYmlhbi9VYnVudHU6IGFwdCBpbnN0YWxsIHgxMS11dGlsc1xuLSBGZWRvcmEvUkhFTDogZG5mIGluc3RhbGwgeG9yZy14MTEtdXRpbHNcbi0gQXJjaDogcGFjbWFuIC1TIHhvcmcteHByb3BcblxuKlNldHRpbmdzIGFyZSBwcm92aWRlZCB0byBlbmFibGUvZGlzYWJsZSBvciBjdXN0b21pemUgdGhlIGF2YWlsYWJsZSB0d2Vha3MuXG4qIFNpbmNlIHZlcnNpb24gMiBhcHBsaWNhdGlvbnMgb24gd2F5bGFuZCB3aXRoIGNsaWVudCBzaWRlIGRlY29yYXRpb25zIGFyZSBzdXBwb3J0ZWQgdXNpbmcgQ1NTLiIsCiAgImdldHRleHQtZG9tYWluIjogInVuaXRlIiwKICAibmFtZSI6ICJVbml0ZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy51bml0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJkcGl4ZWwvdW5pdGUtc2hlbGwiLAogICJ1dWlkIjogInVuaXRlQGhhcmRwaXhlbC5ldSIsCiAgInZlcnNpb24iOiA1Mwp9"}, "40": {"version": "53", "sha256": "0vj4ca098x6ndajy8571zc8r7d6ap7wcyf4k9y1d0k4bynyy9372", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuaXRlIGlzIGEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIHdoaWNoIG1ha2VzIGEgZmV3IGxheW91dCB0d2Vha3MgdG8gdGhlIHRvcCBwYW5lbCBhbmQgcmVtb3ZlcyB3aW5kb3cgZGVjb3JhdGlvbnMgdG8gbWFrZSBpdCBsb29rIGxpa2UgVWJ1bnR1IFVuaXR5IFNoZWxsLlxuXG4tIEFkZHMgd2luZG93IGJ1dHRvbnMgdG8gdGhlIHRvcCBwYW5lbCBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFNob3dzIGN1cnJlbnQgd2luZG93IHRpdGxlIGluIHRoZSBhcHAgbWVudSBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFJlbW92ZXMgdGl0bGViYXJzIG9uIG1heGltaXplZCB3aW5kb3dzLlxuLSBIaWRlcyB3aW5kb3cgY29udHJvbHMgb24gbWF4aW1pemVkIHdpbmRvd3Mgd2l0aCBoZWFkZXJiYXJzLlxuLSBNb3ZlcyB0aGUgZGF0ZSB0byB0aGUgcmlnaHQsIHJlZHVjZXMgcGFuZWwgc3BhY2luZyBhbmQgcmVtb3ZlcyBkcm9wZG93biBhcnJvd3MuXG4tIE1vdmVzIGxlZ2FjeSB0cmF5IGljb25zIHRvIHRoZSB0b3AgcGFuZWwuXG4tIE1vdmVzIG5vdGlmaWNhdGlvbnMgdG8gdGhlIHJpZ2h0LlxuLSBIaWRlcyBhY3Rpdml0aWVzIGJ1dHRvbi5cbi0gQWRkcyBkZXNrdG9wIG5hbWUgdG8gdGhlIHRvcCBwYW5lbC5cblxuVGhpcyBleHRlbnNpb24gZGVwZW5kcyBvbiBzb21lIFhvcmcgdXRpbGl0aWVzLiBUbyBpbnN0YWxsIHRoZW06XG4tIERlYmlhbi9VYnVudHU6IGFwdCBpbnN0YWxsIHgxMS11dGlsc1xuLSBGZWRvcmEvUkhFTDogZG5mIGluc3RhbGwgeG9yZy14MTEtdXRpbHNcbi0gQXJjaDogcGFjbWFuIC1TIHhvcmcteHByb3BcblxuKlNldHRpbmdzIGFyZSBwcm92aWRlZCB0byBlbmFibGUvZGlzYWJsZSBvciBjdXN0b21pemUgdGhlIGF2YWlsYWJsZSB0d2Vha3MuXG4qIFNpbmNlIHZlcnNpb24gMiBhcHBsaWNhdGlvbnMgb24gd2F5bGFuZCB3aXRoIGNsaWVudCBzaWRlIGRlY29yYXRpb25zIGFyZSBzdXBwb3J0ZWQgdXNpbmcgQ1NTLiIsCiAgImdldHRleHQtZG9tYWluIjogInVuaXRlIiwKICAibmFtZSI6ICJVbml0ZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy51bml0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJkcGl4ZWwvdW5pdGUtc2hlbGwiLAogICJ1dWlkIjogInVuaXRlQGhhcmRwaXhlbC5ldSIsCiAgInZlcnNpb24iOiA1Mwp9"}}}
+, {"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 xorg-x11-utils\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": "54", "sha256": "1346v89d9bc3pgx7lnm0kafj7gnf92ay1zhrxjnhidi5i30b4vl6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuaXRlIGlzIGEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIHdoaWNoIG1ha2VzIGEgZmV3IGxheW91dCB0d2Vha3MgdG8gdGhlIHRvcCBwYW5lbCBhbmQgcmVtb3ZlcyB3aW5kb3cgZGVjb3JhdGlvbnMgdG8gbWFrZSBpdCBsb29rIGxpa2UgVWJ1bnR1IFVuaXR5IFNoZWxsLlxuXG4tIEFkZHMgd2luZG93IGJ1dHRvbnMgdG8gdGhlIHRvcCBwYW5lbCBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFNob3dzIGN1cnJlbnQgd2luZG93IHRpdGxlIGluIHRoZSBhcHAgbWVudSBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFJlbW92ZXMgdGl0bGViYXJzIG9uIG1heGltaXplZCB3aW5kb3dzLlxuLSBIaWRlcyB3aW5kb3cgY29udHJvbHMgb24gbWF4aW1pemVkIHdpbmRvd3Mgd2l0aCBoZWFkZXJiYXJzLlxuLSBNb3ZlcyB0aGUgZGF0ZSB0byB0aGUgcmlnaHQsIHJlZHVjZXMgcGFuZWwgc3BhY2luZyBhbmQgcmVtb3ZlcyBkcm9wZG93biBhcnJvd3MuXG4tIE1vdmVzIGxlZ2FjeSB0cmF5IGljb25zIHRvIHRoZSB0b3AgcGFuZWwuXG4tIE1vdmVzIG5vdGlmaWNhdGlvbnMgdG8gdGhlIHJpZ2h0LlxuLSBIaWRlcyBhY3Rpdml0aWVzIGJ1dHRvbi5cbi0gQWRkcyBkZXNrdG9wIG5hbWUgdG8gdGhlIHRvcCBwYW5lbC5cblxuVGhpcyBleHRlbnNpb24gZGVwZW5kcyBvbiBzb21lIFhvcmcgdXRpbGl0aWVzLiBUbyBpbnN0YWxsIHRoZW06XG4tIERlYmlhbi9VYnVudHU6IGFwdCBpbnN0YWxsIHgxMS11dGlsc1xuLSBGZWRvcmEvUkhFTDogZG5mIGluc3RhbGwgeG9yZy14MTEtdXRpbHNcbi0gQXJjaDogcGFjbWFuIC1TIHhvcmcteHByb3BcblxuKlNldHRpbmdzIGFyZSBwcm92aWRlZCB0byBlbmFibGUvZGlzYWJsZSBvciBjdXN0b21pemUgdGhlIGF2YWlsYWJsZSB0d2Vha3MuXG4qIFNpbmNlIHZlcnNpb24gMiBhcHBsaWNhdGlvbnMgb24gd2F5bGFuZCB3aXRoIGNsaWVudCBzaWRlIGRlY29yYXRpb25zIGFyZSBzdXBwb3J0ZWQgdXNpbmcgQ1NTLiIsCiAgImdldHRleHQtZG9tYWluIjogInVuaXRlIiwKICAibmFtZSI6ICJVbml0ZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy51bml0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJkcGl4ZWwvdW5pdGUtc2hlbGwiLAogICJ1dWlkIjogInVuaXRlQGhhcmRwaXhlbC5ldSIsCiAgInZlcnNpb24iOiA1NAp9"}, "40": {"version": "54", "sha256": "1346v89d9bc3pgx7lnm0kafj7gnf92ay1zhrxjnhidi5i30b4vl6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuaXRlIGlzIGEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIHdoaWNoIG1ha2VzIGEgZmV3IGxheW91dCB0d2Vha3MgdG8gdGhlIHRvcCBwYW5lbCBhbmQgcmVtb3ZlcyB3aW5kb3cgZGVjb3JhdGlvbnMgdG8gbWFrZSBpdCBsb29rIGxpa2UgVWJ1bnR1IFVuaXR5IFNoZWxsLlxuXG4tIEFkZHMgd2luZG93IGJ1dHRvbnMgdG8gdGhlIHRvcCBwYW5lbCBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFNob3dzIGN1cnJlbnQgd2luZG93IHRpdGxlIGluIHRoZSBhcHAgbWVudSBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFJlbW92ZXMgdGl0bGViYXJzIG9uIG1heGltaXplZCB3aW5kb3dzLlxuLSBIaWRlcyB3aW5kb3cgY29udHJvbHMgb24gbWF4aW1pemVkIHdpbmRvd3Mgd2l0aCBoZWFkZXJiYXJzLlxuLSBNb3ZlcyB0aGUgZGF0ZSB0byB0aGUgcmlnaHQsIHJlZHVjZXMgcGFuZWwgc3BhY2luZyBhbmQgcmVtb3ZlcyBkcm9wZG93biBhcnJvd3MuXG4tIE1vdmVzIGxlZ2FjeSB0cmF5IGljb25zIHRvIHRoZSB0b3AgcGFuZWwuXG4tIE1vdmVzIG5vdGlmaWNhdGlvbnMgdG8gdGhlIHJpZ2h0LlxuLSBIaWRlcyBhY3Rpdml0aWVzIGJ1dHRvbi5cbi0gQWRkcyBkZXNrdG9wIG5hbWUgdG8gdGhlIHRvcCBwYW5lbC5cblxuVGhpcyBleHRlbnNpb24gZGVwZW5kcyBvbiBzb21lIFhvcmcgdXRpbGl0aWVzLiBUbyBpbnN0YWxsIHRoZW06XG4tIERlYmlhbi9VYnVudHU6IGFwdCBpbnN0YWxsIHgxMS11dGlsc1xuLSBGZWRvcmEvUkhFTDogZG5mIGluc3RhbGwgeG9yZy14MTEtdXRpbHNcbi0gQXJjaDogcGFjbWFuIC1TIHhvcmcteHByb3BcblxuKlNldHRpbmdzIGFyZSBwcm92aWRlZCB0byBlbmFibGUvZGlzYWJsZSBvciBjdXN0b21pemUgdGhlIGF2YWlsYWJsZSB0d2Vha3MuXG4qIFNpbmNlIHZlcnNpb24gMiBhcHBsaWNhdGlvbnMgb24gd2F5bGFuZCB3aXRoIGNsaWVudCBzaWRlIGRlY29yYXRpb25zIGFyZSBzdXBwb3J0ZWQgdXNpbmcgQ1NTLiIsCiAgImdldHRleHQtZG9tYWluIjogInVuaXRlIiwKICAibmFtZSI6ICJVbml0ZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy51bml0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJkcGl4ZWwvdW5pdGUtc2hlbGwiLAogICJ1dWlkIjogInVuaXRlQGhhcmRwaXhlbC5ldSIsCiAgInZlcnNpb24iOiA1NAp9"}}}
 , {"uuid": "GoogleEarthWallpaper@neffo.github.com", "name": "Google Earth Wallpaper", "pname": "google-earth-wallpaper", "description": "Lightweight GNOME shell extension to set your wallpaper to a random photo from the curated Google Earth collection (1500 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) which was itself based on the NASA APOD extension by Elinvention (https://github.com/Elinvention).\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* Optional: keep images or clean up after (later is default)\n* View location on Google Maps, Bing Maps, Gnome Maps, OpenStreetMaps\n* In-extension map view\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": "12", "sha256": "0h2fdx7n2wzmcxlj96lyyvmsa3mz72dxlqy5d7zw1p2zhiyn9zjx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IEdOT01FIHNoZWxsIGV4dGVuc2lvbiB0byBzZXQgeW91ciB3YWxscGFwZXIgdG8gYSByYW5kb20gcGhvdG8gZnJvbSB0aGUgY3VyYXRlZCBHb29nbGUgRWFydGggY29sbGVjdGlvbiAoMTUwMCBwaG90b3MpLlxuXG4qRGlzY2xhaW1lcio6IHRoaXMgZXh0ZW5zaW9uIGlzIHVub2ZmaWNpYWwgYW5kIG5vdCBhZmZpbGlhdGVkIHdpdGggR29vZ2xlIGluIGFueSB3YXkuIEltYWdlcyBhcmUgcHJvdGVjdGVkIGJ5IGNvcHlyaWdodCBhbmQgYXJlIGxpY2Vuc2VkIG9ubHkgZm9yIHVzZSBhcyB3YWxscGFwZXJzLlxuXG5TZWUgYWxzbyBteSBvdGhlciBleHRlbnNpb24sIEJpbmcgV2FsbHBhcGVyIENoYW5nZXIgKGh0dHBzOi8vZ2l0aHViLmNvbS9uZWZmby9iaW5nLXdhbGxwYXBlci1nbm9tZS1leHRlbnNpb24pIHdoaWNoIHdhcyBpdHNlbGYgYmFzZWQgb24gdGhlIE5BU0EgQVBPRCBleHRlbnNpb24gYnkgRWxpbnZlbnRpb24gKGh0dHBzOi8vZ2l0aHViLmNvbS9FbGludmVudGlvbikuXG5cbkZlYXR1cmVzOlxuKiBGZXRjaGVzIGEgcmFuZG9tIEdvb2dsZSBFYXJ0aCB3YWxscGFwZXIgYW5kIHNldHMgYXMgYm90aCBsb2NrIHNjcmVlbiBhbmQgZGVza3RvcCB3YWxscGFwZXJcbiogVXNlciBzZWxlY3RhYmxlIHJlZnJlc2ggaW50ZXJ2YWxzIChkZWZhdWx0IGlzIG9uY2UgcGVyIGRheSlcbiogT3B0aW9uYWw6IGtlZXAgaW1hZ2VzIG9yIGNsZWFuIHVwIGFmdGVyIChsYXRlciBpcyBkZWZhdWx0KVxuKiBWaWV3IGxvY2F0aW9uIG9uIEdvb2dsZSBNYXBzLCBCaW5nIE1hcHMsIEdub21lIE1hcHMsIE9wZW5TdHJlZXRNYXBzXG4qIEluLWV4dGVuc2lvbiBtYXAgdmlld1xuKiAgR2VybWFuLCBEdXRjaCBhbmQgQ2hpbmVzZSB0cmFuc2xhdGlvbnNcblxuUGxlYXNlIHJlcG9ydCBhbnkgYnVncyBvciBzdWdnZXN0aW9ucyB0byBleHRlbnNpb24gR2l0SHViIHBhZ2UgYmVsb3cuIiwKICAibmFtZSI6ICJHb29nbGUgRWFydGggV2FsbHBhcGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdvb2dsZWVhcnRod2FsbHBhcGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmVmZm8vZWFydGgtdmlldy13YWxscGFwZXItZ25vbWUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJHb29nbGVFYXJ0aFdhbGxwYXBlckBuZWZmby5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEyCn0="}, "40": {"version": "12", "sha256": "0h2fdx7n2wzmcxlj96lyyvmsa3mz72dxlqy5d7zw1p2zhiyn9zjx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IEdOT01FIHNoZWxsIGV4dGVuc2lvbiB0byBzZXQgeW91ciB3YWxscGFwZXIgdG8gYSByYW5kb20gcGhvdG8gZnJvbSB0aGUgY3VyYXRlZCBHb29nbGUgRWFydGggY29sbGVjdGlvbiAoMTUwMCBwaG90b3MpLlxuXG4qRGlzY2xhaW1lcio6IHRoaXMgZXh0ZW5zaW9uIGlzIHVub2ZmaWNpYWwgYW5kIG5vdCBhZmZpbGlhdGVkIHdpdGggR29vZ2xlIGluIGFueSB3YXkuIEltYWdlcyBhcmUgcHJvdGVjdGVkIGJ5IGNvcHlyaWdodCBhbmQgYXJlIGxpY2Vuc2VkIG9ubHkgZm9yIHVzZSBhcyB3YWxscGFwZXJzLlxuXG5TZWUgYWxzbyBteSBvdGhlciBleHRlbnNpb24sIEJpbmcgV2FsbHBhcGVyIENoYW5nZXIgKGh0dHBzOi8vZ2l0aHViLmNvbS9uZWZmby9iaW5nLXdhbGxwYXBlci1nbm9tZS1leHRlbnNpb24pIHdoaWNoIHdhcyBpdHNlbGYgYmFzZWQgb24gdGhlIE5BU0EgQVBPRCBleHRlbnNpb24gYnkgRWxpbnZlbnRpb24gKGh0dHBzOi8vZ2l0aHViLmNvbS9FbGludmVudGlvbikuXG5cbkZlYXR1cmVzOlxuKiBGZXRjaGVzIGEgcmFuZG9tIEdvb2dsZSBFYXJ0aCB3YWxscGFwZXIgYW5kIHNldHMgYXMgYm90aCBsb2NrIHNjcmVlbiBhbmQgZGVza3RvcCB3YWxscGFwZXJcbiogVXNlciBzZWxlY3RhYmxlIHJlZnJlc2ggaW50ZXJ2YWxzIChkZWZhdWx0IGlzIG9uY2UgcGVyIGRheSlcbiogT3B0aW9uYWw6IGtlZXAgaW1hZ2VzIG9yIGNsZWFuIHVwIGFmdGVyIChsYXRlciBpcyBkZWZhdWx0KVxuKiBWaWV3IGxvY2F0aW9uIG9uIEdvb2dsZSBNYXBzLCBCaW5nIE1hcHMsIEdub21lIE1hcHMsIE9wZW5TdHJlZXRNYXBzXG4qIEluLWV4dGVuc2lvbiBtYXAgdmlld1xuKiAgR2VybWFuLCBEdXRjaCBhbmQgQ2hpbmVzZSB0cmFuc2xhdGlvbnNcblxuUGxlYXNlIHJlcG9ydCBhbnkgYnVncyBvciBzdWdnZXN0aW9ucyB0byBleHRlbnNpb24gR2l0SHViIHBhZ2UgYmVsb3cuIiwKICAibmFtZSI6ICJHb29nbGUgRWFydGggV2FsbHBhcGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdvb2dsZWVhcnRod2FsbHBhcGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmVmZm8vZWFydGgtdmlldy13YWxscGFwZXItZ25vbWUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJHb29nbGVFYXJ0aFdhbGxwYXBlckBuZWZmby5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEyCn0="}}}
-, {"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": "46", "sha256": "0gy27912xaiq7qzkk4zns9bjrjjwb7azn5y8wq5xkaxxrjys0i2b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdTQ29ubmVjdCBpcyBhIGNvbXBsZXRlIGltcGxlbWVudGF0aW9uIG9mIEtERSBDb25uZWN0IGVzcGVjaWFsbHkgZm9yIEdOT01FIFNoZWxsIHdpdGggTmF1dGlsdXMsIENocm9tZSBhbmQgRmlyZWZveCBpbnRlZ3JhdGlvbi4gSXQgZG9lcyBub3QgcmVseSBvbiB0aGUgS0RFIENvbm5lY3QgZGVza3RvcCBhcHBsaWNhdGlvbiBhbmQgd2lsbCBub3Qgd29yayB3aXRoIGl0IGluc3RhbGxlZC5cblxuS0RFIENvbm5lY3QgYWxsb3dzIGRldmljZXMgdG8gc2VjdXJlbHkgc2hhcmUgY29udGVudCBsaWtlIG5vdGlmaWNhdGlvbnMgb3IgZmlsZXMgYW5kIG90aGVyIGZlYXR1cmVzIGxpa2UgU01TIG1lc3NhZ2luZyBhbmQgcmVtb3RlIGNvbnRyb2wuIFRoZSBLREUgQ29ubmVjdCB0ZWFtIGhhcyBhcHBsaWNhdGlvbnMgZm9yIExpbnV4LCBCU0QsIEFuZHJvaWQsIFNhaWxmaXNoIGFuZCBXaW5kb3dzLlxuXG5QbGVhc2UgcmVwb3J0IGlzc3VlcyBvbiBHaXRodWIhIiwKICAibmFtZSI6ICJHU0Nvbm5lY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYW5keWhvbG1lcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tZ3Njb25uZWN0L3dpa2kiLAogICJ1dWlkIjogImdzY29ubmVjdEBhbmR5aG9sbWVzLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA0Ngp9"}}}
+, {"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"}}}
 , {"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": "lwsm@johannes.super-productivity.com", "name": "Window Session Manager", "pname": "window-session-manager", "description": "An indicator that let's you save and restore your open apps and the window positions and arrangements over multiple real and virtual displays. Requires lwsm and nodejs to be installed (`npm install -g linux-window-session-manager`).", "link": "https://extensions.gnome.org/extension/1323/window-session-manager/", "shell_version_map": {"38": {"version": "8", "sha256": "04vy6pyz7in248bx2micg7w0jimcqnrnkis6skacbdz9fm5nd699", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGluZGljYXRvciB0aGF0IGxldCdzIHlvdSBzYXZlIGFuZCByZXN0b3JlIHlvdXIgb3BlbiBhcHBzIGFuZCB0aGUgd2luZG93IHBvc2l0aW9ucyBhbmQgYXJyYW5nZW1lbnRzIG92ZXIgbXVsdGlwbGUgcmVhbCBhbmQgdmlydHVhbCBkaXNwbGF5cy4gUmVxdWlyZXMgbHdzbSBhbmQgbm9kZWpzIHRvIGJlIGluc3RhbGxlZCAoYG5wbSBpbnN0YWxsIC1nIGxpbnV4LXdpbmRvdy1zZXNzaW9uLW1hbmFnZXJgKS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJsd3NtIiwKICAibmFtZSI6ICJXaW5kb3cgU2Vzc2lvbiBNYW5hZ2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmx3c20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qb2hhbm5lc2pvL2dub21lLXNoZWxsLWV4dGVuc2lvbi13aW5kb3ctc2Vzc2lvbi1tYW5hZ2VyIiwKICAidXVpZCI6ICJsd3NtQGpvaGFubmVzLnN1cGVyLXByb2R1Y3Rpdml0eS5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}}}
 , {"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.\n\n(Fixed for GNOME 3.38 and above, thanks for your patience)", "link": "https://extensions.gnome.org/extension/1328/disable-workspace-switch-animation/", "shell_version_map": {"38": {"version": "4", "sha256": "0bby20crlp7jhcw90hfysc5jsl1rdfrq6byv2xb6vq8qh1hylzpr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHN3aXRjaGluZyBiZXR3ZWVuIHdvcmtzcGFjZXMgaW5zdGFudCB3aXRob3V0IGRpc2FibGluZyBvdGhlciBhbmltYXRpb25zLlxuXG4oRml4ZWQgZm9yIEdOT01FIDMuMzggYW5kIGFib3ZlLCB0aGFua3MgZm9yIHlvdXIgcGF0aWVuY2UpIiwKICAibmFtZSI6ICJEaXNhYmxlIFdvcmtzcGFjZSBTd2l0Y2ggQW5pbWF0aW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImRpc2FibGV3b3Jrc3BhY2VhbmltQG93aWxsaWFtcy5taXh4eC5vcmciLAogICJ2ZXJzaW9uIjogNAp9"}}}
 , {"uuid": "app-switcher_current_workspace_first@fawtytoo", "name": "App-Switcher Current Workspace First", "pname": "app-switcher-current-workspace-first", "description": "App-Switcher modification that sorts applications by current workspace first. It separates apps into 2 separate icons if the app also has windows on other workspaces.", "link": "https://extensions.gnome.org/extension/1329/app-switcher-current-workspace-first/", "shell_version_map": {"38": {"version": "10", "sha256": "1anzb098a42anrgxgfnqmgbn7f3v4kflkh62lq95fgga2xqz3l09", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcC1Td2l0Y2hlciBtb2RpZmljYXRpb24gdGhhdCBzb3J0cyBhcHBsaWNhdGlvbnMgYnkgY3VycmVudCB3b3Jrc3BhY2UgZmlyc3QuIEl0IHNlcGFyYXRlcyBhcHBzIGludG8gMiBzZXBhcmF0ZSBpY29ucyBpZiB0aGUgYXBwIGFsc28gaGFzIHdpbmRvd3Mgb24gb3RoZXIgd29ya3NwYWNlcy4iLAogICJuYW1lIjogIkFwcC1Td2l0Y2hlciBDdXJyZW50IFdvcmtzcGFjZSBGaXJzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiYXBwLXN3aXRjaGVyX2N1cnJlbnRfd29ya3NwYWNlX2ZpcnN0QGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDEwCn0="}, "40": {"version": "10", "sha256": "1anzb098a42anrgxgfnqmgbn7f3v4kflkh62lq95fgga2xqz3l09", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcC1Td2l0Y2hlciBtb2RpZmljYXRpb24gdGhhdCBzb3J0cyBhcHBsaWNhdGlvbnMgYnkgY3VycmVudCB3b3Jrc3BhY2UgZmlyc3QuIEl0IHNlcGFyYXRlcyBhcHBzIGludG8gMiBzZXBhcmF0ZSBpY29ucyBpZiB0aGUgYXBwIGFsc28gaGFzIHdpbmRvd3Mgb24gb3RoZXIgd29ya3NwYWNlcy4iLAogICJuYW1lIjogIkFwcC1Td2l0Y2hlciBDdXJyZW50IFdvcmtzcGFjZSBGaXJzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiYXBwLXN3aXRjaGVyX2N1cnJlbnRfd29ya3NwYWNlX2ZpcnN0QGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
 , {"uuid": "window-switcher_current_workspace_first@fawtytoo", "name": "Window-Switcher Current Workspace First", "pname": "window-switcher-current-workspace-first", "description": "Window-Switcher modification that sorts windows by current workspace first. The other windows are added according to their workspace.", "link": "https://extensions.gnome.org/extension/1330/window-switcher-current-workspace-first/", "shell_version_map": {"38": {"version": "12", "sha256": "1yvnfq52xygbsk6gz6d993p9sd44yqmw5dn582rlnfv6qmyr0r79", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldpbmRvdy1Td2l0Y2hlciBtb2RpZmljYXRpb24gdGhhdCBzb3J0cyB3aW5kb3dzIGJ5IGN1cnJlbnQgd29ya3NwYWNlIGZpcnN0LiBUaGUgb3RoZXIgd2luZG93cyBhcmUgYWRkZWQgYWNjb3JkaW5nIHRvIHRoZWlyIHdvcmtzcGFjZS4iLAogICJuYW1lIjogIldpbmRvdy1Td2l0Y2hlciBDdXJyZW50IFdvcmtzcGFjZSBGaXJzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAid2luZG93LXN3aXRjaGVyX2N1cnJlbnRfd29ya3NwYWNlX2ZpcnN0QGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDEyCn0="}, "40": {"version": "12", "sha256": "1yvnfq52xygbsk6gz6d993p9sd44yqmw5dn582rlnfv6qmyr0r79", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldpbmRvdy1Td2l0Y2hlciBtb2RpZmljYXRpb24gdGhhdCBzb3J0cyB3aW5kb3dzIGJ5IGN1cnJlbnQgd29ya3NwYWNlIGZpcnN0LiBUaGUgb3RoZXIgd2luZG93cyBhcmUgYWRkZWQgYWNjb3JkaW5nIHRvIHRoZWlyIHdvcmtzcGFjZS4iLAogICJuYW1lIjogIldpbmRvdy1Td2l0Y2hlciBDdXJyZW50IFdvcmtzcGFjZSBGaXJzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAid2luZG93LXN3aXRjaGVyX2N1cnJlbnRfd29ya3NwYWNlX2ZpcnN0QGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDEyCn0="}}}
-, {"uuid": "run-or-raise@edvard.cz", "name": "Run or raise", "pname": "run-or-raise", "description": "Launch or focus the window or define custom shortcuts in a text file", "link": "https://extensions.gnome.org/extension/1336/run-or-raise/", "shell_version_map": {"38": {"version": "11", "sha256": "1vp3riz1fdg31l3dj7yjv7c76g0dkrhl8q738qsxkcvqvgjinc8g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxhdW5jaCBvciBmb2N1cyB0aGUgd2luZG93IG9yIGRlZmluZSBjdXN0b20gc2hvcnRjdXRzIGluIGEgdGV4dCBmaWxlIiwKICAibmFtZSI6ICJSdW4gb3IgcmFpc2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucnVuLW9yLXJhaXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMyIiwKICAgICIzLjMyLjEiLAogICAgIjMuMzYiLAogICAgIjMuMzguMSIsCiAgICAiNDAuMSIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9DWi1OSUMvcnVuLW9yLXJhaXNlIiwKICAidXVpZCI6ICJydW4tb3ItcmFpc2VAZWR2YXJkLmN6IiwKICAidmVyc2lvbiI6IDExCn0="}, "40": {"version": "11", "sha256": "1vp3riz1fdg31l3dj7yjv7c76g0dkrhl8q738qsxkcvqvgjinc8g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxhdW5jaCBvciBmb2N1cyB0aGUgd2luZG93IG9yIGRlZmluZSBjdXN0b20gc2hvcnRjdXRzIGluIGEgdGV4dCBmaWxlIiwKICAibmFtZSI6ICJSdW4gb3IgcmFpc2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucnVuLW9yLXJhaXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMyIiwKICAgICIzLjMyLjEiLAogICAgIjMuMzYiLAogICAgIjMuMzguMSIsCiAgICAiNDAuMSIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9DWi1OSUMvcnVuLW9yLXJhaXNlIiwKICAidXVpZCI6ICJydW4tb3ItcmFpc2VAZWR2YXJkLmN6IiwKICAidmVyc2lvbiI6IDExCn0="}}}
+, {"uuid": "run-or-raise@edvard.cz", "name": "Run or raise", "pname": "run-or-raise", "description": "Launch or focus the window or define custom shortcuts in a text file", "link": "https://extensions.gnome.org/extension/1336/run-or-raise/", "shell_version_map": {"38": {"version": "12", "sha256": "07pn5ak471n9jqf8c8nflimmyb90d3brma3nd1958hpx5rz9rx46", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxhdW5jaCBvciBmb2N1cyB0aGUgd2luZG93IG9yIGRlZmluZSBjdXN0b20gc2hvcnRjdXRzIGluIGEgdGV4dCBmaWxlIiwKICAibmFtZSI6ICJSdW4gb3IgcmFpc2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucnVuLW9yLXJhaXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMyIiwKICAgICIzLjMyLjEiLAogICAgIjMuMzYiLAogICAgIjMuMzguMSIsCiAgICAiNDAuMSIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9DWi1OSUMvcnVuLW9yLXJhaXNlIiwKICAidXVpZCI6ICJydW4tb3ItcmFpc2VAZWR2YXJkLmN6IiwKICAidmVyc2lvbiI6IDEyCn0="}, "40": {"version": "12", "sha256": "07pn5ak471n9jqf8c8nflimmyb90d3brma3nd1958hpx5rz9rx46", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxhdW5jaCBvciBmb2N1cyB0aGUgd2luZG93IG9yIGRlZmluZSBjdXN0b20gc2hvcnRjdXRzIGluIGEgdGV4dCBmaWxlIiwKICAibmFtZSI6ICJSdW4gb3IgcmFpc2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucnVuLW9yLXJhaXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMyIiwKICAgICIzLjMyLjEiLAogICAgIjMuMzYiLAogICAgIjMuMzguMSIsCiAgICAiNDAuMSIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9DWi1OSUMvcnVuLW9yLXJhaXNlIiwKICAidXVpZCI6ICJydW4tb3ItcmFpc2VAZWR2YXJkLmN6IiwKICAidmVyc2lvbiI6IDEyCn0="}}}
 , {"uuid": "show_applications_instead_of_overview@fawtytoo", "name": "Show Applications Instead Of Workspaces", "pname": "show-applications-instead-of-overview", "description": "The Overview will show Applications instead of Workspaces when invoked.", "link": "https://extensions.gnome.org/extension/1337/show-applications-instead-of-overview/", "shell_version_map": {"38": {"version": "6", "sha256": "1ap6aawz173r04x43h0vb4sycid9jc17amq8bbhs7dbsrk6x3wzz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBPdmVydmlldyB3aWxsIHNob3cgQXBwbGljYXRpb25zIGluc3RlYWQgb2YgV29ya3NwYWNlcyB3aGVuIGludm9rZWQuIiwKICAibmFtZSI6ICJTaG93IEFwcGxpY2F0aW9ucyBJbnN0ZWFkIE9mIFdvcmtzcGFjZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInNob3dfYXBwbGljYXRpb25zX2luc3RlYWRfb2Zfb3ZlcnZpZXdAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "6", "sha256": "1ap6aawz173r04x43h0vb4sycid9jc17amq8bbhs7dbsrk6x3wzz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBPdmVydmlldyB3aWxsIHNob3cgQXBwbGljYXRpb25zIGluc3RlYWQgb2YgV29ya3NwYWNlcyB3aGVuIGludm9rZWQuIiwKICAibmFtZSI6ICJTaG93IEFwcGxpY2F0aW9ucyBJbnN0ZWFkIE9mIFdvcmtzcGFjZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInNob3dfYXBwbGljYXRpb25zX2luc3RlYWRfb2Zfb3ZlcnZpZXdAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "hplip-menu@grizzlysmit.smit.id.au", "name": "Alternate Menu for Hplip", "pname": "hplip-menu", "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.", "link": "https://extensions.gnome.org/extension/1339/hplip-menu/", "shell_version_map": {"38": {"version": "11", "sha256": "1754xb6mn0jbkizm79kyjwbhyf1yld0jw8blddia9fn4s223j2rs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNvbnRyb2wgeW91ciBocCBwcmludGVycyBieSBjYWxsaW5nIHRoZSBkZXZpY2UgbWFuYWdlciBocC10b29sYm94LCBhbHNvIHNvbWUgdXNlZnVsIGxpbmtzXG5Nb3RpdmF0aW9uOiB0aGUgaHAtc3lzdHJheSBkb2Vzbid0IHdvcmsgcmVsaWFibHkgdW5kZXIgZ25vbWUgc2hlbGxcbnlvdSBuZWVkIHRvIGhhdmUgaW5zdGFsbGVkIGhwbGlwIGluIG9yZGVyIHRvIHVzZSB0aGlzXG5DaG9pY2Ugb2YgdXNpbmcgYSBwcmludGVyIGljb24gb3IgYSBocF9sb2dvLnBuZyBpZiBpdCdzIGluc3RhbGxlZCBpbiB0aGUgc2FtZSBwbGFjZSBhcyBtaW5lIG9uIFVidW50dVxueW91IGNvdWxkIHVzZSBzeW1ib2xpYyBsaW5rcyB0byBmYWtlIHRoZSBwYXRoLiIsCiAgIm5hbWUiOiAiQWx0ZXJuYXRlIE1lbnUgZm9yIEhwbGlwIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmhwbGlwLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzguMSIsCiAgICAiMy4zOC4yIiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImhwbGlwLW1lbnVAZ3JpenpseXNtaXQuc21pdC5pZC5hdSIsCiAgInZlcnNpb24iOiAxMQp9"}, "40": {"version": "11", "sha256": "1754xb6mn0jbkizm79kyjwbhyf1yld0jw8blddia9fn4s223j2rs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNvbnRyb2wgeW91ciBocCBwcmludGVycyBieSBjYWxsaW5nIHRoZSBkZXZpY2UgbWFuYWdlciBocC10b29sYm94LCBhbHNvIHNvbWUgdXNlZnVsIGxpbmtzXG5Nb3RpdmF0aW9uOiB0aGUgaHAtc3lzdHJheSBkb2Vzbid0IHdvcmsgcmVsaWFibHkgdW5kZXIgZ25vbWUgc2hlbGxcbnlvdSBuZWVkIHRvIGhhdmUgaW5zdGFsbGVkIGhwbGlwIGluIG9yZGVyIHRvIHVzZSB0aGlzXG5DaG9pY2Ugb2YgdXNpbmcgYSBwcmludGVyIGljb24gb3IgYSBocF9sb2dvLnBuZyBpZiBpdCdzIGluc3RhbGxlZCBpbiB0aGUgc2FtZSBwbGFjZSBhcyBtaW5lIG9uIFVidW50dVxueW91IGNvdWxkIHVzZSBzeW1ib2xpYyBsaW5rcyB0byBmYWtlIHRoZSBwYXRoLiIsCiAgIm5hbWUiOiAiQWx0ZXJuYXRlIE1lbnUgZm9yIEhwbGlwIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmhwbGlwLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzguMSIsCiAgICAiMy4zOC4yIiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImhwbGlwLW1lbnVAZ3JpenpseXNtaXQuc21pdC5pZC5hdSIsCiAgInZlcnNpb24iOiAxMQp9"}}}
 , {"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": "20", "sha256": "0arpk1rnjvc38xy8q3nsaxr0x691gznbqdd4mx3jzdd300j17q24", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN0aWNreSBub3RlcyBmb3IgdGhlIEdOT01FIFNoZWxsIGRlc2t0b3AuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibm90ZXMtZXh0ZW5zaW9uIiwKICAibmFtZSI6ICJOb3RlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ub3Rlcy1leHRlbnNpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tYW9zY2hhbnovbm90ZXMtZXh0ZW5zaW9uLWdub21lIiwKICAidXVpZCI6ICJub3Rlc0BtYWVzdHJvc2NoYW4uZnIiLAogICJ2ZXJzaW9uIjogMjAKfQ=="}}}
@@ -146,10 +161,11 @@
 , {"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": "18", "sha256": "0fnibrxsy4as3w46vnj0jk6h0ymgn8k06j3m9jq7ygp5kf45fgsw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZnVsbCBmZWF0dXJlZCBNUFJJUyBpbmRpY2F0b3IuIiwKICAibmFtZSI6ICJNcHJpcyBJbmRpY2F0b3IgQnV0dG9uIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIkphc29uTEcxOTc5QGdpdGh1Yi5pbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9KYXNvbkxHMTk3OS9nbm9tZS1zaGVsbC1leHRlbnNpb24tbXByaXMtaW5kaWNhdG9yLWJ1dHRvbi8iLAogICJ1dWlkIjogIm1wcmlzaW5kaWNhdG9yYnV0dG9uQEphc29uTEcxOTc5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxOAp9"}, "40": {"version": "18", "sha256": "0fnibrxsy4as3w46vnj0jk6h0ymgn8k06j3m9jq7ygp5kf45fgsw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZnVsbCBmZWF0dXJlZCBNUFJJUyBpbmRpY2F0b3IuIiwKICAibmFtZSI6ICJNcHJpcyBJbmRpY2F0b3IgQnV0dG9uIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIkphc29uTEcxOTc5QGdpdGh1Yi5pbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9KYXNvbkxHMTk3OS9nbm9tZS1zaGVsbC1leHRlbnNpb24tbXByaXMtaW5kaWNhdG9yLWJ1dHRvbi8iLAogICJ1dWlkIjogIm1wcmlzaW5kaWNhdG9yYnV0dG9uQEphc29uTEcxOTc5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxOAp9"}}}
 , {"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\n(The DashToPanel extension might stop LyricsFinder to work properly. If you have any problem with extension not being shown, disable DashToPanel first.)", "link": "https://extensions.gnome.org/extension/1383/lyrics-finder/", "shell_version_map": {"40": {"version": "14", "sha256": "0nyc137pqg3mj6vb6nm12jba07hl0z733qpzlp72xkz9hcbrr5aw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZpbmRpbmcgbHlyaWNzIGhhcyBuZXZlciBiZWVuIGVhc2llclxuSnVzdCBwbGF5IHNvbWUgbXVzaWMhXG5cbklmIHlvdSB3YW50IHRvIHJlcG9ydCBhIGJ1ZyBwbGVhc2UgZG9uJ3QgZm9yZ2V0IHRvIG1lbnRpb246XG4tIEdub21lIHNoZWxsIHZlcnNpb25cbi0gWW91ciBMaW51eCBkaXN0cm9cbi0gRXh0ZW5zaW9uIHZlcnNpb25cbi0gRXJyb3IgbWVzc2FnZXMgKElmIHlvdSBzZWUgYW55KVxuXG4oVGhlIERhc2hUb1BhbmVsIGV4dGVuc2lvbiBtaWdodCBzdG9wIEx5cmljc0ZpbmRlciB0byB3b3JrIHByb3Blcmx5LiBJZiB5b3UgaGF2ZSBhbnkgcHJvYmxlbSB3aXRoIGV4dGVuc2lvbiBub3QgYmVpbmcgc2hvd24sIGRpc2FibGUgRGFzaFRvUGFuZWwgZmlyc3QuKSIsCiAgIm5hbWUiOiAiTHlyaWNzIEZpbmRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5seXJpY3MtZmluZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwOi8vZ2l0aHViLmNvbS9UaGVXZWlyZERldi9seXJpY3MtZmluZGVyLWdub21lLWV4dCIsCiAgInV1aWQiOiAiTHlyaWNzRmluZGVyQGFsaXJlemE2Njc3LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxNAp9"}}}
-, {"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": "9", "sha256": "0vqfzsh8ak0k8yzgcsv5g53wr3rh85acq9w8da23fablp5y160jp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdub21lIFlvdXR1YmUgRG93bmxvYWRlclxuXG4gU2ltcGxlIGhlbHBlciBmb3IgeW91dHViZS1kbCBwcm9qZWN0LiBJdCBhbGxvd3MgeW91IHRvIHNhdmUgbG9jYWxseSBkZXNpcmVkIG1lZGlhIGNvbnRlbnQgd2l0aG91dCBhbnkgYnJvd3NlciBleHRlbnNpb25zLiBKdXN0IGNvcHkgVVJMIGFkZHJlc3Mgb2YgYSBtZWRpYSBjb250ZW50IHRvIHRoZSBjbGlwYm9hcmQgYW5kIHNlbGVjdCBkZXNpcmVkIHF1YWxpdHkgcHJvZmlsZSBvciBjdXN0b20gZm9ybWF0IGZvciB0aGUgaXRlbSBpbiB0aGUgZXh0ZW5zaW9uIG1lbnUgdG8gc3RvcmUgaXQuXG4gKiBSZXF1aXJlZCB0aGUgaW5zdGFsbGF0aW9uIG9mIGZmbXBlZyAoeW91dHViZS1kbCBkZXBlbmRlbmN5IGZvciBtZWRpYSBtYW5pcHVsYXRpb24pXG5cbkZvciBtb3JlIGluZm9ybWF0aW9uIGFuZCBob3ctdG8gc2VlIFJFQURNRS5tZCIsCiAgIm5hbWUiOiAieW91MmJlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcua29ua29yLnlvdTJiZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzIiLAogICAgIjQwLjAiLAogICAgIjQwLmJldGEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rb25rb3IveW91MmJlciIsCiAgInV1aWQiOiAieW91MmJlckBrb25rb3IiLAogICJ2ZXJzaW9uIjogOQp9"}}}
-, {"uuid": "files-view@argonauta.framagit.org", "name": "Files View", "pname": "files-view", "description": "A files view for GNOME Shell.\n\nThis extension displays a “Files” view similar to the Applications view, with the conveniences of a file manager. It is accessed through the combination SUPER + F.\n\nGNOME Shell 40 and later are not supported. No further developments planned.", "link": "https://extensions.gnome.org/extension/1395/files-view/", "shell_version_map": {"38": {"version": "11", "sha256": "1b63c4391jqhh6zcmd0la5mhmgx37f0ydq7mk1c0bzy07gql4x68", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZmlsZXMgdmlldyBmb3IgR05PTUUgU2hlbGwuXG5cblRoaXMgZXh0ZW5zaW9uIGRpc3BsYXlzIGEgXHUyMDFjRmlsZXNcdTIwMWQgdmlldyBzaW1pbGFyIHRvIHRoZSBBcHBsaWNhdGlvbnMgdmlldywgd2l0aCB0aGUgY29udmVuaWVuY2VzIG9mIGEgZmlsZSBtYW5hZ2VyLiBJdCBpcyBhY2Nlc3NlZCB0aHJvdWdoIHRoZSBjb21iaW5hdGlvbiBTVVBFUiArIEYuXG5cbkdOT01FIFNoZWxsIDQwIGFuZCBsYXRlciBhcmUgbm90IHN1cHBvcnRlZC4gTm8gZnVydGhlciBkZXZlbG9wbWVudHMgcGxhbm5lZC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmaWxlcy12aWV3IiwKICAibmFtZSI6ICJGaWxlcyBWaWV3IiwKICAicmVjZW50bHktb3Blbi1wZXJzaXN0ZW50LWZpbGVuYW1lIjogInJlY2VudGx5LW9wZW4tZm9sZGVycy1maWxlcy12aWV3LWdub21lLXNoZWxsLWV4dGVuc2lvbi5qc29uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZpbGVzLXZpZXciLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZnJhbWFnaXQub3JnL2FiYWtray9BcmdvbmF1dGEiLAogICJ1dWlkIjogImZpbGVzLXZpZXdAYXJnb25hdXRhLmZyYW1hZ2l0Lm9yZyIsCiAgInZlcnNpb24iOiAxMQp9"}}}
-, {"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": "0068kd11bbdqq79hh50dri7qj3x6sgyf46dfml8kmgzw8w7s5h61", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHRvIGNvbm5lY3QgdG8gcGFpcmVkIGRldmljZXMgZnJvbSBnbm9tZSBjb250cm9sIHBhbmVsLlxuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3QiLAogICJuYW1lIjogIkJsdWV0b290aCBxdWljayBjb25uZWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYmphcm9zemUvZ25vbWUtYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3QiLAogICJ1dWlkIjogImJsdWV0b290aC1xdWljay1jb25uZWN0QGJqYXJvc3plLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxNgp9"}, "40": {"version": "20", "sha256": "1g0r0km1ilb4wnv91q01lyycmzqvlyng105qkrnp26k26pf0hy5c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHRvIGNvbm5lY3QgdG8gcGFpcmVkIGRldmljZXMgZnJvbSBnbm9tZSBjb250cm9sIHBhbmVsLlxuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3QiLAogICJuYW1lIjogIkJsdWV0b290aCBxdWljayBjb25uZWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4wIiwKICAgICI0MC5iZXRhIiwKICAgICI0MC5yYyIsCiAgICAiNDAuMSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JqYXJvc3plL2dub21lLWJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAidXVpZCI6ICJibHVldG9vdGgtcXVpY2stY29ubmVjdEBiamFyb3N6ZS5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjAKfQ=="}}}
+, {"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": "0068kd11bbdqq79hh50dri7qj3x6sgyf46dfml8kmgzw8w7s5h61", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHRvIGNvbm5lY3QgdG8gcGFpcmVkIGRldmljZXMgZnJvbSBnbm9tZSBjb250cm9sIHBhbmVsLlxuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3QiLAogICJuYW1lIjogIkJsdWV0b290aCBxdWljayBjb25uZWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYmphcm9zemUvZ25vbWUtYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3QiLAogICJ1dWlkIjogImJsdWV0b290aC1xdWljay1jb25uZWN0QGJqYXJvc3plLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxNgp9"}, "40": {"version": "22", "sha256": "0rq8pc2ps1rwg5l8yms3l5bk5daav1szw6g4fnp73vyfr9dzhydx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHRvIGNvbm5lY3QgdG8gcGFpcmVkIGRldmljZXMgZnJvbSBnbm9tZSBjb250cm9sIHBhbmVsLlxuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3QiLAogICJuYW1lIjogIkJsdWV0b290aCBxdWljayBjb25uZWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JqYXJvc3plL2dub21lLWJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAidXVpZCI6ICJibHVldG9vdGgtcXVpY2stY29ubmVjdEBiamFyb3N6ZS5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjIKfQ=="}}}
 , {"uuid": "syspeek-gs@gs.eros2.info", "name": "SysPeek-GS", "pname": "syspeek-gs", "description": "Simple CPU load monitor widget inspired by SysPeek indicator", "link": "https://extensions.gnome.org/extension/1409/syspeek-gs/", "shell_version_map": {"38": {"version": "7", "sha256": "04hj4mfrnviwiwsgrhnnh3sc0x9i1bvkgwnijqgwkwapy8mg3km4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vc3lzcGVlay1ncyIsCiAgInV1aWQiOiAic3lzcGVlay1nc0Bncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "04hj4mfrnviwiwsgrhnnh3sc0x9i1bvkgwnijqgwkwapy8mg3km4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vc3lzcGVlay1ncyIsCiAgInV1aWQiOiAic3lzcGVlay1nc0Bncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"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 (for laptops/tablets only)", "link": "https://extensions.gnome.org/extension/1410/discrete-brightness/", "shell_version_map": {"38": {"version": "5", "sha256": "0qiv41b4hh4n2hzhmajq6rlc9yvj095z49ngvhsqp6vfa0xzaiw6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2NyZXRlIGJyaWdodG5lc3MgaW5kaWNhdG9yIGNoYW5nZSBicmlnaHRuZXNzIGluIGRpc2NyZXRlIHN0ZXBzLCB1bmxpa2UgZGVmYXVsdCBzbW9vdGggYnJpZ2h0bmVzcyBiYXIgaW4gR25vbWUgU2hlbGwgKGZvciBsYXB0b3BzL3RhYmxldHMgb25seSkiLAogICJuYW1lIjogIkRpc2NyZXRlIGJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ldWdlbmUtcm9tL2Rpc2NyZXRlLWJyaWdodG5lc3MiLAogICJ1dWlkIjogImRpc2NyZXRlLWJyaWdodG5lc3NAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiA1Cn0="}, "40": {"version": "5", "sha256": "0qiv41b4hh4n2hzhmajq6rlc9yvj095z49ngvhsqp6vfa0xzaiw6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2NyZXRlIGJyaWdodG5lc3MgaW5kaWNhdG9yIGNoYW5nZSBicmlnaHRuZXNzIGluIGRpc2NyZXRlIHN0ZXBzLCB1bmxpa2UgZGVmYXVsdCBzbW9vdGggYnJpZ2h0bmVzcyBiYXIgaW4gR25vbWUgU2hlbGwgKGZvciBsYXB0b3BzL3RhYmxldHMgb25seSkiLAogICJuYW1lIjogIkRpc2NyZXRlIGJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ldWdlbmUtcm9tL2Rpc2NyZXRlLWJyaWdodG5lc3MiLAogICJ1dWlkIjogImRpc2NyZXRlLWJyaWdodG5lc3NAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"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": "4", "sha256": "0s1338hv9vhip4cpv2b7srp5c9fsv1rbxk95lrj6m5jzs2qb7mym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRyb3AtZG93biBtb2RlIGZvciBhbnkgYXBwbGljYXRpb24iLAogICJuYW1lIjogInF1YWtlLW1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmVwc2FjLWJ5L2dub21lLXNoZWxsLWV4dGVuc2lvbi1xdWFrZS1tb2RlIiwKICAidXVpZCI6ICJxdWFrZS1tb2RlQHJlcHNhYy1ieS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
@@ -157,60 +173,65 @@
 , {"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": "7", "sha256": "0vpsnysdb4wqjd6hb9vprz141293ra3pb8q0cnysnbyh9sh0mhjc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZXVnZW5lLXJvbS92Ym94LWFwcGxldCIsCiAgInV1aWQiOiAidmJveC1hcHBsZXRAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiA3Cn0="}, "40": {"version": "7", "sha256": "0vpsnysdb4wqjd6hb9vprz141293ra3pb8q0cnysnbyh9sh0mhjc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZXVnZW5lLXJvbS92Ym94LWFwcGxldCIsCiAgInV1aWQiOiAidmJveC1hcHBsZXRAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiA3Cn0="}}}
 , {"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": "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": "10", "sha256": "06y036j49arkha0zjvgg2mcxgpvgpp9gzvjni09rdpvw3hpi75lc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaGVzIGt1YmUgY29uZmlnIGNvbnRleHQiLAogICJuYW1lIjogIkt1YmUgQ29uZmlnIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmt1YmUtY29uZmlnIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdnZib2dkYW5vdjg3L2dub21lLXNoZWxsLWV4dGVuc2lvbi1rdWJlY29uZmlnIiwKICAidXVpZCI6ICJrdWJlX2NvbmZpZ0B2dmJvZ2Rhbm92ODcuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
-, {"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": "7", "sha256": "0gjmbzc9vfbgdvgf2ghhnbla3arfgnfc44w6cczr26n7svhaqinv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHRoZSB3aW5kb3cgc2VtaS10cmFuc3BhcmVudCB3aGVuIG1vdmluZyBvciByZXNpemluZyIsCiAgImV4dGVuc2lvbi1pZCI6ICJ0cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiVHJhbnNwYXJlbnQgV2luZG93IE1vdmluZyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL05vb2JzYWkvdHJhbnNwYXJlbnQtd2luZG93LW1vdmluZyIsCiAgInV1aWQiOiAidHJhbnNwYXJlbnQtd2luZG93LW1vdmluZ0Bub29ic2FpLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}}}
-, {"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": "4", "sha256": "1x9k317d54cc6cqfi43acsb97xi0ah06h6iivhj04yzxmwmb012r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB0aGUgb3BhY2l0eSBvZiB3aW5kb3dzIGJ5IGNvbXBpei1zdHlsZSBzaG9ydGN1dCBBbHQrc2Nyb2xsLlxuWW91IGNhbiBjdXN0b21pemUgaG90a2V5IGluIFByZWZlcmVuY2UgcGFnZSBpZiBBbHQga2V5IGRvZXNuJ3Qgd29yay4iLAogICJuYW1lIjogIlRyYW5zcGFyZW50IFdpbmRvdyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5UcmFuc3BhcmVudFdpbmRvdyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOC4xIiwKICAgICIzLjM2LjEiLAogICAgIjMuMzguMSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3BieHFkb3duL2dub21lLXNoZWxsLWV4dGVuc2lvbi10cmFuc3BhcmVudC13aW5kb3ciLAogICJ1dWlkIjogInRyYW5zcGFyZW50LXdpbmRvd0BwYnhxZG93bi5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
-, {"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": "39", "sha256": "1wqsw7sy0xww6z1wkkmwpcfvb54kajanp6p50a3fv5gb8yvmhigl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ2xpbXBzZSBpbnRvIHlvdXIgY29tcHV0ZXIncyB0ZW1wZXJhdHVyZSwgdm9sdGFnZSwgZmFuIHNwZWVkLCBtZW1vcnkgdXNhZ2UsIHByb2Nlc3NvciBsb2FkLCBzeXN0ZW0gcmVzb3VyY2VzLCBuZXR3b3JrIHNwZWVkIGFuZCBzdG9yYWdlIHN0YXRzLiBUaGlzIGlzIGEgb25lIHN0b3Agc2hvcCB0byBtb25pdG9yIGFsbCBvZiB5b3VyIHZpdGFsIHNlbnNvcnMuIFVzZXMgYXN5bmNocm9ub3VzIHBvbGxpbmcgdG8gcHJvdmlkZSBhIHNtb290aCB1c2VyIGV4cGVyaWVuY2UuIEZlYXR1cmUgcmVxdWVzdHMgb3IgYnVncz8gUGxlYXNlIHVzZSBHaXRIdWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidml0YWxzIiwKICAibmFtZSI6ICJWaXRhbHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudml0YWxzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY29yZWNvZGluZy9WaXRhbHMiLAogICJ1dWlkIjogIlZpdGFsc0BDb3JlQ29kaW5nLmNvbSIsCiAgInZlcnNpb24iOiAzOQp9"}, "40": {"version": "40", "sha256": "01vpagmwx9vgdd32nm1zf4zkddjm7rrl552w3c5pjcwdvs2yv3nk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ2xpbXBzZSBpbnRvIHlvdXIgY29tcHV0ZXIncyB0ZW1wZXJhdHVyZSwgdm9sdGFnZSwgZmFuIHNwZWVkLCBtZW1vcnkgdXNhZ2UsIHByb2Nlc3NvciBsb2FkLCBzeXN0ZW0gcmVzb3VyY2VzLCBuZXR3b3JrIHNwZWVkIGFuZCBzdG9yYWdlIHN0YXRzLiBUaGlzIGlzIGEgb25lIHN0b3Agc2hvcCB0byBtb25pdG9yIGFsbCBvZiB5b3VyIHZpdGFsIHNlbnNvcnMuIFVzZXMgYXN5bmNocm9ub3VzIHBvbGxpbmcgdG8gcHJvdmlkZSBhIHNtb290aCB1c2VyIGV4cGVyaWVuY2UuIEZlYXR1cmUgcmVxdWVzdHMgb3IgYnVncz8gUGxlYXNlIHVzZSBHaXRIdWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidml0YWxzIiwKICAibmFtZSI6ICJWaXRhbHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudml0YWxzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NvcmVjb2RpbmcvVml0YWxzIiwKICAidXVpZCI6ICJWaXRhbHNAQ29yZUNvZGluZy5jb20iLAogICJ2ZXJzaW9uIjogNDAKfQ=="}}}
+, {"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": "11", "sha256": "0ag9cq2cgxv9h8ic8dgdxm9n93ls47q9n1kzkh8k0g8brsi9nbk0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaGVzIGt1YmUgY29uZmlnIGNvbnRleHQiLAogICJuYW1lIjogIkt1YmUgQ29uZmlnIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmt1YmUtY29uZmlnIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3Z2Ym9nZGFub3Y4Ny9nbm9tZS1zaGVsbC1leHRlbnNpb24ta3ViZWNvbmZpZyIsCiAgInV1aWQiOiAia3ViZV9jb25maWdAdnZib2dkYW5vdjg3LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMQp9"}}}
+, {"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": "8", "sha256": "11f1663is2hamja5xg6sgrn2rpb3s96mqwq6alvn2swbqafn0cbn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHRoZSB3aW5kb3cgc2VtaS10cmFuc3BhcmVudCB3aGVuIG1vdmluZyBvciByZXNpemluZyIsCiAgImV4dGVuc2lvbi1pZCI6ICJ0cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiVHJhbnNwYXJlbnQgV2luZG93IE1vdmluZyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL05vb2JzYWkvdHJhbnNwYXJlbnQtd2luZG93LW1vdmluZyIsCiAgInV1aWQiOiAidHJhbnNwYXJlbnQtd2luZG93LW1vdmluZ0Bub29ic2FpLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}}}
+, {"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": "Show window previews\n- Left-mouse drag: move preview window\n- Right-mouse drag (or ctrl + left mouse drag): resize preview window\n- Scroll wheel (or shift + left/right click): 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": {"40": {"version": "9", "sha256": "1287ps5da2sy7sr7n9kh56jnrfz7iilv6lq6cwfzyc2jjsx35f04", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgd2luZG93IHByZXZpZXdzXG4tIExlZnQtbW91c2UgZHJhZzogbW92ZSBwcmV2aWV3IHdpbmRvd1xuLSBSaWdodC1tb3VzZSBkcmFnIChvciBjdHJsICsgbGVmdCBtb3VzZSBkcmFnKTogcmVzaXplIHByZXZpZXcgd2luZG93XG4tIFNjcm9sbCB3aGVlbCAob3Igc2hpZnQgKyBsZWZ0L3JpZ2h0IGNsaWNrKTogY2hhbmdlIHRhcmdldCB3aW5kb3dcbi0gRG91YmxlIGNsaWNrOiByYWlzZSB0YXJnZXQgd2luZG93XG4tIFNoaWZ0ICsgRjEyOiB0b2dnbGUgcHJldmlldyB3aW5kb3cgKHRoaXMgY2FuIGJlIGNoYW5nZWQgb3IgZGlzYWJsZWQgaW4gcHJlZmVyZW5jZXMpXG4tIEN0cmwgKyBzY3JvbGwgd2hlZWw6IGFkanVzdCBvcGFjaXR5IiwKICAiZXh0ZW5zaW9uLWlkIjogIm1pbml2aWV3IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiTWluaXZpZXciLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgInRoZXNlY3JldGFyeW9md2FyQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubWluaXZpZXciLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaWFtbGVtZWMvbWluaXZpZXciLAogICJ1dWlkIjogIm1pbml2aWV3QHRoZXNlY3JldGFyeW9md2FyLmNvbSIsCiAgInZlcnNpb24iOiA5Cn0="}}}
+, {"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": "43", "sha256": "1d5fdmgkg1xbfan8d4k1lm5a2pkplzfyy2j2wxkhmdxa1z9y3a29", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ2xpbXBzZSBpbnRvIHlvdXIgY29tcHV0ZXIncyB0ZW1wZXJhdHVyZSwgdm9sdGFnZSwgZmFuIHNwZWVkLCBtZW1vcnkgdXNhZ2UsIHByb2Nlc3NvciBsb2FkLCBzeXN0ZW0gcmVzb3VyY2VzLCBuZXR3b3JrIHNwZWVkIGFuZCBzdG9yYWdlIHN0YXRzLiBUaGlzIGlzIGEgb25lIHN0b3Agc2hvcCB0byBtb25pdG9yIGFsbCBvZiB5b3VyIHZpdGFsIHNlbnNvcnMuIFVzZXMgYXN5bmNocm9ub3VzIHBvbGxpbmcgdG8gcHJvdmlkZSBhIHNtb290aCB1c2VyIGV4cGVyaWVuY2UuIEZlYXR1cmUgcmVxdWVzdHMgb3IgYnVncz8gUGxlYXNlIHVzZSBHaXRIdWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidml0YWxzIiwKICAibmFtZSI6ICJWaXRhbHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudml0YWxzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NvcmVjb2RpbmcvVml0YWxzIiwKICAidXVpZCI6ICJWaXRhbHNAQ29yZUNvZGluZy5jb20iLAogICJ2ZXJzaW9uIjogNDMKfQ=="}, "40": {"version": "43", "sha256": "1d5fdmgkg1xbfan8d4k1lm5a2pkplzfyy2j2wxkhmdxa1z9y3a29", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ2xpbXBzZSBpbnRvIHlvdXIgY29tcHV0ZXIncyB0ZW1wZXJhdHVyZSwgdm9sdGFnZSwgZmFuIHNwZWVkLCBtZW1vcnkgdXNhZ2UsIHByb2Nlc3NvciBsb2FkLCBzeXN0ZW0gcmVzb3VyY2VzLCBuZXR3b3JrIHNwZWVkIGFuZCBzdG9yYWdlIHN0YXRzLiBUaGlzIGlzIGEgb25lIHN0b3Agc2hvcCB0byBtb25pdG9yIGFsbCBvZiB5b3VyIHZpdGFsIHNlbnNvcnMuIFVzZXMgYXN5bmNocm9ub3VzIHBvbGxpbmcgdG8gcHJvdmlkZSBhIHNtb290aCB1c2VyIGV4cGVyaWVuY2UuIEZlYXR1cmUgcmVxdWVzdHMgb3IgYnVncz8gUGxlYXNlIHVzZSBHaXRIdWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidml0YWxzIiwKICAibmFtZSI6ICJWaXRhbHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudml0YWxzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NvcmVjb2RpbmcvVml0YWxzIiwKICAidXVpZCI6ICJWaXRhbHNAQ29yZUNvZGluZy5jb20iLAogICJ2ZXJzaW9uIjogNDMKfQ=="}}}
 , {"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": "11", "sha256": "16dj3yyma4nwn9vvf85i9ws4w9s7z2bz0gapgm1xb3g4q74vckjw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHNlcnZlcnMgc3RhdHVzIG1lbnUgZm9yIHF1aWNrbHkgcnVubmluZyByZGVza3RvcCIsCiAgImV4dGVuc2lvbi1pZCI6ICJyZGVza3RvcC1tZW51IiwKICAibmFtZSI6ICJSZGVza3RvcCBsYXVuY2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXQuZ2Vla3d1Lm9yZy9iYXN0aWVuL3JkZXNrdG9wLW1lbnUiLAogICJ1dWlkIjogInJkZXNrdG9wLW1lbnVAYmFzdGllbi5naXQuZ2Vla3d1Lm9yZyIsCiAgInZlcnNpb24iOiAxMQp9"}, "40": {"version": "11", "sha256": "16dj3yyma4nwn9vvf85i9ws4w9s7z2bz0gapgm1xb3g4q74vckjw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHNlcnZlcnMgc3RhdHVzIG1lbnUgZm9yIHF1aWNrbHkgcnVubmluZyByZGVza3RvcCIsCiAgImV4dGVuc2lvbi1pZCI6ICJyZGVza3RvcC1tZW51IiwKICAibmFtZSI6ICJSZGVza3RvcCBsYXVuY2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXQuZ2Vla3d1Lm9yZy9iYXN0aWVuL3JkZXNrdG9wLW1lbnUiLAogICJ1dWlkIjogInJkZXNrdG9wLW1lbnVAYmFzdGllbi5naXQuZ2Vla3d1Lm9yZyIsCiAgInZlcnNpb24iOiAxMQp9"}}}
 , {"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": "7", "sha256": "0fnfilxj76xmxjhrv309195pqw9c400llmkvvr5vlk08yjky6ib1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGhlIHJlbWFpbmluZyB0aW1lIHVudGlsIGZ1bGx5IGNoYXJnZWQvZGlzY2hhcmdlZCBpbnN0ZWFkIG9mIHRoZSBiYXR0ZXJ5IGNoYXJnZSBpbiBwZXJjZW50IGluIHRoZSBwYW5lbC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJiYXRpbWUiLAogICJuYW1lIjogIkJhdHRlcnkgVGltZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iYXRpbWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbXp1ci9nbm9tZS1zaGVsbC1iYXRpbWUiLAogICJ1dWlkIjogImJhdGltZUBtYXJ0aW4uenVyb3dpZXR6LmRlIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"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=="}}}
 , {"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="}}}
 , {"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": "14", "sha256": "0805li10x12jasjhpngp3p24xvxmbcvskvhxc11m5nv286s4gpx3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5bmMgYWxsIGV4dGVuc2lvbnMgYW5kIHRoZWlyIGNvbmZpZ3VyYXRpb25zIGFjcm9zcyBhbGwgZ25vbWUgaW5zdGFuY2VzIiwKICAibmFtZSI6ICJFeHRlbnNpb25zIFN5bmMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXh0ZW5zaW9ucy1zeW5jIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL29hZS9nbm9tZS1zaGVsbC1leHRlbnNpb25zLXN5bmMiLAogICJ1dWlkIjogImV4dGVuc2lvbnMtc3luY0BlbGhhbi5pbyIsCiAgInZlcnNpb24iOiAxNAp9"}}}
 , {"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": "13", "sha256": "1hbjr5s5mx9dqdj3a12hmbz5fzcpm65pvifa86hwy2m852zj2nc5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBwb2RtYW4gY29udGFpbmVycyB0aHJvdWdoIGEgZ25vbWUtc2hlbGwgbWVudSIsCiAgIm5hbWUiOiAiQ29udGFpbmVycyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yZ29sYW5naC9nbm9tZS1zaGVsbC1leHRlbnNpb24tY29udGFpbmVycyIsCiAgInV1aWQiOiAiY29udGFpbmVyc0Byb3lnIiwKICAidmVyc2lvbiI6IDEzCn0="}}}
+, {"uuid": "fullscreenworkspace@satran.in", "name": "Fullscreen On New Workspace", "pname": "fullscreen-on-new-workspace", "description": "When you launch an application in fullscreen mode move it to a separate workspace.", "link": "https://extensions.gnome.org/extension/1502/fullscreen-on-new-workspace/", "shell_version_map": {"38": {"version": "2", "sha256": "0flpi1rwbzacibhf8j74v6vc5wa99d5149ydmwdfcij3r5qxh5br", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldoZW4geW91IGxhdW5jaCBhbiBhcHBsaWNhdGlvbiBpbiBmdWxsc2NyZWVuIG1vZGUgbW92ZSBpdCB0byBhIHNlcGFyYXRlIHdvcmtzcGFjZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmdWxsc2NyZWVud29ya3NwYWNlIiwKICAibmFtZSI6ICJGdWxsc2NyZWVuIE9uIE5ldyBXb3Jrc3BhY2UiLAogICJzY2hlbWEtaWQiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZnVsbHNjcmVlbndvcmtzcGFjZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zYXRyYW4vZnVsbHNjcmVlbndvcmtzcGFjZS1zYXRyYW4uaW4iLAogICJ1dWlkIjogImZ1bGxzY3JlZW53b3Jrc3BhY2VAc2F0cmFuLmluIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "0flpi1rwbzacibhf8j74v6vc5wa99d5149ydmwdfcij3r5qxh5br", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldoZW4geW91IGxhdW5jaCBhbiBhcHBsaWNhdGlvbiBpbiBmdWxsc2NyZWVuIG1vZGUgbW92ZSBpdCB0byBhIHNlcGFyYXRlIHdvcmtzcGFjZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmdWxsc2NyZWVud29ya3NwYWNlIiwKICAibmFtZSI6ICJGdWxsc2NyZWVuIE9uIE5ldyBXb3Jrc3BhY2UiLAogICJzY2hlbWEtaWQiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZnVsbHNjcmVlbndvcmtzcGFjZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zYXRyYW4vZnVsbHNjcmVlbndvcmtzcGFjZS1zYXRyYW4uaW4iLAogICJ1dWlkIjogImZ1bGxzY3JlZW53b3Jrc3BhY2VAc2F0cmFuLmluIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"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": "32", "sha256": "1h4dxgpanvxs5y0k0zlghxrqp74igs3dhhmj9fkrzykqgm5qk99w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGljb24gYmVzaWRlIHRoZSBkYXRlIGluIHRoZSB0b3BiYXIgdG8gc2hvdyBpZiB0aGVyZSBhcmUgdW5yZWFkIGVtYWlscyB3aGVuIHJ1bm5pbmcgeW91ciBkZWZhdWx0IGVtYWlsIGNsaWVudC5cblxuIEl0IGNoZWNrcyB0aGUgbm90aWZpY2F0aW9ucyBpbiB0aGUgbWVzc2FnZSB0cmF5IHJlbGF0ZWQgdG8gYSBuZXcgbWFpbCwgbm8gZXh0cmEgY29uZmlndXJhdGlvbiBuZWVkZWQsIHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBDbGljayBvbiB0aGUgaWNvbiBkb2VzIHRvZ2dsZSB5b3VyIGVtYWlsIGNsaWVudCB3aW5kb3cuKioqIERvIG5vdCBkaXNhYmxlIHRoZSBub3RpZmljYXRpb25zIG9mIHlvdXIgZGVmYXVsdCBlbWFpbCBjbGllbnQhICoqKiBJdCBpcyBub3QgYSBzdGFuZGFsb25lIG1haWwgY2hlY2tlciwgeW91IG5lZWQgeW91ciBlbWFpbCBjbGllbnQgdG8gYmUgcnVubmluZy4gKioqIFBsZWFzZSBjaGVjayB0aGF0IHRoZSB4ZGctdXRpbHMgcGFja2FnZSBpcyBpbnN0YWxsZWQuXG5cbiBFbWFpbCBjbGllbnRzIHZlcmlmaWVkIGF0IHRoZSBtb21lbnQgYXJlOiBUaHVuZGVyYmlyZCwgRXZvbHV0aW9uLCBHZWFyeSwgTWFpbHNwcmluZy4gUGxlYXNlIGFzayB0byBhZGQgdGhlIGNsaWVudCwgaW5jbHVkaW5nIHNwZWNpYWwgcGFja2FnaW5nIChzbmFwL2ZsYXRwYWspLCB0aGF0IHlvdSBuZWVkLiBJZiB5b3UgcmVwb3J0IGFuIGVycm9yLCBwbGVhc2UgcHJvdmlkZSBhdCBsZWFzdCB0aGUgZGlzdHJpYnV0aW9uIGFuZCB0aGUgZW1haWwgY2xpZW50IHlvdSB1c2UgdGhyb3VnaCB0aGUgR2l0SHViIGxpbmsuXG5cbiBGb3IgcGVyc2lzdGVudCBub3RpZmljYXRpb25zIG9ubHksIHNlZTogaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMzk1MS9wZXJzaXN0ZW50LWVtYWlsLW5vdGlmaWNhdGlvbnMgLiIsCiAgIm5hbWUiOiAiTmV3IE1haWwgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvbmV3LW1haWwtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJuZXctbWFpbC1pbmRpY2F0b3JAZnRoeCIsCiAgInZlcnNpb24iOiAzMgp9"}, "40": {"version": "32", "sha256": "1h4dxgpanvxs5y0k0zlghxrqp74igs3dhhmj9fkrzykqgm5qk99w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGljb24gYmVzaWRlIHRoZSBkYXRlIGluIHRoZSB0b3BiYXIgdG8gc2hvdyBpZiB0aGVyZSBhcmUgdW5yZWFkIGVtYWlscyB3aGVuIHJ1bm5pbmcgeW91ciBkZWZhdWx0IGVtYWlsIGNsaWVudC5cblxuIEl0IGNoZWNrcyB0aGUgbm90aWZpY2F0aW9ucyBpbiB0aGUgbWVzc2FnZSB0cmF5IHJlbGF0ZWQgdG8gYSBuZXcgbWFpbCwgbm8gZXh0cmEgY29uZmlndXJhdGlvbiBuZWVkZWQsIHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBDbGljayBvbiB0aGUgaWNvbiBkb2VzIHRvZ2dsZSB5b3VyIGVtYWlsIGNsaWVudCB3aW5kb3cuKioqIERvIG5vdCBkaXNhYmxlIHRoZSBub3RpZmljYXRpb25zIG9mIHlvdXIgZGVmYXVsdCBlbWFpbCBjbGllbnQhICoqKiBJdCBpcyBub3QgYSBzdGFuZGFsb25lIG1haWwgY2hlY2tlciwgeW91IG5lZWQgeW91ciBlbWFpbCBjbGllbnQgdG8gYmUgcnVubmluZy4gKioqIFBsZWFzZSBjaGVjayB0aGF0IHRoZSB4ZGctdXRpbHMgcGFja2FnZSBpcyBpbnN0YWxsZWQuXG5cbiBFbWFpbCBjbGllbnRzIHZlcmlmaWVkIGF0IHRoZSBtb21lbnQgYXJlOiBUaHVuZGVyYmlyZCwgRXZvbHV0aW9uLCBHZWFyeSwgTWFpbHNwcmluZy4gUGxlYXNlIGFzayB0byBhZGQgdGhlIGNsaWVudCwgaW5jbHVkaW5nIHNwZWNpYWwgcGFja2FnaW5nIChzbmFwL2ZsYXRwYWspLCB0aGF0IHlvdSBuZWVkLiBJZiB5b3UgcmVwb3J0IGFuIGVycm9yLCBwbGVhc2UgcHJvdmlkZSBhdCBsZWFzdCB0aGUgZGlzdHJpYnV0aW9uIGFuZCB0aGUgZW1haWwgY2xpZW50IHlvdSB1c2UgdGhyb3VnaCB0aGUgR2l0SHViIGxpbmsuXG5cbiBGb3IgcGVyc2lzdGVudCBub3RpZmljYXRpb25zIG9ubHksIHNlZTogaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMzk1MS9wZXJzaXN0ZW50LWVtYWlsLW5vdGlmaWNhdGlvbnMgLiIsCiAgIm5hbWUiOiAiTmV3IE1haWwgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvbmV3LW1haWwtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJuZXctbWFpbC1pbmRpY2F0b3JAZnRoeCIsCiAgInZlcnNpb24iOiAzMgp9"}}}
 , {"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": "4", "sha256": "0pvbnv97g2mjbklszxvp6df50iw9kyr1ssfza8ia9779x5zq9bk9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgcm91bmRlZCBjb3JuZXJzIGZvciBldmVyeSBtb25pdG9yIiwKICAibmFtZSI6ICJSb3VuZGVkIENvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sZW5uYXJ0LWsvZ25vbWUtcm91bmRlZC1jb3JuZXJzIiwKICAidXVpZCI6ICJSb3VuZGVkX0Nvcm5lcnNAbGVubmFydC1rIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"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\n\nPress the Refresh button on the left of header bar to Reload the extension.", "link": "https://extensions.gnome.org/extension/1526/notification-centerselenium-h/", "shell_version_map": {"38": {"version": "23", "sha256": "12acmck46qpjgkcwjms4wi4gfnnyhz0yjh29ls2xz4xlkdzw71pd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1lbnQiOiAiRGV0YWNoIG5vdGlmaWNhdGlvbiBjZW50ZXIgdG8gdG9wIHBhbmVsIGFuZCBjdXN0b21pemF0aW9ucyIsCiAgImRlc2NyaXB0aW9uIjogIkRldGFjaCBub3RpZmljYXRpb24gY2VudGVyIHRvIHRvcCBwYW5lbCBhbmQgY3VzdG9taXphdGlvbnNcblxuUHJlc3MgdGhlIFJlZnJlc2ggYnV0dG9uIG9uIHRoZSBsZWZ0IG9mIGhlYWRlciBiYXIgdG8gUmVsb2FkIHRoZSBleHRlbnNpb24uIiwKICAibmFtZSI6ICJOb3RpZmljYXRpb24gQ2VudGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5vdGlmaWNhdGlvbi1jZW50ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAic3RhdHVzIjogIiAiLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NlbGVuaXVtLUgvTm90aWZpY2F0aW9uLUNlbnRlciIsCiAgInV1aWQiOiAibm90aWZpY2F0aW9uLWNlbnRlckBTZWxlbml1bS1IIiwKICAidmVyc2lvbiI6IDIzCn0="}}}
+, {"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 supported for Gnome Shell 3.38 or newer.", "link": "https://extensions.gnome.org/extension/1532/lock-keys/", "shell_version_map": {"38": {"version": "12", "sha256": "0cnd71926fyxcq6gv0j6xiy8w9fw0lvsby4rmzamywg1rbb5i1jd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgYW5kIENhcHNsb2NrIHN0YXR1cyBvbiB0aGUgcGFuZWwuIEljb25zIGFyZSBhdXRvIGhpZGRlbi4gU2ltcGxpZmllZCB3aXRoIG5vIG1lbnVzLCBub3RpZmljYXRpb25zIG9yIHNldHRpbmdzLlxuXG5XYXlsYW5kIGlzIHN1cHBvcnRlZCBmb3IgR25vbWUgU2hlbGwgMy4zOCBvciBuZXdlci4iLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiU3RldmUgQ2xhcmssIEthemltaWVyYXMgVmFpbmEsIFBpZXJyZSBPc3NtYW4sIGVyZ3VpbGxlLCBqb25uaXVzLCBQaGlsaXBwIFdvbGZlciwgTWFyaXVzeiBMaXNvd3NraSwgQ3Jpc3RpYW4gQmVyb2l6YSwgd2FybXN1bjAyMjAsIFJhc211cyBLYWosIFBhYmxvIE1hcnRpbi1Hb21leiBCb3Vza2EiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImxvY2trZXlzQGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDEyCn0="}, "40": {"version": "12", "sha256": "0cnd71926fyxcq6gv0j6xiy8w9fw0lvsby4rmzamywg1rbb5i1jd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgYW5kIENhcHNsb2NrIHN0YXR1cyBvbiB0aGUgcGFuZWwuIEljb25zIGFyZSBhdXRvIGhpZGRlbi4gU2ltcGxpZmllZCB3aXRoIG5vIG1lbnVzLCBub3RpZmljYXRpb25zIG9yIHNldHRpbmdzLlxuXG5XYXlsYW5kIGlzIHN1cHBvcnRlZCBmb3IgR25vbWUgU2hlbGwgMy4zOCBvciBuZXdlci4iLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiU3RldmUgQ2xhcmssIEthemltaWVyYXMgVmFpbmEsIFBpZXJyZSBPc3NtYW4sIGVyZ3VpbGxlLCBqb25uaXVzLCBQaGlsaXBwIFdvbGZlciwgTWFyaXVzeiBMaXNvd3NraSwgQ3Jpc3RpYW4gQmVyb2l6YSwgd2FybXN1bjAyMjAsIFJhc211cyBLYWosIFBhYmxvIE1hcnRpbi1Hb21leiBCb3Vza2EiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImxvY2trZXlzQGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDEyCn0="}}}
 , {"uuid": "fullscreen-hot-corner@sorrow.about.alice.pm.me", "name": "Fullscreen Hot Corner", "pname": "fullscreen-hot-corner", "description": "Enables hot corner in fullscreen mode", "link": "https://extensions.gnome.org/extension/1562/fullscreen-hot-corner/", "shell_version_map": {"38": {"version": "6", "sha256": "1lcpw06aqja4q7qqfvds5nv2zvzrjh56lymj1al4kiql92gbwzp1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgaG90IGNvcm5lciBpbiBmdWxsc2NyZWVuIG1vZGUiLAogICJuYW1lIjogIkZ1bGxzY3JlZW4gSG90IENvcm5lciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NvYWwvZ25vbWUtc2hlbGwtZnVsbHNjcmVlbi1ob3QtY29ybmVyIiwKICAidXVpZCI6ICJmdWxsc2NyZWVuLWhvdC1jb3JuZXJAc29ycm93LmFib3V0LmFsaWNlLnBtLm1lIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "8", "sha256": "07ly7kgjz15462d2xx53l4rmgydw72jm4f21vsil8fyynifv5smv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgaG90IGNvcm5lciBpbiBmdWxsc2NyZWVuIG1vZGUiLAogICJuYW1lIjogIkZ1bGxzY3JlZW4gSG90IENvcm5lciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NvYWwvZ25vbWUtc2hlbGwtZnVsbHNjcmVlbi1ob3QtY29ybmVyIiwKICAidXVpZCI6ICJmdWxsc2NyZWVuLWhvdC1jb3JuZXJAc29ycm93LmFib3V0LmFsaWNlLnBtLm1lIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
 , {"uuid": "worksets@blipk.xyz", "name": "Customised Workspaces", "pname": "worksets", "description": "Customised Workspaces enables creating isolated and customised workspaces.\n\n* Customise the dash to be unique for each workspace, each with their own favourites\n* Only show running applications on the dash in their respective workspace\n* Choose a custom background image for each workspace\n* Minor UI tweaks to the overview workspaces\n* Save each customisation, set them to autoload on specific workspaces\n* Hide the extension once you've configured your preferences to enjoy seamlessly upgraded workspaces in gnome shell\n\nCompatible for use with any of these extensions to complete your workspace upgrade:\n\n* Dash to Panel - https://extensions.gnome.org/extension/1160/dash-to-panel/\n* Dash to Dock - https://extensions.gnome.org/extension/307/dash-to-dock/\n* Auto Move Windows - https://extensions.gnome.org/extension/16/auto-move-windows/\n* Vertical Overview - https://github.com/RensAlthuis/vertical-overview", "link": "https://extensions.gnome.org/extension/1583/worksets/", "shell_version_map": {"38": {"version": "30", "sha256": "0mjah9nx66caqmfbz8wrvg6iyhxp7jmbgwx1gnp8k2a2z536n1iw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwud29ya3NldHMiLAogICJkZXNjcmlwdGlvbiI6ICJDdXN0b21pc2VkIFdvcmtzcGFjZXMgZW5hYmxlcyBjcmVhdGluZyBpc29sYXRlZCBhbmQgY3VzdG9taXNlZCB3b3Jrc3BhY2VzLlxuXG4qIEN1c3RvbWlzZSB0aGUgZGFzaCB0byBiZSB1bmlxdWUgZm9yIGVhY2ggd29ya3NwYWNlLCBlYWNoIHdpdGggdGhlaXIgb3duIGZhdm91cml0ZXNcbiogT25seSBzaG93IHJ1bm5pbmcgYXBwbGljYXRpb25zIG9uIHRoZSBkYXNoIGluIHRoZWlyIHJlc3BlY3RpdmUgd29ya3NwYWNlXG4qIENob29zZSBhIGN1c3RvbSBiYWNrZ3JvdW5kIGltYWdlIGZvciBlYWNoIHdvcmtzcGFjZVxuKiBNaW5vciBVSSB0d2Vha3MgdG8gdGhlIG92ZXJ2aWV3IHdvcmtzcGFjZXNcbiogU2F2ZSBlYWNoIGN1c3RvbWlzYXRpb24sIHNldCB0aGVtIHRvIGF1dG9sb2FkIG9uIHNwZWNpZmljIHdvcmtzcGFjZXNcbiogSGlkZSB0aGUgZXh0ZW5zaW9uIG9uY2UgeW91J3ZlIGNvbmZpZ3VyZWQgeW91ciBwcmVmZXJlbmNlcyB0byBlbmpveSBzZWFtbGVzc2x5IHVwZ3JhZGVkIHdvcmtzcGFjZXMgaW4gZ25vbWUgc2hlbGxcblxuQ29tcGF0aWJsZSBmb3IgdXNlIHdpdGggYW55IG9mIHRoZXNlIGV4dGVuc2lvbnMgdG8gY29tcGxldGUgeW91ciB3b3Jrc3BhY2UgdXBncmFkZTpcblxuKiBEYXNoIHRvIFBhbmVsIC0gaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMTE2MC9kYXNoLXRvLXBhbmVsL1xuKiBEYXNoIHRvIERvY2sgLSBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8zMDcvZGFzaC10by1kb2NrL1xuKiBBdXRvIE1vdmUgV2luZG93cyAtIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzE2L2F1dG8tbW92ZS13aW5kb3dzL1xuKiBWZXJ0aWNhbCBPdmVydmlldyAtIGh0dHBzOi8vZ2l0aHViLmNvbS9SZW5zQWx0aHVpcy92ZXJ0aWNhbC1vdmVydmlldyIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3b3Jrc2V0cyIsCiAgImdldHRleHQtZG9tYWluIjogIndvcmtzZXRzIiwKICAibmFtZSI6ICJDdXN0b21pc2VkIFdvcmtzcGFjZXMiLAogICJvcmlnaW5hbC1hdXRob3IiOiAiYWRtaW5Aa3Jvbm9zb3VsLnh5eiIsCiAgInJlc291cmNlLXBhdGgiOiAiL29yZy9rcm9ub3NvdWwvd29ya3NldHMvIiwKICAic2V0dGluZ3MtcGF0aCI6ICIvb3JnL2dub21lL3NoZWxsL2V4dGVuc2lvbnMvd29ya3NldHMvIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndvcmtzZXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC5iZXRhIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JsaXBrL0N1c3RvbWlzZWQtV29ya3NwYWNlcyIsCiAgInV1aWQiOiAid29ya3NldHNAYmxpcGsueHl6IiwKICAidmVyc2lvbiI6IDMwCn0="}, "40": {"version": "30", "sha256": "0mjah9nx66caqmfbz8wrvg6iyhxp7jmbgwx1gnp8k2a2z536n1iw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwud29ya3NldHMiLAogICJkZXNjcmlwdGlvbiI6ICJDdXN0b21pc2VkIFdvcmtzcGFjZXMgZW5hYmxlcyBjcmVhdGluZyBpc29sYXRlZCBhbmQgY3VzdG9taXNlZCB3b3Jrc3BhY2VzLlxuXG4qIEN1c3RvbWlzZSB0aGUgZGFzaCB0byBiZSB1bmlxdWUgZm9yIGVhY2ggd29ya3NwYWNlLCBlYWNoIHdpdGggdGhlaXIgb3duIGZhdm91cml0ZXNcbiogT25seSBzaG93IHJ1bm5pbmcgYXBwbGljYXRpb25zIG9uIHRoZSBkYXNoIGluIHRoZWlyIHJlc3BlY3RpdmUgd29ya3NwYWNlXG4qIENob29zZSBhIGN1c3RvbSBiYWNrZ3JvdW5kIGltYWdlIGZvciBlYWNoIHdvcmtzcGFjZVxuKiBNaW5vciBVSSB0d2Vha3MgdG8gdGhlIG92ZXJ2aWV3IHdvcmtzcGFjZXNcbiogU2F2ZSBlYWNoIGN1c3RvbWlzYXRpb24sIHNldCB0aGVtIHRvIGF1dG9sb2FkIG9uIHNwZWNpZmljIHdvcmtzcGFjZXNcbiogSGlkZSB0aGUgZXh0ZW5zaW9uIG9uY2UgeW91J3ZlIGNvbmZpZ3VyZWQgeW91ciBwcmVmZXJlbmNlcyB0byBlbmpveSBzZWFtbGVzc2x5IHVwZ3JhZGVkIHdvcmtzcGFjZXMgaW4gZ25vbWUgc2hlbGxcblxuQ29tcGF0aWJsZSBmb3IgdXNlIHdpdGggYW55IG9mIHRoZXNlIGV4dGVuc2lvbnMgdG8gY29tcGxldGUgeW91ciB3b3Jrc3BhY2UgdXBncmFkZTpcblxuKiBEYXNoIHRvIFBhbmVsIC0gaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMTE2MC9kYXNoLXRvLXBhbmVsL1xuKiBEYXNoIHRvIERvY2sgLSBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8zMDcvZGFzaC10by1kb2NrL1xuKiBBdXRvIE1vdmUgV2luZG93cyAtIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzE2L2F1dG8tbW92ZS13aW5kb3dzL1xuKiBWZXJ0aWNhbCBPdmVydmlldyAtIGh0dHBzOi8vZ2l0aHViLmNvbS9SZW5zQWx0aHVpcy92ZXJ0aWNhbC1vdmVydmlldyIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3b3Jrc2V0cyIsCiAgImdldHRleHQtZG9tYWluIjogIndvcmtzZXRzIiwKICAibmFtZSI6ICJDdXN0b21pc2VkIFdvcmtzcGFjZXMiLAogICJvcmlnaW5hbC1hdXRob3IiOiAiYWRtaW5Aa3Jvbm9zb3VsLnh5eiIsCiAgInJlc291cmNlLXBhdGgiOiAiL29yZy9rcm9ub3NvdWwvd29ya3NldHMvIiwKICAic2V0dGluZ3MtcGF0aCI6ICIvb3JnL2dub21lL3NoZWxsL2V4dGVuc2lvbnMvd29ya3NldHMvIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndvcmtzZXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC5iZXRhIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JsaXBrL0N1c3RvbWlzZWQtV29ya3NwYWNlcyIsCiAgInV1aWQiOiAid29ya3NldHNAYmxpcGsueHl6IiwKICAidmVyc2lvbiI6IDMwCn0="}}}
-, {"uuid": "NordVPN_Connect@poilrouge.fr", "name": "NordVPN Connect", "pname": "nordvpn-connect", "description": "Unofficial Gnome-Shell Extension to provide a GUI for the official NordVPN CLI Tool.", "link": "https://extensions.gnome.org/extension/1595/nordvpn-connect/", "shell_version_map": {"38": {"version": "15", "sha256": "0xccvy3kqgglhcjhixlxi65sa49lbm896lra2sks65arkx3fh63k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVub2ZmaWNpYWwgR25vbWUtU2hlbGwgRXh0ZW5zaW9uIHRvIHByb3ZpZGUgYSBHVUkgZm9yIHRoZSBvZmZpY2lhbCBOb3JkVlBOIENMSSBUb29sLiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMtbnZwbmNvbm5lY3QiLAogICJuYW1lIjogIk5vcmRWUE4gQ29ubmVjdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5udnBuY29ubmVjdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FsZXhQb2lscm91Z2UvTm9yZFZQTi1jb25uZWN0IiwKICAidXVpZCI6ICJOb3JkVlBOX0Nvbm5lY3RAcG9pbHJvdWdlLmZyIiwKICAidmVyc2lvbiI6IDE1Cn0="}}}
+, {"uuid": "NordVPN_Connect@poilrouge.fr", "name": "NordVPN Connect", "pname": "nordvpn-connect", "description": "Unofficial Gnome-Shell Extension to provide a GUI for the official NordVPN CLI Tool.", "link": "https://extensions.gnome.org/extension/1595/nordvpn-connect/", "shell_version_map": {"38": {"version": "15", "sha256": "0xccvy3kqgglhcjhixlxi65sa49lbm896lra2sks65arkx3fh63k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVub2ZmaWNpYWwgR25vbWUtU2hlbGwgRXh0ZW5zaW9uIHRvIHByb3ZpZGUgYSBHVUkgZm9yIHRoZSBvZmZpY2lhbCBOb3JkVlBOIENMSSBUb29sLiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMtbnZwbmNvbm5lY3QiLAogICJuYW1lIjogIk5vcmRWUE4gQ29ubmVjdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5udnBuY29ubmVjdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FsZXhQb2lscm91Z2UvTm9yZFZQTi1jb25uZWN0IiwKICAidXVpZCI6ICJOb3JkVlBOX0Nvbm5lY3RAcG9pbHJvdWdlLmZyIiwKICAidmVyc2lvbiI6IDE1Cn0="}, "40": {"version": "16", "sha256": "1l2790w6r8ay150k57nh7imrg5fc6198rqzrp903bww59wwllz9v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVub2ZmaWNpYWwgR25vbWUtU2hlbGwgRXh0ZW5zaW9uIHRvIHByb3ZpZGUgYSBHVUkgZm9yIHRoZSBvZmZpY2lhbCBOb3JkVlBOIENMSSBUb29sLiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMtbnZwbmNvbm5lY3QiLAogICJuYW1lIjogIk5vcmRWUE4gQ29ubmVjdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5udnBuY29ubmVjdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9BbGV4UG9pbHJvdWdlL05vcmRWUE4tY29ubmVjdCIsCiAgInV1aWQiOiAiTm9yZFZQTl9Db25uZWN0QHBvaWxyb3VnZS5mciIsCiAgInZlcnNpb24iOiAxNgp9"}}}
 , {"uuid": "arrangeWindows@sun.wxg@gmail.com", "name": "Arrange Windows", "pname": "arrange-windows", "description": "Arrange windows on the monitors\n\nHotkeys:\n Ctrl+Alt+1 Cascade windows\n Ctrl+Alt+2 Tiling windows\n Ctrl+Alt+3 Side by side windows\n Ctrl+Alt+4 Stack windows", "link": "https://extensions.gnome.org/extension/1604/arrange-windows/", "shell_version_map": {"38": {"version": "20", "sha256": "1akrix6iji78bhwpvsbwf9lxyjgsv2496rdfadns4f8wpgs4d1n4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd2luZG93cyBvbiB0aGUgbW9uaXRvcnNcblxuSG90a2V5czpcbiBDdHJsK0FsdCsxIENhc2NhZGUgd2luZG93c1xuIEN0cmwrQWx0KzIgVGlsaW5nIHdpbmRvd3NcbiBDdHJsK0FsdCszIFNpZGUgYnkgc2lkZSB3aW5kb3dzXG4gQ3RybCtBbHQrNCBTdGFjayB3aW5kb3dzIiwKICAibmFtZSI6ICJBcnJhbmdlIFdpbmRvd3MiLAogICJvcmlnaW5hbC1hdXRob3JzIjogInN1bi53eGdAZ21haWwuY29tIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tYXJyYW5nZVdpbmRvd3MiLAogICJ1dWlkIjogImFycmFuZ2VXaW5kb3dzQHN1bi53eGdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDIwCn0="}, "40": {"version": "20", "sha256": "1akrix6iji78bhwpvsbwf9lxyjgsv2496rdfadns4f8wpgs4d1n4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd2luZG93cyBvbiB0aGUgbW9uaXRvcnNcblxuSG90a2V5czpcbiBDdHJsK0FsdCsxIENhc2NhZGUgd2luZG93c1xuIEN0cmwrQWx0KzIgVGlsaW5nIHdpbmRvd3NcbiBDdHJsK0FsdCszIFNpZGUgYnkgc2lkZSB3aW5kb3dzXG4gQ3RybCtBbHQrNCBTdGFjayB3aW5kb3dzIiwKICAibmFtZSI6ICJBcnJhbmdlIFdpbmRvd3MiLAogICJvcmlnaW5hbC1hdXRob3JzIjogInN1bi53eGdAZ21haWwuY29tIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tYXJyYW5nZVdpbmRvd3MiLAogICJ1dWlkIjogImFycmFuZ2VXaW5kb3dzQHN1bi53eGdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDIwCn0="}}}
 , {"uuid": "fullscreen-notifications@sorrow.about.alice.pm.me", "name": "Fullscreen Notifications", "pname": "fullscreen-notifications", "description": "Enables all notifications in fullscreen mode", "link": "https://extensions.gnome.org/extension/1610/fullscreen-notifications/", "shell_version_map": {"38": {"version": "3", "sha256": "1g1dgrhbif7qcxga7302bhhdjrr2v3vkp6dfavyclzsdkkrr2wwh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgYWxsIG5vdGlmaWNhdGlvbnMgaW4gZnVsbHNjcmVlbiBtb2RlIiwKICAibmFtZSI6ICJGdWxsc2NyZWVuIE5vdGlmaWNhdGlvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzAuMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NvYWwvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWZ1bGxzY3JlZW4tbm90aWZpY2F0aW9ucyIsCiAgInV1aWQiOiAiZnVsbHNjcmVlbi1ub3RpZmljYXRpb25zQHNvcnJvdy5hYm91dC5hbGljZS5wbS5tZSIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "4", "sha256": "107lii2hxfs6wa6a94yhfjmk1szpyia3rbhb7lf8nwj1gdra54zj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgYWxsIG5vdGlmaWNhdGlvbnMgaW4gZnVsbHNjcmVlbiBtb2RlIiwKICAibmFtZSI6ICJGdWxsc2NyZWVuIE5vdGlmaWNhdGlvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zb2FsL2dub21lLXNoZWxsLWV4dGVuc2lvbi1mdWxsc2NyZWVuLW5vdGlmaWNhdGlvbnMiLAogICJ1dWlkIjogImZ1bGxzY3JlZW4tbm90aWZpY2F0aW9uc0Bzb3Jyb3cuYWJvdXQuYWxpY2UucG0ubWUiLAogICJ2ZXJzaW9uIjogNAp9"}}}
-, {"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": "13", "sha256": "1679cxazd2vl7bkhamq3hxw7r5wpb2plw3h346gvg1w0blc1b7ry", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCB3aW5kb3dzIG9yIHdvcmtzcGFjZSBieSBtb3VzZSBzY3JvbGwgb24gdGhlIHBhbmVsLlxuUG9pbnRlciBvbiBsZWZ0IG9mIHBhbmVsLCBzd2l0Y2ggd2luZG93cy5cblBvaW50ZXIgb24gcmlnaHQgb2YgcGFuZWwsIHN3aXRjaCB3b3Jrc3BhY2VzLiIsCiAgIm5hbWUiOiAicGFuZWwgc2Nyb2xsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXBhbmVsU2Nyb2xsIiwKICAidXVpZCI6ICJwYW5lbFNjcm9sbEBzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMwp9"}}}
+, {"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": "14", "sha256": "09bwi84nxnzil4mc7b55p6ldb1pcfl3ajvzm561bjv50zxhkjjc4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCB3aW5kb3dzIG9yIHdvcmtzcGFjZSBieSBtb3VzZSBzY3JvbGwgb24gdGhlIHBhbmVsLlxuUG9pbnRlciBvbiBsZWZ0IG9mIHBhbmVsLCBzd2l0Y2ggd2luZG93cy5cblBvaW50ZXIgb24gcmlnaHQgb2YgcGFuZWwsIHN3aXRjaCB3b3Jrc3BhY2VzLiIsCiAgIm5hbWUiOiAicGFuZWwgc2Nyb2xsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXBhbmVsU2Nyb2xsIiwKICAidXVpZCI6ICJwYW5lbFNjcm9sbEBzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxNAp9"}}}
 , {"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": "27", "sha256": "0caz4ff1wa9qq9f0zvl2sa2c8d2ff5icvcqyfv9n9aqrknkpn3pa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBvciBvdmVycmlkZSB0aGUgYnJpZ2h0bmVzcyBzbGlkZXIgdG8gY2hhbmdlIHRoZSBicmlnaHRuZXNzIHZpYSBhbiBhbHBoYSBsYXllciAoYW5kIG9wdGlvbmFsbHkgc3RvcCB1c2luZyBvciBjb29wZXJhdGUgd2l0aCB0aGUgZXhpc2luZyBiYWNrbGlnaHQsIGlmIHByZXNlbnQpLlxuRWl0aGVyIGludGVybmFsLCBleHRlcm5hbCBvciBhbGwgbW9uaXRvcnMgY2FuIGJlIGRpbW1lZC5cblNlZSB0aGUgR2l0SHViIHBhZ2UgZm9yIGRldGFpbHMuXG5cbk5vdGUgdGhhdCB0aGlzIGV4dGVuc2lvbiB3aWxsIGtlZXAgcnVubmluZyBvbiB0aGUgbG9jayBzY3JlZW4sIGFzIHlvdSdkIGFsc28gd2FudCB0aGUgYnJpZ2h0bmVzcyBzZXR0aW5nIHRvIGFwcGx5IHRvIHRoZSBsb2NrIHNjcmVlbiBhcyB3ZWxsLiBQbGVhc2UgcmVwb3J0IG9uIEdpdEh1YiBpZiB0aGlzIGdpdmVzIHlvdSBhbnkgdHJvdWJsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzb2Z0LWJyaWdodG5lc3MiLAogICJuYW1lIjogIlNvZnQgYnJpZ2h0bmVzcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zb2Z0LWJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzMuOTAiLAogICAgIjMuMzYiLAogICAgIjMuMzUuMSIsCiAgICAiMy4zNS45MiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0YtaS1mL3NvZnQtYnJpZ2h0bmVzcyIsCiAgInV1aWQiOiAic29mdC1icmlnaHRuZXNzQGZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYyNy0wLWcyN2M0OTc4IiwKICAidmVyc2lvbiI6IDI3Cn0="}, "40": {"version": "27", "sha256": "0caz4ff1wa9qq9f0zvl2sa2c8d2ff5icvcqyfv9n9aqrknkpn3pa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBvciBvdmVycmlkZSB0aGUgYnJpZ2h0bmVzcyBzbGlkZXIgdG8gY2hhbmdlIHRoZSBicmlnaHRuZXNzIHZpYSBhbiBhbHBoYSBsYXllciAoYW5kIG9wdGlvbmFsbHkgc3RvcCB1c2luZyBvciBjb29wZXJhdGUgd2l0aCB0aGUgZXhpc2luZyBiYWNrbGlnaHQsIGlmIHByZXNlbnQpLlxuRWl0aGVyIGludGVybmFsLCBleHRlcm5hbCBvciBhbGwgbW9uaXRvcnMgY2FuIGJlIGRpbW1lZC5cblNlZSB0aGUgR2l0SHViIHBhZ2UgZm9yIGRldGFpbHMuXG5cbk5vdGUgdGhhdCB0aGlzIGV4dGVuc2lvbiB3aWxsIGtlZXAgcnVubmluZyBvbiB0aGUgbG9jayBzY3JlZW4sIGFzIHlvdSdkIGFsc28gd2FudCB0aGUgYnJpZ2h0bmVzcyBzZXR0aW5nIHRvIGFwcGx5IHRvIHRoZSBsb2NrIHNjcmVlbiBhcyB3ZWxsLiBQbGVhc2UgcmVwb3J0IG9uIEdpdEh1YiBpZiB0aGlzIGdpdmVzIHlvdSBhbnkgdHJvdWJsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzb2Z0LWJyaWdodG5lc3MiLAogICJuYW1lIjogIlNvZnQgYnJpZ2h0bmVzcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zb2Z0LWJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzMuOTAiLAogICAgIjMuMzYiLAogICAgIjMuMzUuMSIsCiAgICAiMy4zNS45MiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0YtaS1mL3NvZnQtYnJpZ2h0bmVzcyIsCiAgInV1aWQiOiAic29mdC1icmlnaHRuZXNzQGZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYyNy0wLWcyN2M0OTc4IiwKICAidmVyc2lvbiI6IDI3Cn0="}}}
 , {"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": "15", "sha256": "1q6scg003qyp84q7yd1f49kks0rr5k0wwlsq7m3ccnjk5dakqisa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJHaXVzZXBwZSBTaWx2ZXN0cm8iLAogICJkZXNjcmlwdGlvbiI6ICJNb25pdG9yIHRoZSB1c2Ugb2Ygc3lzdGVtIHJlc291cmNlcyBsaWtlIGNwdSwgcmFtLCBkaXNrLCBuZXR3b3JrIGFuZCBkaXNwbGF5IHRoZW0gaW4gZ25vbWUgc2hlbGwgdG9wIGJhci4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjb20tZ2l0aHViLU9yeTBuLVJlc291cmNlX01vbml0b3IiLAogICJuYW1lIjogIlJlc291cmNlIE1vbml0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAiY29tLmdpdGh1Yi5Pcnkwbi5SZXNvdXJjZV9Nb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vMHJ5MG4vUmVzb3VyY2VfTW9uaXRvci8iLAogICJ1dWlkIjogIlJlc291cmNlX01vbml0b3JAT3J5MG4iLAogICJ2ZXJzaW9uIjogMTUKfQ=="}}}
 , {"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": "15", "sha256": "0i6bj4kd59wg1sm29a1yr9s1is2rkxnabn04hlj66y5n6lv6gxgq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBHbm9tZSBUd2Vha3MgYW5kIEV4dGVuc2lvbnMgKG9uIFNoZWxsIDQwIGFuZCBsYXRlcikgaW4gdGhlIFN5c3RlbSBtZW51LiIsCiAgImdldHRleHQtZG9tYWluIjogInR3ZWFrcy1zeXN0ZW0tbWVudSIsCiAgIm5hbWUiOiAiVHdlYWtzICYgRXh0ZW5zaW9ucyBpbiBTeXN0ZW0gTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50d2Vha3Mtc3lzdGVtLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzUuOTIiLAogICAgIjMuMzgiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9GLWktZi90d2Vha3Mtc3lzdGVtLW1lbnUiLAogICJ1dWlkIjogInR3ZWFrcy1zeXN0ZW0tbWVudUBleHRlbnNpb25zLmdub21lLXNoZWxsLmZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYxNS0wLWdlM2IwNGM3IiwKICAidmVyc2lvbiI6IDE1Cn0="}, "40": {"version": "15", "sha256": "0i6bj4kd59wg1sm29a1yr9s1is2rkxnabn04hlj66y5n6lv6gxgq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBHbm9tZSBUd2Vha3MgYW5kIEV4dGVuc2lvbnMgKG9uIFNoZWxsIDQwIGFuZCBsYXRlcikgaW4gdGhlIFN5c3RlbSBtZW51LiIsCiAgImdldHRleHQtZG9tYWluIjogInR3ZWFrcy1zeXN0ZW0tbWVudSIsCiAgIm5hbWUiOiAiVHdlYWtzICYgRXh0ZW5zaW9ucyBpbiBTeXN0ZW0gTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50d2Vha3Mtc3lzdGVtLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzUuOTIiLAogICAgIjMuMzgiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9GLWktZi90d2Vha3Mtc3lzdGVtLW1lbnUiLAogICJ1dWlkIjogInR3ZWFrcy1zeXN0ZW0tbWVudUBleHRlbnNpb25zLmdub21lLXNoZWxsLmZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYxNS0wLWdlM2IwNGM3IiwKICAidmVyc2lvbiI6IDE1Cn0="}}}
 , {"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": "11", "sha256": "14czzkqs5my6ypg3ggxlcmxbf8aw1ing6nfgz26zkgbvnrfnvfqr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGxlZ2FjeSB0cmF5IGljb25zIG9uIHRvcCBcdTIwMTMgdGhlIGZpeGVkIHZlcnNpb24gb2YgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDk1L3RvcGljb25zLyIsCiAgIm5hbWUiOiAiVG9wSWNvbnNGaXgiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInRvcGljb25zZml4QGFsZXNrdmFAZGV2bnVsbG1haWwuY29tIiwKICAidmVyc2lvbiI6IDExCn0="}, "40": {"version": "11", "sha256": "14czzkqs5my6ypg3ggxlcmxbf8aw1ing6nfgz26zkgbvnrfnvfqr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGxlZ2FjeSB0cmF5IGljb25zIG9uIHRvcCBcdTIwMTMgdGhlIGZpeGVkIHZlcnNpb24gb2YgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDk1L3RvcGljb25zLyIsCiAgIm5hbWUiOiAiVG9wSWNvbnNGaXgiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInRvcGljb25zZml4QGFsZXNrdmFAZGV2bnVsbG1haWwuY29tIiwKICAidmVyc2lvbiI6IDExCn0="}}}
-, {"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. The Extension will stop when upgraded to an incompatible version. In that case an Update tab is created to easily reset the extension. A Reset button is also always present in preferences -> About Tab.\n A Default shortcut combination of Super Key + t is provided to temporarily disable the extension until GNOME Shell restarts. \n\nSome effects might not work properly on wayland, for which a workaround is provided on preferences -> Tweaks tab. \nHowever, some animations might not work properly.", "link": "https://extensions.gnome.org/extension/1680/animation-tweaks/", "shell_version_map": {"38": {"version": "12", "sha256": "0n3c2z4lgbzwx176s76v2p3nm1j8a53m136msjpcc6akq3nxvwkm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhbmltYXRpb25zIHRvIGRpZmZlcmVudCBpdGVtcyBhbmQgY3VzdG9taXplIHRoZW0uXG5cblBsZWFzZSByZXNldCB0aGUgZXh0ZW5zaW9uIGFmdGVyIHVwZGF0aW5nLiBUaGUgRXh0ZW5zaW9uIHdpbGwgc3RvcCB3aGVuIHVwZ3JhZGVkIHRvIGFuIGluY29tcGF0aWJsZSB2ZXJzaW9uLiBJbiB0aGF0IGNhc2UgYW4gVXBkYXRlIHRhYiBpcyBjcmVhdGVkIHRvIGVhc2lseSByZXNldCB0aGUgZXh0ZW5zaW9uLiBBIFJlc2V0IGJ1dHRvbiBpcyBhbHNvIGFsd2F5cyBwcmVzZW50IGluIHByZWZlcmVuY2VzIC0+IEFib3V0IFRhYi5cbiBBIERlZmF1bHQgc2hvcnRjdXQgY29tYmluYXRpb24gb2YgU3VwZXIgS2V5ICsgdCBpcyBwcm92aWRlZCB0byB0ZW1wb3JhcmlseSBkaXNhYmxlIHRoZSBleHRlbnNpb24gdW50aWwgR05PTUUgU2hlbGwgcmVzdGFydHMuIFxuXG5Tb21lIGVmZmVjdHMgbWlnaHQgbm90IHdvcmsgcHJvcGVybHkgb24gd2F5bGFuZCwgZm9yIHdoaWNoIGEgd29ya2Fyb3VuZCBpcyBwcm92aWRlZCBvbiBwcmVmZXJlbmNlcyAtPiBUd2Vha3MgdGFiLiBcbkhvd2V2ZXIsIHNvbWUgYW5pbWF0aW9ucyBtaWdodCBub3Qgd29yayBwcm9wZXJseS4iLAogICJuYW1lIjogIkFuaW1hdGlvbiBUd2Vha3MiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYW5pbWF0aW9uLXR3ZWFrcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJzdGF0dXMiOiAiICIsCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vU2VsZW5pdW0tSC9BbmltYXRpb24tVHdlYWtzIiwKICAidXVpZCI6ICJhbmltYXRpb24tdHdlYWtzQFNlbGVuaXVtLUgiLAogICJ2ZXJzaW9uIjogMTIKfQ=="}}}
-, {"uuid": "drawOnYourScreen@abakkk.framagit.org", "name": "Draw On You Screen", "pname": "draw-on-you-screen", "description": "Start drawing with Super+Alt+D and save your beautiful work by taking a screenshot\n\nFeatures :\n- Basic shapes (rectangle, circle, ellipse, line, curve, polygon, polyline, text, image, free)\n- Basic transformations (move, rotate, resize, stretch, mirror, inverse)\n- Smooth stroke\n- Draw over applications\n- Keep drawings on desktop background with persistence (notes, children's art ...)\n- Multi-monitor support\n- Export to SVG\n\nGNOME Shell 41 and later are not supported.", "link": "https://extensions.gnome.org/extension/1683/draw-on-you-screen/", "shell_version_map": {"38": {"version": "11", "sha256": "0bpf7x5fng1c2xj48mh27p5shfja0n79vs3bypmi5v6l4cgggq58", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRhdGEtZGlyIjogImRyYXdPbllvdXJTY3JlZW4iLAogICJkZXNjcmlwdGlvbiI6ICJTdGFydCBkcmF3aW5nIHdpdGggU3VwZXIrQWx0K0QgYW5kIHNhdmUgeW91ciBiZWF1dGlmdWwgd29yayBieSB0YWtpbmcgYSBzY3JlZW5zaG90XG5cbkZlYXR1cmVzIDpcbi0gQmFzaWMgc2hhcGVzIChyZWN0YW5nbGUsIGNpcmNsZSwgZWxsaXBzZSwgbGluZSwgY3VydmUsIHBvbHlnb24sIHBvbHlsaW5lLCB0ZXh0LCBpbWFnZSwgZnJlZSlcbi0gQmFzaWMgdHJhbnNmb3JtYXRpb25zIChtb3ZlLCByb3RhdGUsIHJlc2l6ZSwgc3RyZXRjaCwgbWlycm9yLCBpbnZlcnNlKVxuLSBTbW9vdGggc3Ryb2tlXG4tIERyYXcgb3ZlciBhcHBsaWNhdGlvbnNcbi0gS2VlcCBkcmF3aW5ncyBvbiBkZXNrdG9wIGJhY2tncm91bmQgd2l0aCBwZXJzaXN0ZW5jZSAobm90ZXMsIGNoaWxkcmVuJ3MgYXJ0IC4uLilcbi0gTXVsdGktbW9uaXRvciBzdXBwb3J0XG4tIEV4cG9ydCB0byBTVkdcblxuR05PTUUgU2hlbGwgNDEgYW5kIGxhdGVyIGFyZSBub3Qgc3VwcG9ydGVkLiIsCiAgImdldHRleHQtZG9tYWluIjogImRyYXctb24teW91ci1zY3JlZW4iLAogICJuYW1lIjogIkRyYXcgT24gWW91IFNjcmVlbiIsCiAgInBlcnNpc3RlbnQtZmlsZS1uYW1lIjogInBlcnNpc3RlbnQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZHJhdy1vbi15b3VyLXNjcmVlbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJzdmctZmlsZS1uYW1lIjogIkRyYXdPbllvdXJTY3JlZW4iLAogICJ1cmwiOiAiaHR0cHM6Ly9mcmFtYWdpdC5vcmcvYWJha2trL0RyYXdPbllvdXJTY3JlZW4iLAogICJ1dWlkIjogImRyYXdPbllvdXJTY3JlZW5AYWJha2trLmZyYW1hZ2l0Lm9yZyIsCiAgInZlcnNpb24iOiAxMQp9"}}}
-, {"uuid": "Always-Show-Titles-In-Overview@gmail.com", "name": "Always Show Titles In Overview", "pname": "always-show-titles-in-overview", "description": "This extension can be used to show titles of all thumbnails in the Gnome 3 overview.\n\nNOTE: The gnome 40 version does not support older gnome-shell", "link": "https://extensions.gnome.org/extension/1689/always-show-titles-in-overview/", "shell_version_map": {"38": {"version": "8", "sha256": "1gzf096a95sa8qga3azrvl6wnjnx58dhjj6i21ws9fndx4ildbf9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNhbiBiZSB1c2VkIHRvIHNob3cgdGl0bGVzIG9mIGFsbCB0aHVtYm5haWxzIGluIHRoZSBHbm9tZSAzIG92ZXJ2aWV3LlxuXG5OT1RFOiBUaGUgZ25vbWUgNDAgdmVyc2lvbiBkb2VzIG5vdCBzdXBwb3J0IG9sZGVyIGdub21lLXNoZWxsIiwKICAibmFtZSI6ICJBbHdheXMgU2hvdyBUaXRsZXMgSW4gT3ZlcnZpZXciLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzAuMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL25scHN1Z2UvQWx3YXlzLVNob3ctVGl0bGVzLUluLU92ZXJ2aWV3IiwKICAidXVpZCI6ICJBbHdheXMtU2hvdy1UaXRsZXMtSW4tT3ZlcnZpZXdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "40": {"version": "9", "sha256": "1h7zbxrh26ha26xhmhlhb9rzh0g400alkf59x232m3x64ykin2ys", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNhbiBiZSB1c2VkIHRvIHNob3cgdGl0bGVzIG9mIGFsbCB0aHVtYm5haWxzIGluIHRoZSBHbm9tZSAzIG92ZXJ2aWV3LlxuXG5OT1RFOiBUaGUgZ25vbWUgNDAgdmVyc2lvbiBkb2VzIG5vdCBzdXBwb3J0IG9sZGVyIGdub21lLXNoZWxsIiwKICAibmFtZSI6ICJBbHdheXMgU2hvdyBUaXRsZXMgSW4gT3ZlcnZpZXciLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmxwc3VnZS9BbHdheXMtU2hvdy1UaXRsZXMtSW4tT3ZlcnZpZXciLAogICJ1dWlkIjogIkFsd2F5cy1TaG93LVRpdGxlcy1Jbi1PdmVydmlld0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogOQp9"}}}
+, {"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 button is also always present in Preferences option in the 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 a workaround is provided on preferences -> Tweaks tab.\nHowever, some animations might not work properly.\n\nTo manage effect Delay time enable Show delay time in preferences option from Preferences -> Tweaks Tab\nand reopen preferences.", "link": "https://extensions.gnome.org/extension/1680/animation-tweaks/", "shell_version_map": {"38": {"version": "14", "sha256": "1vdid8mnbf8r7r7pw1a569rfib2jyvv6n630cd117cm130vsiivj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1lbnQiOiAiQWRkIGFuaW1hdGlvbnMgdG8gZGlmZmVyZW50IGl0ZW1zIGFuZCBjdXN0b21pemUgdGhlbS4iLAogICJkZXNjcmlwdGlvbiI6ICJBZGQgYW5pbWF0aW9ucyB0byBkaWZmZXJlbnQgaXRlbXMgYW5kIGN1c3RvbWl6ZSB0aGVtLlxuXG5QbGVhc2UgcmVzZXQgdGhlIGV4dGVuc2lvbiBhZnRlciB1cGRhdGluZy5cblRoZSBFeHRlbnNpb24gd2lsbCBzdG9wIHdoZW4gdXBncmFkZWQgdG8gYW4gaW5jb21wYXRpYmxlIHZlcnNpb24uXG5JbiB0aGF0IGNhc2UgYW4gVXBkYXRlIHRhYiBpcyBjcmVhdGVkIHRvIGVhc2lseSByZXNldCB0aGUgZXh0ZW5zaW9uLlxuQSBSZXNldCBidXR0b24gaXMgYWxzbyBhbHdheXMgcHJlc2VudCBpbiBQcmVmZXJlbmNlcyBvcHRpb24gaW4gdGhlIEFwcGxpY2F0aW9uIG1lbnUgb2YgdGhlIGV4dGVuc2lvbiBwcmVmZXJlbmNlcyB3aW5kb3cuXG5BIERlZmF1bHQgc2hvcnRjdXQgY29tYmluYXRpb24gb2YgU3VwZXIgS2V5ICsgdCBpcyBwcm92aWRlZCB0byBkaXNhYmxlIHRoZSBleHRlbnNpb24uXG5cblNvbWUgZWZmZWN0cyBtaWdodCBub3Qgd29yayBwcm9wZXJseSBvbiB3YXlsYW5kLCBmb3Igd2hpY2ggYSB3b3JrYXJvdW5kIGlzIHByb3ZpZGVkIG9uIHByZWZlcmVuY2VzIC0+IFR3ZWFrcyB0YWIuXG5Ib3dldmVyLCBzb21lIGFuaW1hdGlvbnMgbWlnaHQgbm90IHdvcmsgcHJvcGVybHkuXG5cblRvIG1hbmFnZSBlZmZlY3QgRGVsYXkgdGltZSBlbmFibGUgU2hvdyBkZWxheSB0aW1lIGluIHByZWZlcmVuY2VzIG9wdGlvbiBmcm9tIFByZWZlcmVuY2VzIC0+IFR3ZWFrcyBUYWJcbmFuZCByZW9wZW4gcHJlZmVyZW5jZXMuIiwKICAibmFtZSI6ICJBbmltYXRpb24gVHdlYWtzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJzdGF0dXMiOiAiIiwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TZWxlbml1bS1IL0FuaW1hdGlvbi1Ud2Vha3MiLAogICJ1dWlkIjogImFuaW1hdGlvbi10d2Vha3NAU2VsZW5pdW0tSCIsCiAgInZlcnNpb24iOiAxNAp9"}, "40": {"version": "14", "sha256": "1vdid8mnbf8r7r7pw1a569rfib2jyvv6n630cd117cm130vsiivj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1lbnQiOiAiQWRkIGFuaW1hdGlvbnMgdG8gZGlmZmVyZW50IGl0ZW1zIGFuZCBjdXN0b21pemUgdGhlbS4iLAogICJkZXNjcmlwdGlvbiI6ICJBZGQgYW5pbWF0aW9ucyB0byBkaWZmZXJlbnQgaXRlbXMgYW5kIGN1c3RvbWl6ZSB0aGVtLlxuXG5QbGVhc2UgcmVzZXQgdGhlIGV4dGVuc2lvbiBhZnRlciB1cGRhdGluZy5cblRoZSBFeHRlbnNpb24gd2lsbCBzdG9wIHdoZW4gdXBncmFkZWQgdG8gYW4gaW5jb21wYXRpYmxlIHZlcnNpb24uXG5JbiB0aGF0IGNhc2UgYW4gVXBkYXRlIHRhYiBpcyBjcmVhdGVkIHRvIGVhc2lseSByZXNldCB0aGUgZXh0ZW5zaW9uLlxuQSBSZXNldCBidXR0b24gaXMgYWxzbyBhbHdheXMgcHJlc2VudCBpbiBQcmVmZXJlbmNlcyBvcHRpb24gaW4gdGhlIEFwcGxpY2F0aW9uIG1lbnUgb2YgdGhlIGV4dGVuc2lvbiBwcmVmZXJlbmNlcyB3aW5kb3cuXG5BIERlZmF1bHQgc2hvcnRjdXQgY29tYmluYXRpb24gb2YgU3VwZXIgS2V5ICsgdCBpcyBwcm92aWRlZCB0byBkaXNhYmxlIHRoZSBleHRlbnNpb24uXG5cblNvbWUgZWZmZWN0cyBtaWdodCBub3Qgd29yayBwcm9wZXJseSBvbiB3YXlsYW5kLCBmb3Igd2hpY2ggYSB3b3JrYXJvdW5kIGlzIHByb3ZpZGVkIG9uIHByZWZlcmVuY2VzIC0+IFR3ZWFrcyB0YWIuXG5Ib3dldmVyLCBzb21lIGFuaW1hdGlvbnMgbWlnaHQgbm90IHdvcmsgcHJvcGVybHkuXG5cblRvIG1hbmFnZSBlZmZlY3QgRGVsYXkgdGltZSBlbmFibGUgU2hvdyBkZWxheSB0aW1lIGluIHByZWZlcmVuY2VzIG9wdGlvbiBmcm9tIFByZWZlcmVuY2VzIC0+IFR3ZWFrcyBUYWJcbmFuZCByZW9wZW4gcHJlZmVyZW5jZXMuIiwKICAibmFtZSI6ICJBbmltYXRpb24gVHdlYWtzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJzdGF0dXMiOiAiIiwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TZWxlbml1bS1IL0FuaW1hdGlvbi1Ud2Vha3MiLAogICJ1dWlkIjogImFuaW1hdGlvbi10d2Vha3NAU2VsZW5pdW0tSCIsCiAgInZlcnNpb24iOiAxNAp9"}}}
+, {"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": "Show titles of all thumbnails in the Gnome 3 overview.", "link": "https://extensions.gnome.org/extension/1689/always-show-titles-in-overview/", "shell_version_map": {"38": {"version": "10", "sha256": "134xr99qsrz0z56nrgp5frjmzk3jk38sh6hix394a7mm8y5wx304", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGl0bGVzIG9mIGFsbCB0aHVtYm5haWxzIGluIHRoZSBHbm9tZSAzIG92ZXJ2aWV3LiIsCiAgIm5hbWUiOiAiQWx3YXlzIFNob3cgVGl0bGVzIEluIE92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmxwc3VnZS9BbHdheXMtU2hvdy1UaXRsZXMtSW4tT3ZlcnZpZXciLAogICJ1dWlkIjogIkFsd2F5cy1TaG93LVRpdGxlcy1Jbi1PdmVydmlld0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTAKfQ=="}, "40": {"version": "9", "sha256": "0jan9fzfjkclm9m6ckngzp7j203vwbcn3m7njyl498zsqr81ar8g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGl0bGVzIG9mIGFsbCB0aHVtYm5haWxzIGluIHRoZSBHbm9tZSAzIG92ZXJ2aWV3LiIsCiAgIm5hbWUiOiAiQWx3YXlzIFNob3cgVGl0bGVzIEluIE92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL25scHN1Z2UvQWx3YXlzLVNob3ctVGl0bGVzLUluLU92ZXJ2aWV3IiwKICAidXVpZCI6ICJBbHdheXMtU2hvdy1UaXRsZXMtSW4tT3ZlcnZpZXdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
 , {"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=="}}}
-, {"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": "11", "sha256": "1c7jwx4l1izn4rzv7jnz1gmgshcjn6xj8xdlfzkn0j7fnnjnw4q4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5nIGJhY2sgdGhlIHRyYW5zcGFyZW50IHRvcCBiYXIgd2hlbiBmcmVlLWZsb2F0aW5nIGluIEdOT01FIFNoZWxsIDMuMzIuXG5cblRoaXMgYmFzaWNhbGx5IGNvbWVzIGZyb20gdGhlIGZlYXR1cmUgaW1wbGVtZW50YXRpb24gcmVtb3ZlZCBpbiBHTk9NRSBTaGVsbCAzLjMyLCBhbmQgSSBtb2RpZmllZCB0aGUgY29kZSBhIGJpdCB0byBtYWtlIGl0IGFuIGV4dGVuc2lvbi4gRW5qb3khIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgQmFyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3poYW5naGFpL2dub21lLXNoZWxsLWV4dGVuc2lvbi10cmFuc3BhcmVudC10b3AtYmFyIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudC10b3AtYmFyQHpoYW5naGFpLm1lIiwKICAidmVyc2lvbiI6IDExCn0="}}}
+, {"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": "12", "sha256": "0ir6apfpjihwdbxlpa30jgvqn47f14xs9aplz4rrya9h51zf55jl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5nIGJhY2sgdGhlIHRyYW5zcGFyZW50IHRvcCBiYXIgd2hlbiBmcmVlLWZsb2F0aW5nIGluIEdOT01FIFNoZWxsIDMuMzIuXG5cblRoaXMgYmFzaWNhbGx5IGNvbWVzIGZyb20gdGhlIGZlYXR1cmUgaW1wbGVtZW50YXRpb24gcmVtb3ZlZCBpbiBHTk9NRSBTaGVsbCAzLjMyLCBhbmQgSSBtb2RpZmllZCB0aGUgY29kZSBhIGJpdCB0byBtYWtlIGl0IGFuIGV4dGVuc2lvbi4gRW5qb3khIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgQmFyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3poYW5naGFpL2dub21lLXNoZWxsLWV4dGVuc2lvbi10cmFuc3BhcmVudC10b3AtYmFyIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudC10b3AtYmFyQHpoYW5naGFpLm1lIiwKICAidmVyc2lvbiI6IDEyCn0="}}}
 , {"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": "8", "sha256": "1i55s7mdrsgfb5lmxyvpfnbn4d822miqwb1n8s8hq7nsh4v9xrha", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgU1NIIHNlYXJjaCByZXN1bHRzIGluIG92ZXJ2aWV3LlxuXG5UaGlzIGlzIGEgZm9yayBvZiB0aGUgb3JpZ2luYWwgXCJTU0ggU2VhcmNoIFByb3ZpZGVyXCIsIHVwZGF0ZWQgdG8gd29yayB3aXRoIG5ld2VyIEdub21lLVNoZWxscy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAibmFtZSI6ICJTU0ggU2VhcmNoIFByb3ZpZGVyIFJlYm9ybiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRi1pLWYvc3NoLXNlYXJjaC1wcm92aWRlciIsCiAgInV1aWQiOiAic3NoLXNlYXJjaC1wcm92aWRlckBleHRlbnNpb25zLmdub21lLXNoZWxsLmZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInY4LTAtZzM0YjYyYTEiLAogICJ2ZXJzaW9uIjogOAp9"}, "40": {"version": "8", "sha256": "1i55s7mdrsgfb5lmxyvpfnbn4d822miqwb1n8s8hq7nsh4v9xrha", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgU1NIIHNlYXJjaCByZXN1bHRzIGluIG92ZXJ2aWV3LlxuXG5UaGlzIGlzIGEgZm9yayBvZiB0aGUgb3JpZ2luYWwgXCJTU0ggU2VhcmNoIFByb3ZpZGVyXCIsIHVwZGF0ZWQgdG8gd29yayB3aXRoIG5ld2VyIEdub21lLVNoZWxscy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAibmFtZSI6ICJTU0ggU2VhcmNoIFByb3ZpZGVyIFJlYm9ybiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRi1pLWYvc3NoLXNlYXJjaC1wcm92aWRlciIsCiAgInV1aWQiOiAic3NoLXNlYXJjaC1wcm92aWRlckBleHRlbnNpb25zLmdub21lLXNoZWxsLmZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInY4LTAtZzM0YjYyYTEiLAogICJ2ZXJzaW9uIjogOAp9"}}}
 , {"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": "8", "sha256": "0d84v6rn0k1rpkin0fnj5halfhk0z7mh36s8n3g7y653r0fn76vv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIi4uLiBvciBtYXliZSBub3QsIGFuZCB0aGF0J3Mgd2h5IHRoZSBzdGFydCBkYXkgaXMgY29uZmlndXJhYmxlIGluIHRoZSBwcmVmZXJlbmNlcy5cblxuVGhpcyBpcyBhbiB1cGRhdGVkIHZlcnNpb24gb2YgdGhlIFwiV2Vla3MgU3RhcnQgb24gTW9uZGF5XCIgZXh0ZW5zaW9uIGZvciBuZXdlciBHbm9tZSBTaGVsbHMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAibmFtZSI6ICJXZWVrcyBTdGFydCBvbiBNb25kYXkgQWdhaW4uLi4iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRi1pLWYvd2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAidXVpZCI6ICJ3ZWVrcy1zdGFydC1vbi1tb25kYXlAZXh0ZW5zaW9ucy5nbm9tZS1zaGVsbC5maWZpLm9yZyIsCiAgInZjc19yZXZpc2lvbiI6ICJ2OC0wLWc4M2RlNGE0IiwKICAidmVyc2lvbiI6IDgKfQ=="}, "40": {"version": "8", "sha256": "0d84v6rn0k1rpkin0fnj5halfhk0z7mh36s8n3g7y653r0fn76vv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIi4uLiBvciBtYXliZSBub3QsIGFuZCB0aGF0J3Mgd2h5IHRoZSBzdGFydCBkYXkgaXMgY29uZmlndXJhYmxlIGluIHRoZSBwcmVmZXJlbmNlcy5cblxuVGhpcyBpcyBhbiB1cGRhdGVkIHZlcnNpb24gb2YgdGhlIFwiV2Vla3MgU3RhcnQgb24gTW9uZGF5XCIgZXh0ZW5zaW9uIGZvciBuZXdlciBHbm9tZSBTaGVsbHMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAibmFtZSI6ICJXZWVrcyBTdGFydCBvbiBNb25kYXkgQWdhaW4uLi4iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRi1pLWYvd2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAidXVpZCI6ICJ3ZWVrcy1zdGFydC1vbi1tb25kYXlAZXh0ZW5zaW9ucy5nbm9tZS1zaGVsbC5maWZpLm9yZyIsCiAgInZjc19yZXZpc2lvbiI6ICJ2OC0wLWc4M2RlNGE0IiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
 , {"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": "8", "sha256": "1lynrwjc6ps8s84y2zjf7rfc0shq84c7dz17p83h4yzd3hl9cqri", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSB0aXRsZSBiYXJzIGZvciBub24tR1RLIGFwcHMgd2l0aCBtaW5pbWFsIGludGVyZmVyZW5jZSB3aXRoIHRoZSBkZWZhdWx0IHdvcmtmbG93IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RrdGl0bGViYXIiLAogICJuYW1lIjogIkdUSyBUaXRsZSBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ3RrdGl0bGViYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdmVsaXRhc2FsaS9ndGt0aXRsZWJhciIsCiAgInV1aWQiOiAiZ3RrdGl0bGViYXJAdmVsaXRhc2FsaS5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogOAp9"}}}
 , {"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": "Simple extension to show your LAN IP address on the GNOME panel.  This is the address that other computers on your LAN would use to connect to your computer. \n\nDoes not show loopback addresses (127.0.0.0/8) or Docker bridge networks.\n\nDoes not show your Internet (public) IP address unless you are directly connected to the Internet with no intermediate NAT router (uncommon, except for devices with built-in LTE data connections).\n\nThis extension also respects your privacy and bandwidth, as it makes absolutely zero requests to the Internet and sends zero packets to the Internet.  The plugin gets its information from your local routing table (output of `ip route`) and only displays the result in the GNOME panel, and this information never leaves your computer.", "link": "https://extensions.gnome.org/extension/1762/lan-ip-address/", "shell_version_map": {"38": {"version": "7", "sha256": "0yfh5xzh9msdhpx1cxxryzjb07p9rvgfvcnyf41mq5p73b2j4m22", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBleHRlbnNpb24gdG8gc2hvdyB5b3VyIExBTiBJUCBhZGRyZXNzIG9uIHRoZSBHTk9NRSBwYW5lbC4gIFRoaXMgaXMgdGhlIGFkZHJlc3MgdGhhdCBvdGhlciBjb21wdXRlcnMgb24geW91ciBMQU4gd291bGQgdXNlIHRvIGNvbm5lY3QgdG8geW91ciBjb21wdXRlci4gXG5cbkRvZXMgbm90IHNob3cgbG9vcGJhY2sgYWRkcmVzc2VzICgxMjcuMC4wLjAvOCkgb3IgRG9ja2VyIGJyaWRnZSBuZXR3b3Jrcy5cblxuRG9lcyBub3Qgc2hvdyB5b3VyIEludGVybmV0IChwdWJsaWMpIElQIGFkZHJlc3MgdW5sZXNzIHlvdSBhcmUgZGlyZWN0bHkgY29ubmVjdGVkIHRvIHRoZSBJbnRlcm5ldCB3aXRoIG5vIGludGVybWVkaWF0ZSBOQVQgcm91dGVyICh1bmNvbW1vbiwgZXhjZXB0IGZvciBkZXZpY2VzIHdpdGggYnVpbHQtaW4gTFRFIGRhdGEgY29ubmVjdGlvbnMpLlxuXG5UaGlzIGV4dGVuc2lvbiBhbHNvIHJlc3BlY3RzIHlvdXIgcHJpdmFjeSBhbmQgYmFuZHdpZHRoLCBhcyBpdCBtYWtlcyBhYnNvbHV0ZWx5IHplcm8gcmVxdWVzdHMgdG8gdGhlIEludGVybmV0IGFuZCBzZW5kcyB6ZXJvIHBhY2tldHMgdG8gdGhlIEludGVybmV0LiAgVGhlIHBsdWdpbiBnZXRzIGl0cyBpbmZvcm1hdGlvbiBmcm9tIHlvdXIgbG9jYWwgcm91dGluZyB0YWJsZSAob3V0cHV0IG9mIGBpcCByb3V0ZWApIGFuZCBvbmx5IGRpc3BsYXlzIHRoZSByZXN1bHQgaW4gdGhlIEdOT01FIHBhbmVsLCBhbmQgdGhpcyBpbmZvcm1hdGlvbiBuZXZlciBsZWF2ZXMgeW91ciBjb21wdXRlci4iLAogICJuYW1lIjogIkxBTiBJUCBBZGRyZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0pvc2hvbGl0aC9nbm9tZS1leHRlbnNpb24tbGFuLWlwLWFkZHJlc3MiLAogICJ1dWlkIjogImxhbi1pcC1hZGRyZXNzQG1yaHViZXIuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "0yfh5xzh9msdhpx1cxxryzjb07p9rvgfvcnyf41mq5p73b2j4m22", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBleHRlbnNpb24gdG8gc2hvdyB5b3VyIExBTiBJUCBhZGRyZXNzIG9uIHRoZSBHTk9NRSBwYW5lbC4gIFRoaXMgaXMgdGhlIGFkZHJlc3MgdGhhdCBvdGhlciBjb21wdXRlcnMgb24geW91ciBMQU4gd291bGQgdXNlIHRvIGNvbm5lY3QgdG8geW91ciBjb21wdXRlci4gXG5cbkRvZXMgbm90IHNob3cgbG9vcGJhY2sgYWRkcmVzc2VzICgxMjcuMC4wLjAvOCkgb3IgRG9ja2VyIGJyaWRnZSBuZXR3b3Jrcy5cblxuRG9lcyBub3Qgc2hvdyB5b3VyIEludGVybmV0IChwdWJsaWMpIElQIGFkZHJlc3MgdW5sZXNzIHlvdSBhcmUgZGlyZWN0bHkgY29ubmVjdGVkIHRvIHRoZSBJbnRlcm5ldCB3aXRoIG5vIGludGVybWVkaWF0ZSBOQVQgcm91dGVyICh1bmNvbW1vbiwgZXhjZXB0IGZvciBkZXZpY2VzIHdpdGggYnVpbHQtaW4gTFRFIGRhdGEgY29ubmVjdGlvbnMpLlxuXG5UaGlzIGV4dGVuc2lvbiBhbHNvIHJlc3BlY3RzIHlvdXIgcHJpdmFjeSBhbmQgYmFuZHdpZHRoLCBhcyBpdCBtYWtlcyBhYnNvbHV0ZWx5IHplcm8gcmVxdWVzdHMgdG8gdGhlIEludGVybmV0IGFuZCBzZW5kcyB6ZXJvIHBhY2tldHMgdG8gdGhlIEludGVybmV0LiAgVGhlIHBsdWdpbiBnZXRzIGl0cyBpbmZvcm1hdGlvbiBmcm9tIHlvdXIgbG9jYWwgcm91dGluZyB0YWJsZSAob3V0cHV0IG9mIGBpcCByb3V0ZWApIGFuZCBvbmx5IGRpc3BsYXlzIHRoZSByZXN1bHQgaW4gdGhlIEdOT01FIHBhbmVsLCBhbmQgdGhpcyBpbmZvcm1hdGlvbiBuZXZlciBsZWF2ZXMgeW91ciBjb21wdXRlci4iLAogICJuYW1lIjogIkxBTiBJUCBBZGRyZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0pvc2hvbGl0aC9nbm9tZS1leHRlbnNpb24tbGFuLWlwLWFkZHJlc3MiLAogICJ1dWlkIjogImxhbi1pcC1hZGRyZXNzQG1yaHViZXIuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"uuid": "colortint@matt.serverus.co.uk", "name": "ColorTint", "pname": "colortint", "description": "Tint your desktop with a color of your choice to help with dyslexia, visual stress, scopic sensitivity, and related conditions.", "link": "https://extensions.gnome.org/extension/1789/colortint/", "shell_version_map": {"40": {"version": "7", "sha256": "1ggf4xlnyfxhl3fsl8ljdj0izipx2v8kxpnhhqz7w397a0r9q121", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbnQgeW91ciBkZXNrdG9wIHdpdGggYSBjb2xvciBvZiB5b3VyIGNob2ljZSB0byBoZWxwIHdpdGggZHlzbGV4aWEsIHZpc3VhbCBzdHJlc3MsIHNjb3BpYyBzZW5zaXRpdml0eSwgYW5kIHJlbGF0ZWQgY29uZGl0aW9ucy4iLAogICJuYW1lIjogIkNvbG9yVGludCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9NYXR0QnlOYW1lL2NvbG9yLXRpbnQiLAogICJ1dWlkIjogImNvbG9ydGludEBtYXR0LnNlcnZlcnVzLmNvLnVrIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"uuid": "sermon@rovellipaolo-gmail.com", "name": "SerMon: Service Monitor", "pname": "sermon", "description": "SerMon: an extension for monitoring and managing systemd services, cron jobs, docker and podman containers", "link": "https://extensions.gnome.org/extension/1804/sermon/", "shell_version_map": {"38": {"version": "15", "sha256": "0g2m7gfdgbd1fcnxk6jldw50n4962wgcmwvmgqxdd7xna5a73mrh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlck1vbjogYW4gZXh0ZW5zaW9uIGZvciBtb25pdG9yaW5nIGFuZCBtYW5hZ2luZyBzeXN0ZW1kIHNlcnZpY2VzLCBjcm9uIGpvYnMsIGRvY2tlciBhbmQgcG9kbWFuIGNvbnRhaW5lcnMiLAogICJuYW1lIjogIlNlck1vbjogU2VydmljZSBNb25pdG9yIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNlcm1vbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yb3ZlbGxpcGFvbG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNlcm1vbiIsCiAgInV1aWQiOiAic2VybW9uQHJvdmVsbGlwYW9sby1nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTUKfQ=="}, "40": {"version": "15", "sha256": "0g2m7gfdgbd1fcnxk6jldw50n4962wgcmwvmgqxdd7xna5a73mrh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlck1vbjogYW4gZXh0ZW5zaW9uIGZvciBtb25pdG9yaW5nIGFuZCBtYW5hZ2luZyBzeXN0ZW1kIHNlcnZpY2VzLCBjcm9uIGpvYnMsIGRvY2tlciBhbmQgcG9kbWFuIGNvbnRhaW5lcnMiLAogICJuYW1lIjogIlNlck1vbjogU2VydmljZSBNb25pdG9yIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNlcm1vbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yb3ZlbGxpcGFvbG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNlcm1vbiIsCiAgInV1aWQiOiAic2VybW9uQHJvdmVsbGlwYW9sby1nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTUKfQ=="}}}
-, {"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": "36", "sha256": "0xqvzzfixd6fpn1pzda7a6byn4ys1wii10ypa1rssf27kx3ii6l3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYW5zbGF0ZSB3b3JkIG9uIHRoZSBzY3JlZW4uXG5EZWZhdWx0IHdlYiBhZGRyZXNzIGlzIHRyYW5zbGF0ZS5nb29nbGUuY29tLCB5b3UgY2FuIGFkZCB0aGUgd2ViIGFkZHJlc3MgZm9yIHlvdXIgb3duIGxhbmd1YWdlLiBBbHNvIHlvdSBjYW4gY29udHJpYnV0ZSB5b3VyIHdlYiBhZGRyZXNzIHRvIG15IGdpdGh1YiByZXBvLlxuVXNlIGhvdGtleSBDdHJsK0FsdCtqIHRvIHRvZ2dsZSB0aGUgZnVuY3Rpb24uXG5Vc2UgaG90a2V5IEN0cmwrQWx0K28gdG8gc2hvdyBwb3B1cCB3aW5kb3ciLAogICJuYW1lIjogIlNjcmVlbiB3b3JkIHRyYW5zbGF0ZSIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAic3VuLnd4Z0BnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3Vud3hnL2dub21lLXNoZWxsLWV4dGVuc2lvbi1kaWN0IiwKICAidXVpZCI6ICJkaWN0QHN1bi53eGdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDM2Cn0="}}}
+, {"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": "37", "sha256": "1b97yx0a6j43sl7s3mi7kacv71g0zhvyd5dl2h9vm8g3gf375880", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYW5zbGF0ZSB3b3JkIG9uIHRoZSBzY3JlZW4uXG5EZWZhdWx0IHdlYiBhZGRyZXNzIGlzIHRyYW5zbGF0ZS5nb29nbGUuY29tLCB5b3UgY2FuIGFkZCB0aGUgd2ViIGFkZHJlc3MgZm9yIHlvdXIgb3duIGxhbmd1YWdlLiBBbHNvIHlvdSBjYW4gY29udHJpYnV0ZSB5b3VyIHdlYiBhZGRyZXNzIHRvIG15IGdpdGh1YiByZXBvLlxuVXNlIGhvdGtleSBDdHJsK0FsdCtqIHRvIHRvZ2dsZSB0aGUgZnVuY3Rpb24uXG5Vc2UgaG90a2V5IEN0cmwrQWx0K28gdG8gc2hvdyBwb3B1cCB3aW5kb3ciLAogICJuYW1lIjogIlNjcmVlbiB3b3JkIHRyYW5zbGF0ZSIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAic3VuLnd4Z0BnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3Vud3hnL2dub21lLXNoZWxsLWV4dGVuc2lvbi1kaWN0IiwKICAidXVpZCI6ICJkaWN0QHN1bi53eGdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDM3Cn0="}}}
+, {"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": "5", "sha256": "1nj4k7h872zmx4q44z9qzg8rxx1sqqbj8rd4am5xkn1zc8y65kg6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN0YXR1cyBpbmRpY2F0b3IgZm9yIEdhbWVNb2RlIiwKICAiZXh0ZW5zaW9uLWlkIjogImdhbWVtb2RlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ2FtZW1vZGUtZXh0ZW5zaW9uIiwKICAibmFtZSI6ICJHYW1lTW9kZSIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJja2VsbG5lckByZWRoYXQuY29tIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdhbWVtb2RlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dpY21vL2dhbWVtb2RlLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiZ2FtZW1vZGVAY2hyaXN0aWFuLmtlbGxuZXIubWUiLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "5", "sha256": "1nj4k7h872zmx4q44z9qzg8rxx1sqqbj8rd4am5xkn1zc8y65kg6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN0YXR1cyBpbmRpY2F0b3IgZm9yIEdhbWVNb2RlIiwKICAiZXh0ZW5zaW9uLWlkIjogImdhbWVtb2RlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ2FtZW1vZGUtZXh0ZW5zaW9uIiwKICAibmFtZSI6ICJHYW1lTW9kZSIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJja2VsbG5lckByZWRoYXQuY29tIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdhbWVtb2RlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dpY21vL2dhbWVtb2RlLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiZ2FtZW1vZGVAY2hyaXN0aWFuLmtlbGxuZXIubWUiLAogICJ2ZXJzaW9uIjogNQp9"}}}
 , {"uuid": "unredirect@vaina.lt", "name": "Disable unredirect fullscreen windows", "pname": "disable-unredirect-fullscreen-windows", "description": "Disables unredirect fullscreen windows in gnome-shell to workaround https://bugzilla.redhat.com/show_bug.cgi?id=767397 and https://bugzilla.gnome.org/show_bug.cgi?id=738719", "link": "https://extensions.gnome.org/extension/1873/disable-unredirect-fullscreen-windows/", "shell_version_map": {"38": {"version": "3", "sha256": "1xy3rdby56645028khwjp3ir6pkj1sany8sqysm94pb0pha7q3rm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGVzIHVucmVkaXJlY3QgZnVsbHNjcmVlbiB3aW5kb3dzIGluIGdub21lLXNoZWxsIHRvIHdvcmthcm91bmQgaHR0cHM6Ly9idWd6aWxsYS5yZWRoYXQuY29tL3Nob3dfYnVnLmNnaT9pZD03NjczOTcgYW5kIGh0dHBzOi8vYnVnemlsbGEuZ25vbWUub3JnL3Nob3dfYnVnLmNnaT9pZD03Mzg3MTkiLAogICJuYW1lIjogIkRpc2FibGUgdW5yZWRpcmVjdCBmdWxsc2NyZWVuIHdpbmRvd3MiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIkthemltaWVyYXMgVmFpbmEiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMiIsCiAgICAiMy40IiwKICAgICIzLjYiLAogICAgIjMuOCIsCiAgICAiMy4xMCIsCiAgICAiMy4xMiIsCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4zMCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rYXp5c21hc3Rlci9nbm9tZS1zaGVsbC1leHRlbnNpb24tZGlzYWJsZS11bnJlZGlyZWN0IiwKICAidXVpZCI6ICJ1bnJlZGlyZWN0QHZhaW5hLmx0IiwKICAidmVyc2lvbiI6IDMKfQ=="}, "40": {"version": "3", "sha256": "1xy3rdby56645028khwjp3ir6pkj1sany8sqysm94pb0pha7q3rm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGVzIHVucmVkaXJlY3QgZnVsbHNjcmVlbiB3aW5kb3dzIGluIGdub21lLXNoZWxsIHRvIHdvcmthcm91bmQgaHR0cHM6Ly9idWd6aWxsYS5yZWRoYXQuY29tL3Nob3dfYnVnLmNnaT9pZD03NjczOTcgYW5kIGh0dHBzOi8vYnVnemlsbGEuZ25vbWUub3JnL3Nob3dfYnVnLmNnaT9pZD03Mzg3MTkiLAogICJuYW1lIjogIkRpc2FibGUgdW5yZWRpcmVjdCBmdWxsc2NyZWVuIHdpbmRvd3MiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIkthemltaWVyYXMgVmFpbmEiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMiIsCiAgICAiMy40IiwKICAgICIzLjYiLAogICAgIjMuOCIsCiAgICAiMy4xMCIsCiAgICAiMy4xMiIsCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4zMCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rYXp5c21hc3Rlci9nbm9tZS1zaGVsbC1leHRlbnNpb24tZGlzYWJsZS11bnJlZGlyZWN0IiwKICAidXVpZCI6ICJ1bnJlZGlyZWN0QHZhaW5hLmx0IiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
-, {"uuid": "krypto@sereneblue", "name": "krypto", "pname": "krypto", "description": "Display cryptocurrency prices in top bar", "link": "https://extensions.gnome.org/extension/1913/krypto/", "shell_version_map": {"38": {"version": "5", "sha256": "0yn7ykknismw03lwi4m6a37c00cpbdysg9c437qrkvvq5givgwfs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgY3J5cHRvY3VycmVuY3kgcHJpY2VzIGluIHRvcCBiYXIiLAogICJuYW1lIjogImtyeXB0byIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NlcmVuZWJsdWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWtyeXB0byIsCiAgInV1aWQiOiAia3J5cHRvQHNlcmVuZWJsdWUiLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "6", "sha256": "03pxbcw9csbs9bv6avh8yaf1lhai6ij6997xw7b87frl272w2dac", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgY3J5cHRvY3VycmVuY3kgcHJpY2VzIGluIHRvcCBiYXIiLAogICJuYW1lIjogImtyeXB0byIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NlcmVuZWJsdWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWtyeXB0byIsCiAgInV1aWQiOiAia3J5cHRvQHNlcmVuZWJsdWUiLAogICJ2ZXJzaW9uIjogNgp9"}}}
+, {"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": "7", "sha256": "0018xdahl3900j9dqjs2gqnrrknrdx78vp8rkmd3v4276ampx9cb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyeXB0b2N1cnJlbmN5IHV0aWxpdHkiLAogICJuYW1lIjogImtyeXB0byIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zZXJlbmVibHVlL2dub21lLXNoZWxsLWV4dGVuc2lvbi1rcnlwdG8iLAogICJ1dWlkIjogImtyeXB0b0BzZXJlbmVibHVlIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"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="}}}
-, {"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 and higher (check version availability for details).\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": "1c4i183nmhg1wd49a3jh33wb708qb168xg3b35d0idfxhiwcjc8p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vIFRpdGxlIEJhciByZW1vdmVzIHRoZSB0aXRsZSBiYXIgZnJvbSBub24tR1RLIGFwcGxpY2F0aW9ucyBhbmQgbW92ZXMgdGhlIHdpbmRvdyB0aXRsZSBhbmQgYnV0dG9ucyB0byB0aGUgdG9wIHBhbmVsLlxuXG5UaXRsZWJhcnMgYXJlIGFsc28gaGlkZGVuIGZvciBXYXlsYW5kLW5hdGl2ZSBjbGllbnRzIHRoYXQgZG9uJ3QgdXNlIENTRC4gU29tZSBvZiB0aGUgb3B0aW9ucyBtYXkgYmUgaW5jb21wYXRpYmxlIHdpdGggdGhpcy4gRm9yIGlzc3VlcyBvbiBXYXlsYW5kIHBsZWFzZSB2aXNpdCBnaXRodWIhXG5cblRoaXMgaXMgYSBmb3JrIG9mIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzEyNjcvbm8tdGl0bGUtYmFyLyB3aXRoIGFkZGVkIGNvbXBhdGliaWxpdHkgZm9yIEdub21lIDMuMzIgYW5kIGhpZ2hlciAoY2hlY2sgdmVyc2lvbiBhdmFpbGFiaWxpdHkgZm9yIGRldGFpbHMpLlxuXG5UaGlzIGV4dGVuc2lvbiBkZXBlbmRzIG9uIHNvbWUgWG9yZyB1dGlsaXRpZXMuIFRvIGluc3RhbGwgdGhlbTpcblxuXHUyNmFiIERlYmlhbi9VYnVudHU6IGFwdCBpbnN0YWxsIHgxMS11dGlsc1xuXHUyNmFiIEZlZG9yYS9SSEVMOiBkbmYgaW5zdGFsbCB4b3JnLXgxMS11dGlsc1xuXHUyNmFiIEFyY2g6IHBhY21hbiAtUyB4b3JnLXhwcm9wIiwKICAibmFtZSI6ICJObyBUaXRsZSBCYXIgLSBGb3JrZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9wb2VobGVyai9uby10aXRsZS1iYXIiLAogICJ1dWlkIjogIm5vLXRpdGxlLWJhckBqb25hc3BvZWhsZXIuZGUiLAogICJ2ZXJzaW9uIjogNQp9"}}}
+, {"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 overview if it's showing.", "link": "https://extensions.gnome.org/extension/2036/show-application-view-when-workspace-empty/", "shell_version_map": {"38": {"version": "16", "sha256": "11l8p1f62kf73jwq1idhqanjhmml6cwkffy1brqihczvg88pdzdy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIHRoZSBhcHBsaWNhdGlvbiB2aWV3IHdoZW4gdGhlIHdvcmtzcGFjZSBpcyBvciBiZWNvbWVzIGVtcHR5LCBzdWNoIGFzIHN3aXRjaGluZyB0byBhbiBlbXB0eSB3b3Jrc3BhY2UsIHdoZW4gYWxsIHdpbmRvd3Mgb24gYSB3b3Jrc3BhY2UgYXJlIGNsb3NlZCwgb3IgYWZ0ZXIgbG9naW4uIFN0YXJ0aW5nIGFwcGxpY2F0aW9ucyBvciBzd2l0Y2hpbmcgdG8gYSB3b3Jrc3BhY2Ugd2l0aCBvcGVuIHdpbmRvd3Mgd2lsbCBoaWRlIHRoZSBvdmVydmlldyBpZiBpdCdzIHNob3dpbmcuIiwKICAibmFtZSI6ICJTaG93IEFwcGxpY2F0aW9uIFZpZXcgV2hlbiBXb3Jrc3BhY2UgRW1wdHkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImFwcGxpY2F0aW9uX3ZpZXdfd2hlbl9lbXB0eUBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAxNgp9"}, "40": {"version": "16", "sha256": "11l8p1f62kf73jwq1idhqanjhmml6cwkffy1brqihczvg88pdzdy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIHRoZSBhcHBsaWNhdGlvbiB2aWV3IHdoZW4gdGhlIHdvcmtzcGFjZSBpcyBvciBiZWNvbWVzIGVtcHR5LCBzdWNoIGFzIHN3aXRjaGluZyB0byBhbiBlbXB0eSB3b3Jrc3BhY2UsIHdoZW4gYWxsIHdpbmRvd3Mgb24gYSB3b3Jrc3BhY2UgYXJlIGNsb3NlZCwgb3IgYWZ0ZXIgbG9naW4uIFN0YXJ0aW5nIGFwcGxpY2F0aW9ucyBvciBzd2l0Y2hpbmcgdG8gYSB3b3Jrc3BhY2Ugd2l0aCBvcGVuIHdpbmRvd3Mgd2lsbCBoaWRlIHRoZSBvdmVydmlldyBpZiBpdCdzIHNob3dpbmcuIiwKICAibmFtZSI6ICJTaG93IEFwcGxpY2F0aW9uIFZpZXcgV2hlbiBXb3Jrc3BhY2UgRW1wdHkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImFwcGxpY2F0aW9uX3ZpZXdfd2hlbl9lbXB0eUBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAxNgp9"}}}
 , {"uuid": "activities_icon_menu@fawtytoo", "name": "Activities Icon Menu", "pname": "activities-menu-for-apps-and-windows", "description": "This extension turns the Activities button into a popup menu with icons for selecting either Applications or Workspaces in the Overview. Selecting the same view again will hide the overview.\n\nThis is particularly useful for tablet users that find the Activities button difficult to click on, whereas a menu can be more easily invoked.", "link": "https://extensions.gnome.org/extension/2048/activities-menu-for-apps-and-windows/", "shell_version_map": {"38": {"version": "9", "sha256": "1m10b1azwvj2b8s12xiwly21if27pcl1x4my411rgy5a5z3qm4j5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHR1cm5zIHRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBpbnRvIGEgcG9wdXAgbWVudSB3aXRoIGljb25zIGZvciBzZWxlY3RpbmcgZWl0aGVyIEFwcGxpY2F0aW9ucyBvciBXb3Jrc3BhY2VzIGluIHRoZSBPdmVydmlldy4gU2VsZWN0aW5nIHRoZSBzYW1lIHZpZXcgYWdhaW4gd2lsbCBoaWRlIHRoZSBvdmVydmlldy5cblxuVGhpcyBpcyBwYXJ0aWN1bGFybHkgdXNlZnVsIGZvciB0YWJsZXQgdXNlcnMgdGhhdCBmaW5kIHRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBkaWZmaWN1bHQgdG8gY2xpY2sgb24sIHdoZXJlYXMgYSBtZW51IGNhbiBiZSBtb3JlIGVhc2lseSBpbnZva2VkLiIsCiAgIm5hbWUiOiAiQWN0aXZpdGllcyBJY29uIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImFjdGl2aXRpZXNfaWNvbl9tZW51QGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "40": {"version": "9", "sha256": "1m10b1azwvj2b8s12xiwly21if27pcl1x4my411rgy5a5z3qm4j5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHR1cm5zIHRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBpbnRvIGEgcG9wdXAgbWVudSB3aXRoIGljb25zIGZvciBzZWxlY3RpbmcgZWl0aGVyIEFwcGxpY2F0aW9ucyBvciBXb3Jrc3BhY2VzIGluIHRoZSBPdmVydmlldy4gU2VsZWN0aW5nIHRoZSBzYW1lIHZpZXcgYWdhaW4gd2lsbCBoaWRlIHRoZSBvdmVydmlldy5cblxuVGhpcyBpcyBwYXJ0aWN1bGFybHkgdXNlZnVsIGZvciB0YWJsZXQgdXNlcnMgdGhhdCBmaW5kIHRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBkaWZmaWN1bHQgdG8gY2xpY2sgb24sIHdoZXJlYXMgYSBtZW51IGNhbiBiZSBtb3JlIGVhc2lseSBpbnZva2VkLiIsCiAgIm5hbWUiOiAiQWN0aXZpdGllcyBJY29uIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImFjdGl2aXRpZXNfaWNvbl9tZW51QGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
 , {"uuid": "Gold_Price_Monitor@wotmshuaisi_github", "name": "Gold Price Monitor", "pname": "gold-price-monitor", "description": "simple gnome extension helps you tracking gold price in realtime", "link": "https://extensions.gnome.org/extension/2075/gold-price-monitor/", "shell_version_map": {"40": {"version": "21", "sha256": "10554hlfv3nlf49av54wwckg2ld4p8pc7vk8s14085shdplwi95n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRhbmdlcm91cyI6IGZhbHNlLAogICJkZXNjcmlwdGlvbiI6ICJzaW1wbGUgZ25vbWUgZXh0ZW5zaW9uIGhlbHBzIHlvdSB0cmFja2luZyBnb2xkIHByaWNlIGluIHJlYWx0aW1lIiwKICAibmFtZSI6ICJHb2xkIFByaWNlIE1vbml0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ29sZC1wcmljZS1tb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3dvdG1zaHVhaXNpL2dvbGRwcmljZW1vbml0b3IiLAogICJ1dWlkIjogIkdvbGRfUHJpY2VfTW9uaXRvckB3b3Rtc2h1YWlzaV9naXRodWIiLAogICJ2ZXJzaW9uIjogMjEKfQ=="}}}
-, {"uuid": "ding@rastersoft.com", "name": "Desktop Icons NG (DING)", "pname": "desktop-icons-ng-ding", "description": "Adds icons to the desktop. Fork of the original Desktop Icons extension, with several enhancements .", "link": "https://extensions.gnome.org/extension/2087/desktop-icons-ng-ding/", "shell_version_map": {"38": {"version": "22", "sha256": "1qci1zwbp8x0nxbd3ay781gcjd1hpf2ncgpxfclxxgn73pvm4zd9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgaWNvbnMgdG8gdGhlIGRlc2t0b3AuIEZvcmsgb2YgdGhlIG9yaWdpbmFsIERlc2t0b3AgSWNvbnMgZXh0ZW5zaW9uLCB3aXRoIHNldmVyYWwgZW5oYW5jZW1lbnRzIC4iLAogICJuYW1lIjogIkRlc2t0b3AgSWNvbnMgTkcgKERJTkcpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MC5iZXRhIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3Jhc3RlcnNvZnQvZGVza3RvcC1pY29ucy1uZyIsCiAgInV1aWQiOiAiZGluZ0ByYXN0ZXJzb2Z0LmNvbSIsCiAgInZlcnNpb24iOiAyMgp9"}, "40": {"version": "22", "sha256": "1qci1zwbp8x0nxbd3ay781gcjd1hpf2ncgpxfclxxgn73pvm4zd9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgaWNvbnMgdG8gdGhlIGRlc2t0b3AuIEZvcmsgb2YgdGhlIG9yaWdpbmFsIERlc2t0b3AgSWNvbnMgZXh0ZW5zaW9uLCB3aXRoIHNldmVyYWwgZW5oYW5jZW1lbnRzIC4iLAogICJuYW1lIjogIkRlc2t0b3AgSWNvbnMgTkcgKERJTkcpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MC5iZXRhIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3Jhc3RlcnNvZnQvZGVza3RvcC1pY29ucy1uZyIsCiAgInV1aWQiOiAiZGluZ0ByYXN0ZXJzb2Z0LmNvbSIsCiAgInZlcnNpb24iOiAyMgp9"}}}
-, {"uuid": "order-extensions@wa4557.github.com", "name": "Order Gnome Shell extensions", "pname": "order-gnome-shell-extensions", "description": "Fixes order of gnome-shell extensions", "link": "https://extensions.gnome.org/extension/2114/order-gnome-shell-extensions/", "shell_version_map": {"38": {"version": "5", "sha256": "197wbj5cx8bd30p35r2my8ri140qyf91wahpwf2lx2zmgql6rb1i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJBbmRyZWFzIEFuZ2VyZXIiLAogICJkZXNjcmlwdGlvbiI6ICJGaXhlcyBvcmRlciBvZiBnbm9tZS1zaGVsbCBleHRlbnNpb25zIiwKICAiZXh0ZW5zaW9uLWlkIjogIm9yZGVyLWV4dGVuc2lvbnMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJvcmRlciBleHRlbnNpb25zIiwKICAibmFtZSI6ICJPcmRlciBHbm9tZSBTaGVsbCBleHRlbnNpb25zIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIm9yZGVyLWV4dGVuc2lvbnNAd2E0NTU3LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}}}
+, {"uuid": "ding@rastersoft.com", "name": "Desktop Icons NG (DING)", "pname": "desktop-icons-ng-ding", "description": "Adds icons to the desktop. Fork of the original Desktop Icons extension, with several enhancements .", "link": "https://extensions.gnome.org/extension/2087/desktop-icons-ng-ding/", "shell_version_map": {"38": {"version": "28", "sha256": "1kdgdlgf41hqqg6kwyn2yrqs4cn1d0bhbdgc43yhkpf93lpr69n0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgaWNvbnMgdG8gdGhlIGRlc2t0b3AuIEZvcmsgb2YgdGhlIG9yaWdpbmFsIERlc2t0b3AgSWNvbnMgZXh0ZW5zaW9uLCB3aXRoIHNldmVyYWwgZW5oYW5jZW1lbnRzIC4iLAogICJuYW1lIjogIkRlc2t0b3AgSWNvbnMgTkcgKERJTkcpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9yYXN0ZXJzb2Z0L2Rlc2t0b3AtaWNvbnMtbmciLAogICJ1dWlkIjogImRpbmdAcmFzdGVyc29mdC5jb20iLAogICJ2ZXJzaW9uIjogMjgKfQ=="}, "40": {"version": "28", "sha256": "1kdgdlgf41hqqg6kwyn2yrqs4cn1d0bhbdgc43yhkpf93lpr69n0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgaWNvbnMgdG8gdGhlIGRlc2t0b3AuIEZvcmsgb2YgdGhlIG9yaWdpbmFsIERlc2t0b3AgSWNvbnMgZXh0ZW5zaW9uLCB3aXRoIHNldmVyYWwgZW5oYW5jZW1lbnRzIC4iLAogICJuYW1lIjogIkRlc2t0b3AgSWNvbnMgTkcgKERJTkcpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9yYXN0ZXJzb2Z0L2Rlc2t0b3AtaWNvbnMtbmciLAogICJ1dWlkIjogImRpbmdAcmFzdGVyc29mdC5jb20iLAogICJ2ZXJzaW9uIjogMjgKfQ=="}}}
+, {"uuid": "order-extensions@wa4557.github.com", "name": "Order Gnome Shell extensions", "pname": "order-gnome-shell-extensions", "description": "Fixes order of gnome-shell extensions", "link": "https://extensions.gnome.org/extension/2114/order-gnome-shell-extensions/", "shell_version_map": {"38": {"version": "6", "sha256": "0hcbjrhrg11f5p23bhss75nhc9sqlh6p1bmfq7p7m7d276ckdmkk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJBbmRyZWFzIEFuZ2VyZXIiLAogICJkZXNjcmlwdGlvbiI6ICJGaXhlcyBvcmRlciBvZiBnbm9tZS1zaGVsbCBleHRlbnNpb25zIiwKICAiZXh0ZW5zaW9uLWlkIjogIm9yZGVyLWV4dGVuc2lvbnMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJvcmRlciBleHRlbnNpb25zIiwKICAibmFtZSI6ICJPcmRlciBHbm9tZSBTaGVsbCBleHRlbnNpb25zIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICIzLjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIm9yZGVyLWV4dGVuc2lvbnNAd2E0NTU3LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"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": "7", "sha256": "1b2jrchwkw9i9bbicfxpn57rfj1vjzwmcrs8dzasdsmagh4rydal", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJuYW1lIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kYW5pZ20vc3BvdGlmeS1hZC1ibG9ja2VyIiwKICAidXVpZCI6ICJzcG90aWZ5LWFkLWJsb2NrQGRhbmlnbS5uZXQiLAogICJ2ZXJzaW9uIjogNwp9"}}}
+, {"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": "9", "sha256": "15nmnf2i3icfk0lc8yb20jxj0irivgw73sh9d94p09v5jv0p9hvm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJuYW1lIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGFuaWdtL3Nwb3RpZnktYWQtYmxvY2tlciIsCiAgInV1aWQiOiAic3BvdGlmeS1hZC1ibG9ja0BkYW5pZ20ubmV0IiwKICAidmVyc2lvbiI6IDkKfQ=="}, "40": {"version": "9", "sha256": "15nmnf2i3icfk0lc8yb20jxj0irivgw73sh9d94p09v5jv0p9hvm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJuYW1lIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGFuaWdtL3Nwb3RpZnktYWQtYmxvY2tlciIsCiAgInV1aWQiOiAic3BvdGlmeS1hZC1ibG9ja0BkYW5pZ20ubmV0IiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
 , {"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": "10", "sha256": "1ij5307mcm3shhs23lpl8l968xgzc1qr0wvzkb419ihdk4kjmf9m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uLCB0aGF0IHJlbW92ZXMgdGhlICdXaW5kb3cgaXMgcmVhZHknIG5vdGlmaWNhdGlvbiBhbmQgcHV0cyB0aGUgd2luZG93IGludG8gZm9jdXMuIEluIGNvbnRyYXN0IHRvIGFsbCB0aGUgb3RoZXIgZXh0ZW5zaW9ucywgdGhpcyB1c2VzIEVTNiBzeW50YXggYW5kIGlzIGFjdGl2ZWx5IG1haW50YWluZWQuIiwKICAibmFtZSI6ICJOb0Fubm95YW5jZSB2MiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Cam9lcm5EYWFzZS9ub2Fubm95YW5jZSIsCiAgInV1aWQiOiAibm9hbm5veWFuY2VAZGFhc2UubmV0IiwKICAidmVyc2lvbiI6IDEwCn0="}, "40": {"version": "10", "sha256": "1ij5307mcm3shhs23lpl8l968xgzc1qr0wvzkb419ihdk4kjmf9m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uLCB0aGF0IHJlbW92ZXMgdGhlICdXaW5kb3cgaXMgcmVhZHknIG5vdGlmaWNhdGlvbiBhbmQgcHV0cyB0aGUgd2luZG93IGludG8gZm9jdXMuIEluIGNvbnRyYXN0IHRvIGFsbCB0aGUgb3RoZXIgZXh0ZW5zaW9ucywgdGhpcyB1c2VzIEVTNiBzeW50YXggYW5kIGlzIGFjdGl2ZWx5IG1haW50YWluZWQuIiwKICAibmFtZSI6ICJOb0Fubm95YW5jZSB2MiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Cam9lcm5EYWFzZS9ub2Fubm95YW5jZSIsCiAgInV1aWQiOiAibm9hbm5veWFuY2VAZGFhc2UubmV0IiwKICAidmVyc2lvbiI6IDEwCn0="}}}
 , {"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": "9", "sha256": "0bzwl271j3j41nrx6fzcp2ahypl23ivfhp5zrg2xvh3r69hg61br", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIChHTk9NRSBQYW5lbCBhcHBsZXQpIHRvIGJlIGFibGUgdG8gZ2VuZXJhbGx5IGNvbnRyb2wgeW91ciBhdmFpbGFibGUgRG9ja2VyIGNvbnRhaW5lcnMuIiwKICAibmFtZSI6ICJFYXN5IERvY2tlciBDb250YWluZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JlZFNvZnR3YXJlU3lzdGVtcy9lYXN5X2RvY2tlcl9jb250YWluZXJzIiwKICAidXVpZCI6ICJlYXN5X2RvY2tlcl9jb250YWluZXJzQHJlZC5zb2Z0d2FyZS5zeXN0ZW1zIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "40": {"version": "9", "sha256": "0bzwl271j3j41nrx6fzcp2ahypl23ivfhp5zrg2xvh3r69hg61br", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIChHTk9NRSBQYW5lbCBhcHBsZXQpIHRvIGJlIGFibGUgdG8gZ2VuZXJhbGx5IGNvbnRyb2wgeW91ciBhdmFpbGFibGUgRG9ja2VyIGNvbnRhaW5lcnMuIiwKICAibmFtZSI6ICJFYXN5IERvY2tlciBDb250YWluZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JlZFNvZnR3YXJlU3lzdGVtcy9lYXN5X2RvY2tlcl9jb250YWluZXJzIiwKICAidXVpZCI6ICJlYXN5X2RvY2tlcl9jb250YWluZXJzQHJlZC5zb2Z0d2FyZS5zeXN0ZW1zIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
 , {"uuid": "nightthemeswitcher@romainvigier.fr", "name": "Night Theme Switcher", "pname": "night-theme-switcher", "description": "Night mode for GNOME! Automatically toggle your light and dark GTK, GNOME Shell, icon and cursor themes variants, switch backgrounds and run custom commands at sunset and sunrise.\n\nSupports Night Light, Location Services, manual schedule and on-demand switch.\n\nIt works out of the box with numerous themes (see the list on the repository), and you can manually choose the variants you want.\n", "link": "https://extensions.gnome.org/extension/2236/night-theme-switcher/", "shell_version_map": {"38": {"version": "46", "sha256": "016lb0wcr43nf8mj6qnwgzpam2whrcvf4s5dwbdljqqvpvbx68yq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5pZ2h0IG1vZGUgZm9yIEdOT01FISBBdXRvbWF0aWNhbGx5IHRvZ2dsZSB5b3VyIGxpZ2h0IGFuZCBkYXJrIEdUSywgR05PTUUgU2hlbGwsIGljb24gYW5kIGN1cnNvciB0aGVtZXMgdmFyaWFudHMsIHN3aXRjaCBiYWNrZ3JvdW5kcyBhbmQgcnVuIGN1c3RvbSBjb21tYW5kcyBhdCBzdW5zZXQgYW5kIHN1bnJpc2UuXG5cblN1cHBvcnRzIE5pZ2h0IExpZ2h0LCBMb2NhdGlvbiBTZXJ2aWNlcywgbWFudWFsIHNjaGVkdWxlIGFuZCBvbi1kZW1hbmQgc3dpdGNoLlxuXG5JdCB3b3JrcyBvdXQgb2YgdGhlIGJveCB3aXRoIG51bWVyb3VzIHRoZW1lcyAoc2VlIHRoZSBsaXN0IG9uIHRoZSByZXBvc2l0b3J5KSwgYW5kIHlvdSBjYW4gbWFudWFsbHkgY2hvb3NlIHRoZSB2YXJpYW50cyB5b3Ugd2FudC5cbiIsCiAgImdldHRleHQtZG9tYWluIjogIm5pZ2h0dGhlbWVzd2l0Y2hlckByb21haW52aWdpZXIuZnIiLAogICJuYW1lIjogIk5pZ2h0IFRoZW1lIFN3aXRjaGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5pZ2h0dGhlbWVzd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3JtbnZnci9uaWdodHRoZW1lc3dpdGNoZXItZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLyIsCiAgInV1aWQiOiAibmlnaHR0aGVtZXN3aXRjaGVyQHJvbWFpbnZpZ2llci5mciIsCiAgInZlcnNpb24iOiA0Ngp9"}, "40": {"version": "50", "sha256": "0klgk18sn5m8a4w2jk64far27v7xpmdhyic6yk471xk096w6hdn3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5pZ2h0IG1vZGUgZm9yIEdOT01FISBBdXRvbWF0aWNhbGx5IHRvZ2dsZSB5b3VyIGxpZ2h0IGFuZCBkYXJrIEdUSywgR05PTUUgU2hlbGwsIGljb24gYW5kIGN1cnNvciB0aGVtZXMgdmFyaWFudHMsIHN3aXRjaCBiYWNrZ3JvdW5kcyBhbmQgcnVuIGN1c3RvbSBjb21tYW5kcyBhdCBzdW5zZXQgYW5kIHN1bnJpc2UuXG5cblN1cHBvcnRzIE5pZ2h0IExpZ2h0LCBMb2NhdGlvbiBTZXJ2aWNlcywgbWFudWFsIHNjaGVkdWxlIGFuZCBvbi1kZW1hbmQgc3dpdGNoLlxuXG5JdCB3b3JrcyBvdXQgb2YgdGhlIGJveCB3aXRoIG51bWVyb3VzIHRoZW1lcyAoc2VlIHRoZSBsaXN0IG9uIHRoZSByZXBvc2l0b3J5KSwgYW5kIHlvdSBjYW4gbWFudWFsbHkgY2hvb3NlIHRoZSB2YXJpYW50cyB5b3Ugd2FudC5cbiIsCiAgImdldHRleHQtZG9tYWluIjogIm5pZ2h0dGhlbWVzd2l0Y2hlckByb21haW52aWdpZXIuZnIiLAogICJuYW1lIjogIk5pZ2h0IFRoZW1lIFN3aXRjaGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5pZ2h0dGhlbWVzd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9ybW52Z3IvbmlnaHR0aGVtZXN3aXRjaGVyLWdub21lLXNoZWxsLWV4dGVuc2lvbi8iLAogICJ1dWlkIjogIm5pZ2h0dGhlbWVzd2l0Y2hlckByb21haW52aWdpZXIuZnIiLAogICJ2ZXJzaW9uIjogNTAKfQ=="}}}
@@ -219,123 +240,133 @@
 , {"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": "9", "sha256": "049hj5s2nxa4044z4hcrlz1cmyq9y07ck7lg6brhvjagqncgg152", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyBpY29uIGZyb20gdGhlIHN0YXR1cyBiYXIiLAogICJuYW1lIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ha2lpcnVpL2hpZGUtdW5pdmVyc2FsLWFjY2VzcyIsCiAgInV1aWQiOiAiaGlkZS11bml2ZXJzYWwtYWNjZXNzQGFraWlydWkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "40": {"version": "9", "sha256": "049hj5s2nxa4044z4hcrlz1cmyq9y07ck7lg6brhvjagqncgg152", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyBpY29uIGZyb20gdGhlIHN0YXR1cyBiYXIiLAogICJuYW1lIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ha2lpcnVpL2hpZGUtdW5pdmVyc2FsLWFjY2VzcyIsCiAgInV1aWQiOiAiaGlkZS11bml2ZXJzYWwtYWNjZXNzQGFraWlydWkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
+, {"uuid": "roundrobintaborder@scottworley.com", "name": "Round Robin Tab Order", "pname": "round-robin-tab-order", "description": "Window switch order becomes round-robin instead of most-recently-used", "link": "https://extensions.gnome.org/extension/2446/round-robin-tab-order/", "shell_version_map": {"40": {"version": "3", "sha256": "0p2qfv6i43pi0hjsyz8xzxkxijr06b0d20q618y8gfj4ar82glv7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldpbmRvdyBzd2l0Y2ggb3JkZXIgYmVjb21lcyByb3VuZC1yb2JpbiBpbnN0ZWFkIG9mIG1vc3QtcmVjZW50bHktdXNlZCIsCiAgIm5hbWUiOiAiUm91bmQgUm9iaW4gVGFiIE9yZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMyIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL2NodWNrL3JvdW5kLXJvYmluLXRhYi1vcmRlciIsCiAgInV1aWQiOiAicm91bmRyb2JpbnRhYm9yZGVyQHNjb3R0d29ybGV5LmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"uuid": "bubblemail@razer.framagit.org", "name": "Bubblemail", "pname": "bubblemail", "description": "New and unread mail indicator (Local, Imap, Pop3, Gmail, Yahoo mail...)\nIndicator for new mails from local mail boxes (MBOX, MAILDIR), POP3 or IMAP server.\n\nBE AWARE THAT THIS EXTENSION REQUIRES BUBBLEMAIL SERVICE INSTALLATION\nCheck your distribution packaging system for availability. Besides, packages for distributions and source tarballs can be found here :\nhttp://bubblemail.free.fr\n\nBubblemail is a complete rewrite of the mailnag project, with a lot of new features including :\n* Gnome online accounts are automaticaly synced\n* Avatars provided by the server, with default colorized icons for senders without specific avatar\n* Reports for connection errors.\n\n Please report any issue on the gitlab pages of the project :\nhttps://framagit.org/razer/bubblemail/issues\nhttps://framagit.org/razer/bubblemail-gnome-shell/issues", "link": "https://extensions.gnome.org/extension/2458/bubblemail/", "shell_version_map": {"38": {"version": "14", "sha256": "12w53h0bglk1zyr6r9sxgrd223r628jaibbh7m5qyvc50i7m57f2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldyBhbmQgdW5yZWFkIG1haWwgaW5kaWNhdG9yIChMb2NhbCwgSW1hcCwgUG9wMywgR21haWwsIFlhaG9vIG1haWwuLi4pXG5JbmRpY2F0b3IgZm9yIG5ldyBtYWlscyBmcm9tIGxvY2FsIG1haWwgYm94ZXMgKE1CT1gsIE1BSUxESVIpLCBQT1AzIG9yIElNQVAgc2VydmVyLlxuXG5CRSBBV0FSRSBUSEFUIFRISVMgRVhURU5TSU9OIFJFUVVJUkVTIEJVQkJMRU1BSUwgU0VSVklDRSBJTlNUQUxMQVRJT05cbkNoZWNrIHlvdXIgZGlzdHJpYnV0aW9uIHBhY2thZ2luZyBzeXN0ZW0gZm9yIGF2YWlsYWJpbGl0eS4gQmVzaWRlcywgcGFja2FnZXMgZm9yIGRpc3RyaWJ1dGlvbnMgYW5kIHNvdXJjZSB0YXJiYWxscyBjYW4gYmUgZm91bmQgaGVyZSA6XG5odHRwOi8vYnViYmxlbWFpbC5mcmVlLmZyXG5cbkJ1YmJsZW1haWwgaXMgYSBjb21wbGV0ZSByZXdyaXRlIG9mIHRoZSBtYWlsbmFnIHByb2plY3QsIHdpdGggYSBsb3Qgb2YgbmV3IGZlYXR1cmVzIGluY2x1ZGluZyA6XG4qIEdub21lIG9ubGluZSBhY2NvdW50cyBhcmUgYXV0b21hdGljYWx5IHN5bmNlZFxuKiBBdmF0YXJzIHByb3ZpZGVkIGJ5IHRoZSBzZXJ2ZXIsIHdpdGggZGVmYXVsdCBjb2xvcml6ZWQgaWNvbnMgZm9yIHNlbmRlcnMgd2l0aG91dCBzcGVjaWZpYyBhdmF0YXJcbiogUmVwb3J0cyBmb3IgY29ubmVjdGlvbiBlcnJvcnMuXG5cbiBQbGVhc2UgcmVwb3J0IGFueSBpc3N1ZSBvbiB0aGUgZ2l0bGFiIHBhZ2VzIG9mIHRoZSBwcm9qZWN0IDpcbmh0dHBzOi8vZnJhbWFnaXQub3JnL3JhemVyL2J1YmJsZW1haWwvaXNzdWVzXG5odHRwczovL2ZyYW1hZ2l0Lm9yZy9yYXplci9idWJibGVtYWlsLWdub21lLXNoZWxsL2lzc3VlcyIsCiAgImdldHRleHQtZG9tYWluIjogImJ1YmJsZW1haWwtZ25vbWUtc2hlbGwiLAogICJuYW1lIjogIkJ1YmJsZW1haWwiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgInJhemVycmF6QGZyZWUuZnIiLAogICAgInp1bHU5OUBnbXgubmV0IgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5idWJibGVtYWlsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cDovL2J1YmJsZW1haWwuZnJlZS5mciIsCiAgInV1aWQiOiAiYnViYmxlbWFpbEByYXplci5mcmFtYWdpdC5vcmciLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "40": {"version": "14", "sha256": "12w53h0bglk1zyr6r9sxgrd223r628jaibbh7m5qyvc50i7m57f2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldyBhbmQgdW5yZWFkIG1haWwgaW5kaWNhdG9yIChMb2NhbCwgSW1hcCwgUG9wMywgR21haWwsIFlhaG9vIG1haWwuLi4pXG5JbmRpY2F0b3IgZm9yIG5ldyBtYWlscyBmcm9tIGxvY2FsIG1haWwgYm94ZXMgKE1CT1gsIE1BSUxESVIpLCBQT1AzIG9yIElNQVAgc2VydmVyLlxuXG5CRSBBV0FSRSBUSEFUIFRISVMgRVhURU5TSU9OIFJFUVVJUkVTIEJVQkJMRU1BSUwgU0VSVklDRSBJTlNUQUxMQVRJT05cbkNoZWNrIHlvdXIgZGlzdHJpYnV0aW9uIHBhY2thZ2luZyBzeXN0ZW0gZm9yIGF2YWlsYWJpbGl0eS4gQmVzaWRlcywgcGFja2FnZXMgZm9yIGRpc3RyaWJ1dGlvbnMgYW5kIHNvdXJjZSB0YXJiYWxscyBjYW4gYmUgZm91bmQgaGVyZSA6XG5odHRwOi8vYnViYmxlbWFpbC5mcmVlLmZyXG5cbkJ1YmJsZW1haWwgaXMgYSBjb21wbGV0ZSByZXdyaXRlIG9mIHRoZSBtYWlsbmFnIHByb2plY3QsIHdpdGggYSBsb3Qgb2YgbmV3IGZlYXR1cmVzIGluY2x1ZGluZyA6XG4qIEdub21lIG9ubGluZSBhY2NvdW50cyBhcmUgYXV0b21hdGljYWx5IHN5bmNlZFxuKiBBdmF0YXJzIHByb3ZpZGVkIGJ5IHRoZSBzZXJ2ZXIsIHdpdGggZGVmYXVsdCBjb2xvcml6ZWQgaWNvbnMgZm9yIHNlbmRlcnMgd2l0aG91dCBzcGVjaWZpYyBhdmF0YXJcbiogUmVwb3J0cyBmb3IgY29ubmVjdGlvbiBlcnJvcnMuXG5cbiBQbGVhc2UgcmVwb3J0IGFueSBpc3N1ZSBvbiB0aGUgZ2l0bGFiIHBhZ2VzIG9mIHRoZSBwcm9qZWN0IDpcbmh0dHBzOi8vZnJhbWFnaXQub3JnL3JhemVyL2J1YmJsZW1haWwvaXNzdWVzXG5odHRwczovL2ZyYW1hZ2l0Lm9yZy9yYXplci9idWJibGVtYWlsLWdub21lLXNoZWxsL2lzc3VlcyIsCiAgImdldHRleHQtZG9tYWluIjogImJ1YmJsZW1haWwtZ25vbWUtc2hlbGwiLAogICJuYW1lIjogIkJ1YmJsZW1haWwiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgInJhemVycmF6QGZyZWUuZnIiLAogICAgInp1bHU5OUBnbXgubmV0IgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5idWJibGVtYWlsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cDovL2J1YmJsZW1haWwuZnJlZS5mciIsCiAgInV1aWQiOiAiYnViYmxlbWFpbEByYXplci5mcmFtYWdpdC5vcmciLAogICJ2ZXJzaW9uIjogMTQKfQ=="}}}
-, {"uuid": "keypadTiling@abakkk.framagit.org", "name": "Keypad Tiling", "pname": "keypad-tiling", "description": "Tile windows with your keypad.\n\nFeatures:\n- Tile focused window with Super + divide/0/1/.../9 keypad keys\n- Get window completion popup with Super + Alt + 1/.../9 keypad keys\n- Customize keybindings in preferences\n\nBugs on Wayland, in particular with window completion (annoying delays between move/resize operations are used as workaround).\nTiling is not exactly the same as the one that GNOME Shell provides. For instance left and right tiling are more basic while top, bottom and corner tiling gains resizing.\nDefault keybindings could conflict with those of other extensions like popular Dash to Dock and Dash to Panel (see either Keypad Tiling or other extension preferences).\n\nGNOME Shell 41 and later are not supported.", "link": "https://extensions.gnome.org/extension/2473/keypad-tiling/", "shell_version_map": {"38": {"version": "4", "sha256": "048ddam3im2b1g7mfqycvwarr354wii54xclc27h4mr3x3ixgmmr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyB3aXRoIHlvdXIga2V5cGFkLlxuXG5GZWF0dXJlczpcbi0gVGlsZSBmb2N1c2VkIHdpbmRvdyB3aXRoIFN1cGVyICsgZGl2aWRlLzAvMS8uLi4vOSBrZXlwYWQga2V5c1xuLSBHZXQgd2luZG93IGNvbXBsZXRpb24gcG9wdXAgd2l0aCBTdXBlciArIEFsdCArIDEvLi4uLzkga2V5cGFkIGtleXNcbi0gQ3VzdG9taXplIGtleWJpbmRpbmdzIGluIHByZWZlcmVuY2VzXG5cbkJ1Z3Mgb24gV2F5bGFuZCwgaW4gcGFydGljdWxhciB3aXRoIHdpbmRvdyBjb21wbGV0aW9uIChhbm5veWluZyBkZWxheXMgYmV0d2VlbiBtb3ZlL3Jlc2l6ZSBvcGVyYXRpb25zIGFyZSB1c2VkIGFzIHdvcmthcm91bmQpLlxuVGlsaW5nIGlzIG5vdCBleGFjdGx5IHRoZSBzYW1lIGFzIHRoZSBvbmUgdGhhdCBHTk9NRSBTaGVsbCBwcm92aWRlcy4gRm9yIGluc3RhbmNlIGxlZnQgYW5kIHJpZ2h0IHRpbGluZyBhcmUgbW9yZSBiYXNpYyB3aGlsZSB0b3AsIGJvdHRvbSBhbmQgY29ybmVyIHRpbGluZyBnYWlucyByZXNpemluZy5cbkRlZmF1bHQga2V5YmluZGluZ3MgY291bGQgY29uZmxpY3Qgd2l0aCB0aG9zZSBvZiBvdGhlciBleHRlbnNpb25zIGxpa2UgcG9wdWxhciBEYXNoIHRvIERvY2sgYW5kIERhc2ggdG8gUGFuZWwgKHNlZSBlaXRoZXIgS2V5cGFkIFRpbGluZyBvciBvdGhlciBleHRlbnNpb24gcHJlZmVyZW5jZXMpLlxuXG5HTk9NRSBTaGVsbCA0MSBhbmQgbGF0ZXIgYXJlIG5vdCBzdXBwb3J0ZWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAia2V5cGFkLXRpbGluZyIsCiAgIm5hbWUiOiAiS2V5cGFkIFRpbGluZyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5rZXlwYWQtdGlsaW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2ZyYW1hZ2l0Lm9yZy9hYmFra2svS2V5cGFkVGlsaW5nIiwKICAidXVpZCI6ICJrZXlwYWRUaWxpbmdAYWJha2trLmZyYW1hZ2l0Lm9yZyIsCiAgInZlcnNpb24iOiA0Cn0="}}}
+, {"uuid": "keypadTiling@abakkk.framagit.org", "name": "Keypad Tiling", "pname": "keypad-tiling", "description": "", "link": "https://extensions.gnome.org/extension/2473/keypad-tiling/", "shell_version_map": {"38": {"version": "4", "sha256": "1v0hxg96l482wngrszh0xabgj95q7rmyimd2rxnbkddd2gascnya", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiIsCiAgImdldHRleHQtZG9tYWluIjogImtleXBhZC10aWxpbmciLAogICJuYW1lIjogIktleXBhZCBUaWxpbmciLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMua2V5cGFkLXRpbGluZyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJrZXlwYWRUaWxpbmdAYWJha2trLmZyYW1hZ2l0Lm9yZyIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "reminder_alarm_clock@trifonovkv.gmail.com", "name": "Reminder Alarm Clock", "pname": "reminder-alarm-clock", "description": "The reminder alarm clock will remind you of an important event at the appointed time.", "link": "https://extensions.gnome.org/extension/2482/reminder-alarm-clock/", "shell_version_map": {"38": {"version": "40", "sha256": "0yljdig44gly3fky4ls42shbpvf2387kgnn1dfla9zmxxzjdkryq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSByZW1pbmRlciBhbGFybSBjbG9jayB3aWxsIHJlbWluZCB5b3Ugb2YgYW4gaW1wb3J0YW50IGV2ZW50IGF0IHRoZSBhcHBvaW50ZWQgdGltZS4iLAogICJuYW1lIjogIlJlbWluZGVyIEFsYXJtIENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4LjEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90cmlmb25vdmt2L1JlbWluZGVyQWxhcm1DbG9jayIsCiAgInV1aWQiOiAicmVtaW5kZXJfYWxhcm1fY2xvY2tAdHJpZm9ub3Zrdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNDAKfQ=="}}}
 , {"uuid": "TaskBar@c0ldplasma", "name": "TaskBar 2020", "pname": "taskbar-updated", "description": "!!! Development stopped !!!!\n\nTaskBar 2020 displays icons of running applications and favorites on the top panel or alternatively on a new bottom panel. Activate, minimize or close tasks with a simple click. \n\nTaskBar 2020 is a dock-like windows list on the top/bottom bar. \n\nFork of zpydr/gnome-shell-extension-taskbar to support newer versions of GNOME", "link": "https://extensions.gnome.org/extension/2506/taskbar-updated/", "shell_version_map": {"38": {"version": "5", "sha256": "1wn3040z6znmk2nwh9n0l6q09sp7y3rx0nnm0274n1xsiw7pbwy3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiEhISBEZXZlbG9wbWVudCBzdG9wcGVkICEhISFcblxuVGFza0JhciAyMDIwIGRpc3BsYXlzIGljb25zIG9mIHJ1bm5pbmcgYXBwbGljYXRpb25zIGFuZCBmYXZvcml0ZXMgb24gdGhlIHRvcCBwYW5lbCBvciBhbHRlcm5hdGl2ZWx5IG9uIGEgbmV3IGJvdHRvbSBwYW5lbC4gQWN0aXZhdGUsIG1pbmltaXplIG9yIGNsb3NlIHRhc2tzIHdpdGggYSBzaW1wbGUgY2xpY2suIFxuXG5UYXNrQmFyIDIwMjAgaXMgYSBkb2NrLWxpa2Ugd2luZG93cyBsaXN0IG9uIHRoZSB0b3AvYm90dG9tIGJhci4gXG5cbkZvcmsgb2YgenB5ZHIvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2tiYXIgdG8gc3VwcG9ydCBuZXdlciB2ZXJzaW9ucyBvZiBHTk9NRSIsCiAgIm5hbWUiOiAiVGFza0JhciAyMDIwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYzBsZHBsYXNtYS9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGFza2JhciIsCiAgInV1aWQiOiAiVGFza0JhckBjMGxkcGxhc21hIiwKICAidmVyc2lvbiI6IDUKfQ=="}, "40": {"version": "8", "sha256": "0czby48izk0yjpkgjh6bl6b922qg0ycc53gq7n733dgchnn76g2p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiEhISBEZXZlbG9wbWVudCBzdG9wcGVkICEhISFcblxuVGFza0JhciAyMDIwIGRpc3BsYXlzIGljb25zIG9mIHJ1bm5pbmcgYXBwbGljYXRpb25zIGFuZCBmYXZvcml0ZXMgb24gdGhlIHRvcCBwYW5lbCBvciBhbHRlcm5hdGl2ZWx5IG9uIGEgbmV3IGJvdHRvbSBwYW5lbC4gQWN0aXZhdGUsIG1pbmltaXplIG9yIGNsb3NlIHRhc2tzIHdpdGggYSBzaW1wbGUgY2xpY2suIFxuXG5UYXNrQmFyIDIwMjAgaXMgYSBkb2NrLWxpa2Ugd2luZG93cyBsaXN0IG9uIHRoZSB0b3AvYm90dG9tIGJhci4gXG5cbkZvcmsgb2YgenB5ZHIvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2tiYXIgdG8gc3VwcG9ydCBuZXdlciB2ZXJzaW9ucyBvZiBHTk9NRSIsCiAgIm5hbWUiOiAiVGFza0JhciAyMDIwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2MwbGRwbGFzbWEvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2tiYXIiLAogICJ1dWlkIjogIlRhc2tCYXJAYzBsZHBsYXNtYSIsCiAgInZlcnNpb24iOiA4Cn0="}}}
-, {"uuid": "floatingDock@sun.wxg@gmail.com", "name": "Floating Dock", "pname": "floating-dock", "description": "Move dock anywhere on the desktop\n\nPress Ctrl+Alt+k to vi mode\nPress lowercase alphabet, open new window or active the window\nPress uppercase alphabet, force to open new window\n\nPoint on the main button, change workspace by mouse scroll\nRight click the main button, show some selections", "link": "https://extensions.gnome.org/extension/2542/floating-dock/", "shell_version_map": {"38": {"version": "12", "sha256": "1844hhr0z4wd0wvh29q0sxh6xmwq7chg3kr3sa3c46q8n97i78x2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgZG9jayBhbnl3aGVyZSBvbiB0aGUgZGVza3RvcFxuXG5QcmVzcyBDdHJsK0FsdCtrIHRvIHZpIG1vZGVcblByZXNzIGxvd2VyY2FzZSBhbHBoYWJldCwgb3BlbiBuZXcgd2luZG93IG9yIGFjdGl2ZSB0aGUgd2luZG93XG5QcmVzcyB1cHBlcmNhc2UgYWxwaGFiZXQsIGZvcmNlIHRvIG9wZW4gbmV3IHdpbmRvd1xuXG5Qb2ludCBvbiB0aGUgbWFpbiBidXR0b24sIGNoYW5nZSB3b3Jrc3BhY2UgYnkgbW91c2Ugc2Nyb2xsXG5SaWdodCBjbGljayB0aGUgbWFpbiBidXR0b24sIHNob3cgc29tZSBzZWxlY3Rpb25zIiwKICAibmFtZSI6ICJGbG9hdGluZyBEb2NrIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tZmxvYXRpbmdEb2NrIiwKICAidXVpZCI6ICJmbG9hdGluZ0RvY2tAc3VuLnd4Z0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "40": {"version": "17", "sha256": "0g6wc343vky2l44j00c19mn6jw24xnfqsnwv7q7l264ax9hqc1ga", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgZG9jayBhbnl3aGVyZSBvbiB0aGUgZGVza3RvcFxuXG5QcmVzcyBDdHJsK0FsdCtrIHRvIHZpIG1vZGVcblByZXNzIGxvd2VyY2FzZSBhbHBoYWJldCwgb3BlbiBuZXcgd2luZG93IG9yIGFjdGl2ZSB0aGUgd2luZG93XG5QcmVzcyB1cHBlcmNhc2UgYWxwaGFiZXQsIGZvcmNlIHRvIG9wZW4gbmV3IHdpbmRvd1xuXG5Qb2ludCBvbiB0aGUgbWFpbiBidXR0b24sIGNoYW5nZSB3b3Jrc3BhY2UgYnkgbW91c2Ugc2Nyb2xsXG5SaWdodCBjbGljayB0aGUgbWFpbiBidXR0b24sIHNob3cgc29tZSBzZWxlY3Rpb25zIiwKICAibmFtZSI6ICJGbG9hdGluZyBEb2NrIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWZsb2F0aW5nRG9jayIsCiAgInV1aWQiOiAiZmxvYXRpbmdEb2NrQHN1bi53eGdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDE3Cn0="}}}
+, {"uuid": "kernel-indicator@elboulangero.gitlab.com", "name": "Kernel Indicator", "pname": "kernel-indicator", "description": "Display the kernel version in the top bar", "link": "https://extensions.gnome.org/extension/2512/kernel-indicator/", "shell_version_map": {"40": {"version": "3", "sha256": "1ysfagpfysrvhvx16212828sw85sv0zkp28qb0wj7v3qzchjj5dm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGhlIGtlcm5lbCB2ZXJzaW9uIGluIHRoZSB0b3AgYmFyIiwKICAibmFtZSI6ICJLZXJuZWwgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2VsYm91bGFuZ2Vyby9nbm9tZS1zaGVsbC1leHRlbnNpb24ta2VybmVsLWluZGljYXRvciIsCiAgInV1aWQiOiAia2VybmVsLWluZGljYXRvckBlbGJvdWxhbmdlcm8uZ2l0bGFiLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}}}
+, {"uuid": "floatingDock@sun.wxg@gmail.com", "name": "Floating Dock", "pname": "floating-dock", "description": "Move dock anywhere on the desktop\n\nPress Ctrl+Alt+k to vi mode\nPress lowercase alphabet, open new window or active the window\nPress uppercase alphabet, force to open new window\n\nPoint on the main button, change workspace by mouse scroll\nRight click the main button, show some selections", "link": "https://extensions.gnome.org/extension/2542/floating-dock/", "shell_version_map": {"38": {"version": "12", "sha256": "1844hhr0z4wd0wvh29q0sxh6xmwq7chg3kr3sa3c46q8n97i78x2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgZG9jayBhbnl3aGVyZSBvbiB0aGUgZGVza3RvcFxuXG5QcmVzcyBDdHJsK0FsdCtrIHRvIHZpIG1vZGVcblByZXNzIGxvd2VyY2FzZSBhbHBoYWJldCwgb3BlbiBuZXcgd2luZG93IG9yIGFjdGl2ZSB0aGUgd2luZG93XG5QcmVzcyB1cHBlcmNhc2UgYWxwaGFiZXQsIGZvcmNlIHRvIG9wZW4gbmV3IHdpbmRvd1xuXG5Qb2ludCBvbiB0aGUgbWFpbiBidXR0b24sIGNoYW5nZSB3b3Jrc3BhY2UgYnkgbW91c2Ugc2Nyb2xsXG5SaWdodCBjbGljayB0aGUgbWFpbiBidXR0b24sIHNob3cgc29tZSBzZWxlY3Rpb25zIiwKICAibmFtZSI6ICJGbG9hdGluZyBEb2NrIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tZmxvYXRpbmdEb2NrIiwKICAidXVpZCI6ICJmbG9hdGluZ0RvY2tAc3VuLnd4Z0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "40": {"version": "21", "sha256": "0qj1vqd44clpr72j5lccvva48kzaz76zd48k6nxzvnkgh2n5dh29", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgZG9jayBhbnl3aGVyZSBvbiB0aGUgZGVza3RvcFxuXG5QcmVzcyBDdHJsK0FsdCtrIHRvIHZpIG1vZGVcblByZXNzIGxvd2VyY2FzZSBhbHBoYWJldCwgb3BlbiBuZXcgd2luZG93IG9yIGFjdGl2ZSB0aGUgd2luZG93XG5QcmVzcyB1cHBlcmNhc2UgYWxwaGFiZXQsIGZvcmNlIHRvIG9wZW4gbmV3IHdpbmRvd1xuXG5Qb2ludCBvbiB0aGUgbWFpbiBidXR0b24sIGNoYW5nZSB3b3Jrc3BhY2UgYnkgbW91c2Ugc2Nyb2xsXG5SaWdodCBjbGljayB0aGUgbWFpbiBidXR0b24sIHNob3cgc29tZSBzZWxlY3Rpb25zIiwKICAibmFtZSI6ICJGbG9hdGluZyBEb2NrIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWZsb2F0aW5nRG9jayIsCiAgInV1aWQiOiAiZmxvYXRpbmdEb2NrQHN1bi53eGdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDIxCn0="}}}
 , {"uuid": "maxi@darkretailer.github.com", "name": "Maxi", "pname": "maxi", "description": "Maximize your windows vertical and/or horizontal (based on https://github.com/aXe1/gnome-shell-extension-maximized-by-default)", "link": "https://extensions.gnome.org/extension/2554/maxi/", "shell_version_map": {"40": {"version": "5", "sha256": "121nd6ggr9id3yfsrkiza7rjq19638p156ym83i3j57ikz6r3ky5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1heGltaXplIHlvdXIgd2luZG93cyB2ZXJ0aWNhbCBhbmQvb3IgaG9yaXpvbnRhbCAoYmFzZWQgb24gaHR0cHM6Ly9naXRodWIuY29tL2FYZTEvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW1heGltaXplZC1ieS1kZWZhdWx0KSIsCiAgImV4dGVuc2lvbi1pZCI6ICJtYXhpIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiTWF4aSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5tYXhpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RhcmtyZXRhaWxlci9nbm9tZS1zaGVsbC1leHRlbnNpb25fbWF4aSIsCiAgInV1aWQiOiAibWF4aUBkYXJrcmV0YWlsZXIuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"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 confiure certain aspects of the connection.", "link": "https://extensions.gnome.org/extension/2569/gnordvpn-local/", "shell_version_map": {"38": {"version": "6", "sha256": "1w5nz2688iyjf7cnaxa45h9m6l97ssf51c3szfabnbpa4d8vbqb3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgZXh0ZW5zaW9uIHRoYXQgc2hvd3MgdGhlIE5vcmRWUE4gc3RhdHVzIGluIHRoZSB0b3AgYmFyIGFuZCBwcm92aWRlcyB0aGUgYWJpbGl0eSB0byBjb25maXVyZSBjZXJ0YWluIGFzcGVjdHMgb2YgdGhlIGNvbm5lY3Rpb24uIiwKICAibmFtZSI6ICJnTm9yZFZQTi1Mb2NhbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOC4xIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vSXNvcG9saXRvL2dOb3JkVlBOLUxvY2FsIiwKICAidXVpZCI6ICJnbm9yZHZwbi1sb2NhbEBpc29wb2xpdG8iLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"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": "6", "sha256": "0gbfqi121yzyyzvanbq8hcczd783afknpq5nwcxmwlf9xyi0m5hl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBzaG93IHRoZSBuZXcgbWVzc2FnZXMgaW5kaWNhdG9yIG9uIG5ldyBtZXNzYWdlcy4gRmVhdHVyZXM6IDEpIE5ldyBtZXNzYWdlIGluZGljYXRvciBpcyBhbHdheXMgc2hvd24gaWYgdGhlcmUgYXJlIG5vdGlmaWNhdGlvbnMuIDIpIFRoZSBjb2xvciBvZiB0aGUgaW5kaWNhdG9yIGNhbiBiZSBjdXN0b21pemVkLiAzKSBJZiAnZG8gbm90IGRpc3R1cmInIGlzIGFjdGl2ZSwgdGhlIGljb24gaXMgZGlzcGxheWVkIGluIHRoZSBjdXN0b20gY29sb3IgaWYgdGhlcmUgYXJlIG5vdGlmaWNhdGlvbnMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYWx3YXlzLWluZGljYXRvciIsCiAgIm5hbWUiOiAiQWx3YXlzIEluZGljYXRvciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hbHdheXMtaW5kaWNhdG9yLXNldHRpbmdzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL216dXIvZ25vbWUtc2hlbGwtYWx3YXlzLWluZGljYXRvciIsCiAgInV1aWQiOiAiYWx3YXlzLWluZGljYXRvckBtYXJ0aW4uenVyb3dpZXR6LmRlIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
 , {"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": "15", "sha256": "1jy9m2inx8jjwsy666hg67i7d8py2ar4drn2i8si7d80cba45al4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJ1bnRpbWUgcHJvZmlsZSBzd2l0Y2hlciBmb3IgdGhlIEVydXB0aW9uIExpbnV4IGlucHV0IGFuZCBMRUQgZHJpdmVyIGZvciBrZXlib2FyZHMsIG1pY2UgYW5kIG90aGVyIGRldmljZXMiLAogICJuYW1lIjogIkVydXB0aW9uIFByb2ZpbGUgU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLmJldGEiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vWDNuMG0wcnBoNTkvZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlciIsCiAgInV1aWQiOiAiZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlckB4M24wbTBycGg1OS5vcmciLAogICJ2ZXJzaW9uIjogMTUKfQ=="}}}
+, {"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": "5", "sha256": "1qymbxd49jq1xqz3lril9dv5g5a94xs658shml7c75iqplq794f4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCAoIHVzZXIgbmFtZSA6OiB1c2VyIGlkIEAgaG9zdCApIGluIHRvcCBwYW5lbC4iLAogICJuYW1lIjogIlVzZXIgaWQgaW4gdG9wIHBhbmVsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJmdGh4IgogIF0sCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAidXNlci1pZC1pbi10b3AtcGFuZWxAZnRoeCIsCiAgInZlcnNpb24iOiA1Cn0="}, "40": {"version": "5", "sha256": "1qymbxd49jq1xqz3lril9dv5g5a94xs658shml7c75iqplq794f4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCAoIHVzZXIgbmFtZSA6OiB1c2VyIGlkIEAgaG9zdCApIGluIHRvcCBwYW5lbC4iLAogICJuYW1lIjogIlVzZXIgaWQgaW4gdG9wIHBhbmVsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJmdGh4IgogIF0sCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAidXNlci1pZC1pbi10b3AtcGFuZWxAZnRoeCIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"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": "2", "sha256": "1bgy13a6fzvbaa3sxwhmb671ar1m6l0bmk04p76i1laldvyxvy45", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgbWluaW1pemVkIGluIG92ZXJ2aWV3IiwKICAibmFtZSI6ICJIaWRlIG1pbmltaXplZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RhbmlnbS9oaWRlLW1pbmltaXplZCIsCiAgInV1aWQiOiAiaGlkZS1taW5pbWl6ZWRAZGFuaWdtLm5ldCIsCiAgInZlcnNpb24iOiAyCn0="}}}
-, {"uuid": "display-brightness-ddcutil@themightydeity.github.com", "name": "Brightness control using ddcutil", "pname": "brightness-control-using-ddcutil", "description": "Brightness slider for all the monitors detected by ddcutil\nThis tool uses ddcutil as backend for communication with your display.\n\nMake sure that your user can use following shell commands without root.\n\t`ddcutil getvcp 10` to check the brightness of a display and\n\t`ddcutil setvcp 10 100` to set the brightness to 100\n\nMore info: 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": "08rwqdcaqcx84a5bjalcvryxvhfr15a1bcyldnzw8z9aysdx1jls", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaWdodG5lc3Mgc2xpZGVyIGZvciBhbGwgdGhlIG1vbml0b3JzIGRldGVjdGVkIGJ5IGRkY3V0aWxcblRoaXMgdG9vbCB1c2VzIGRkY3V0aWwgYXMgYmFja2VuZCBmb3IgY29tbXVuaWNhdGlvbiB3aXRoIHlvdXIgZGlzcGxheS5cblxuTWFrZSBzdXJlIHRoYXQgeW91ciB1c2VyIGNhbiB1c2UgZm9sbG93aW5nIHNoZWxsIGNvbW1hbmRzIHdpdGhvdXQgcm9vdC5cblx0YGRkY3V0aWwgZ2V0dmNwIDEwYCB0byBjaGVjayB0aGUgYnJpZ2h0bmVzcyBvZiBhIGRpc3BsYXkgYW5kXG5cdGBkZGN1dGlsIHNldHZjcCAxMCAxMDBgIHRvIHNldCB0aGUgYnJpZ2h0bmVzcyB0byAxMDBcblxuTW9yZSBpbmZvOiBodHRwczovL2dpdGh1Yi5jb20vZGFpdGovZ25vbWUtZGlzcGxheS1icmlnaHRuZXNzLWRkY3V0aWwvYmxvYi9tYXN0ZXIvUkVBRE1FLm1kIiwKICAibmFtZSI6ICJCcmlnaHRuZXNzIGNvbnRyb2wgdXNpbmcgZGRjdXRpbCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kaXNwbGF5LWJyaWdodG5lc3MtZGRjdXRpbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RoZW1pZ2h0eWRlaXR5L2dub21lLWRpc3BsYXktYnJpZ2h0bmVzcy1kZGN1dGlsIiwKICAidXVpZCI6ICJkaXNwbGF5LWJyaWdodG5lc3MtZGRjdXRpbEB0aGVtaWdodHlkZWl0eS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEwCn0="}, "40": {"version": "13", "sha256": "0x331qrmjn9ax72gsi4227l9yzncz8c0yasnzzgcixcqdxl75xkq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaWdodG5lc3Mgc2xpZGVyIGZvciBhbGwgdGhlIG1vbml0b3JzIGRldGVjdGVkIGJ5IGRkY3V0aWxcblRoaXMgdG9vbCB1c2VzIGRkY3V0aWwgYXMgYmFja2VuZCBmb3IgY29tbXVuaWNhdGlvbiB3aXRoIHlvdXIgZGlzcGxheS5cblxuTWFrZSBzdXJlIHRoYXQgeW91ciB1c2VyIGNhbiB1c2UgZm9sbG93aW5nIHNoZWxsIGNvbW1hbmRzIHdpdGhvdXQgcm9vdC5cblx0YGRkY3V0aWwgZ2V0dmNwIDEwYCB0byBjaGVjayB0aGUgYnJpZ2h0bmVzcyBvZiBhIGRpc3BsYXkgYW5kXG5cdGBkZGN1dGlsIHNldHZjcCAxMCAxMDBgIHRvIHNldCB0aGUgYnJpZ2h0bmVzcyB0byAxMDBcblxuTW9yZSBpbmZvOiBodHRwczovL2dpdGh1Yi5jb20vZGFpdGovZ25vbWUtZGlzcGxheS1icmlnaHRuZXNzLWRkY3V0aWwvYmxvYi9tYXN0ZXIvUkVBRE1FLm1kIiwKICAibmFtZSI6ICJCcmlnaHRuZXNzIGNvbnRyb2wgdXNpbmcgZGRjdXRpbCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kaXNwbGF5LWJyaWdodG5lc3MtZGRjdXRpbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RoZW1pZ2h0eWRlaXR5L2dub21lLWRpc3BsYXktYnJpZ2h0bmVzcy1kZGN1dGlsIiwKICAidXVpZCI6ICJkaXNwbGF5LWJyaWdodG5lc3MtZGRjdXRpbEB0aGVtaWdodHlkZWl0eS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEzCn0="}}}
+, {"uuid": "display-brightness-ddcutil@themightydeity.github.com", "name": "Brightness control using ddcutil", "pname": "brightness-control-using-ddcutil", "description": "Brightness slider for all the monitors detected by ddcutil\nThis tool uses ddcutil as backend for communication with your display.\n\nMake sure that your user can use following shell commands without root.\n\t`ddcutil getvcp 10` to check the brightness of a display and\n\t`ddcutil setvcp 10 100` to set the brightness to 100\n\nMore info: 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": "08rwqdcaqcx84a5bjalcvryxvhfr15a1bcyldnzw8z9aysdx1jls", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaWdodG5lc3Mgc2xpZGVyIGZvciBhbGwgdGhlIG1vbml0b3JzIGRldGVjdGVkIGJ5IGRkY3V0aWxcblRoaXMgdG9vbCB1c2VzIGRkY3V0aWwgYXMgYmFja2VuZCBmb3IgY29tbXVuaWNhdGlvbiB3aXRoIHlvdXIgZGlzcGxheS5cblxuTWFrZSBzdXJlIHRoYXQgeW91ciB1c2VyIGNhbiB1c2UgZm9sbG93aW5nIHNoZWxsIGNvbW1hbmRzIHdpdGhvdXQgcm9vdC5cblx0YGRkY3V0aWwgZ2V0dmNwIDEwYCB0byBjaGVjayB0aGUgYnJpZ2h0bmVzcyBvZiBhIGRpc3BsYXkgYW5kXG5cdGBkZGN1dGlsIHNldHZjcCAxMCAxMDBgIHRvIHNldCB0aGUgYnJpZ2h0bmVzcyB0byAxMDBcblxuTW9yZSBpbmZvOiBodHRwczovL2dpdGh1Yi5jb20vZGFpdGovZ25vbWUtZGlzcGxheS1icmlnaHRuZXNzLWRkY3V0aWwvYmxvYi9tYXN0ZXIvUkVBRE1FLm1kIiwKICAibmFtZSI6ICJCcmlnaHRuZXNzIGNvbnRyb2wgdXNpbmcgZGRjdXRpbCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kaXNwbGF5LWJyaWdodG5lc3MtZGRjdXRpbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RoZW1pZ2h0eWRlaXR5L2dub21lLWRpc3BsYXktYnJpZ2h0bmVzcy1kZGN1dGlsIiwKICAidXVpZCI6ICJkaXNwbGF5LWJyaWdodG5lc3MtZGRjdXRpbEB0aGVtaWdodHlkZWl0eS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEwCn0="}, "40": {"version": "15", "sha256": "155vv6zjd2nrb11qr4nbk05vfxg34wviyk969qz9awhv20y3a6p0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaWdodG5lc3Mgc2xpZGVyIGZvciBhbGwgdGhlIG1vbml0b3JzIGRldGVjdGVkIGJ5IGRkY3V0aWxcblRoaXMgdG9vbCB1c2VzIGRkY3V0aWwgYXMgYmFja2VuZCBmb3IgY29tbXVuaWNhdGlvbiB3aXRoIHlvdXIgZGlzcGxheS5cblxuTWFrZSBzdXJlIHRoYXQgeW91ciB1c2VyIGNhbiB1c2UgZm9sbG93aW5nIHNoZWxsIGNvbW1hbmRzIHdpdGhvdXQgcm9vdC5cblx0YGRkY3V0aWwgZ2V0dmNwIDEwYCB0byBjaGVjayB0aGUgYnJpZ2h0bmVzcyBvZiBhIGRpc3BsYXkgYW5kXG5cdGBkZGN1dGlsIHNldHZjcCAxMCAxMDBgIHRvIHNldCB0aGUgYnJpZ2h0bmVzcyB0byAxMDBcblxuTW9yZSBpbmZvOiBodHRwczovL2dpdGh1Yi5jb20vZGFpdGovZ25vbWUtZGlzcGxheS1icmlnaHRuZXNzLWRkY3V0aWwvYmxvYi9tYXN0ZXIvUkVBRE1FLm1kIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGlzcGxheS1icmlnaHRuZXNzLWRkY3V0aWwiLAogICJuYW1lIjogIkJyaWdodG5lc3MgY29udHJvbCB1c2luZyBkZGN1dGlsIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRpc3BsYXktYnJpZ2h0bmVzcy1kZGN1dGlsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RoZW1pZ2h0eWRlaXR5L2dub21lLWRpc3BsYXktYnJpZ2h0bmVzcy1kZGN1dGlsIiwKICAidXVpZCI6ICJkaXNwbGF5LWJyaWdodG5lc3MtZGRjdXRpbEB0aGVtaWdodHlkZWl0eS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE1Cn0="}}}
 , {"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": "4", "sha256": "0cv423fq7rilm6g0c27lnqa85s0j5f6xx9bd6mav17ghmr346cmn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdW50IGFuZCB1bW91bnQgZnN0YWIgZW50cmllcyB3aXRoICdub2F1dG8sdXNlcicgb3B0aW9ucy5cblxuL2V0Yy9mc3RhYiBleGFtcGxlIHRoYXQgd2lsbCBiZSBwaWNrZWQgdXAgYW5kIGxpc3RlZCBieSB0aGUgZXh0ZW5zaW9uOlxuMTkyLjE2OC4xLjE6L21udC9kYXRhL3VzZXJzL21hcnRpbiAgL21udC9zZXJ2ZXItbWFydGluICBuZnMgIG5vYXV0byx1c2VyLG5vYXRpbWUscncgIDAgIDBcblxuVG9nZ2xlIHRoZSBtZW51IHdpdGggdGhlIHNob3J0Y3V0OiBDVFJMICsgQUxUICsgbSIsCiAgIm5hbWUiOiAiTW91bnRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5tb3VudGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21hcnRpbmhqYXJ0bXlyL2dub21lLXNoZWxsLWV4dGVuc2lvbi1tb3VudGVyIiwKICAidXVpZCI6ICJtb3VudGVyQGhlYXJ0bWlyZSIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "0cv423fq7rilm6g0c27lnqa85s0j5f6xx9bd6mav17ghmr346cmn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdW50IGFuZCB1bW91bnQgZnN0YWIgZW50cmllcyB3aXRoICdub2F1dG8sdXNlcicgb3B0aW9ucy5cblxuL2V0Yy9mc3RhYiBleGFtcGxlIHRoYXQgd2lsbCBiZSBwaWNrZWQgdXAgYW5kIGxpc3RlZCBieSB0aGUgZXh0ZW5zaW9uOlxuMTkyLjE2OC4xLjE6L21udC9kYXRhL3VzZXJzL21hcnRpbiAgL21udC9zZXJ2ZXItbWFydGluICBuZnMgIG5vYXV0byx1c2VyLG5vYXRpbWUscncgIDAgIDBcblxuVG9nZ2xlIHRoZSBtZW51IHdpdGggdGhlIHNob3J0Y3V0OiBDVFJMICsgQUxUICsgbSIsCiAgIm5hbWUiOiAiTW91bnRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5tb3VudGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21hcnRpbmhqYXJ0bXlyL2dub21lLXNoZWxsLWV4dGVuc2lvbi1tb3VudGVyIiwKICAidXVpZCI6ICJtb3VudGVyQGhlYXJ0bWlyZSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"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.\n\n No settings but you can easily play around with CSS file. This 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": "3", "sha256": "0cnfpjpsvbi3149bg9s75wdmrpcr7pa4m2n7npdkdgr1rbs0pcfy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplIHNoZWxmIGluIHRoZSB0b3AgcGFuZWwsIHdpdGggbWluaW1pemVkIHdpbmRvd3Mgb2YgdGhlIGN1cnJlbnQgd29ya3NwYWNlLlxuXG4gTm8gc2V0dGluZ3MgYnV0IHlvdSBjYW4gZWFzaWx5IHBsYXkgYXJvdW5kIHdpdGggQ1NTIGZpbGUuIFRoaXMgZXh0ZW5zaW9uIGlzIGxpZ2h0IGFuZCBzaG91bGQgbm90IGludGVyZmVyZSB3aXRoIEdOT01FIFNoZWxsIGJlaGF2aW91citsb2dpYy4iLAogICJuYW1lIjogIk1pbmltaXplIFNoZWxmIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0V0ZW5pbC9taW5pbWl6ZS1zaGVsZiIsCiAgInV1aWQiOiAibWluaW1pemUtc2hlbGZAZXRlbmlsIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
 , {"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": "5", "sha256": "0ajxj1x6mbn1clk5hb9lri3c0ckvy2781i7w26y1yhfw6jbyl0np", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uIHRoYXQgcmVtb3ZlcyB0aGUgMC4xNSBzZWNvbmQgcG9wdXAgZGVsYXkgaW4gc3dpdGNoZXIgcG9wLXVwcy4gVGhpcyBleHRlbnNpb24gaXMgYWN0aXZlbHkgbWFpbnRhaW5lZC4gSXQgZml4ZXMgYXQgbGVhc3QgdGhpcyBrbm93biBpc3N1ZTogaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL211dHRlci9pc3N1ZXMvODg4LiIsCiAgIm5hbWUiOiAiUmVtb3ZlIEFsdCtUYWIgRGVsYXkgdjIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQmpvZXJuRGFhc2UvcmVtb3ZlLWFsdC10YWItZGVsYXkiLAogICJ1dWlkIjogInJlbW92ZS1hbHQtdGFiLWRlbGF5QGRhYXNlLm5ldCIsCiAgInZlcnNpb24iOiA1Cn0="}, "40": {"version": "5", "sha256": "0ajxj1x6mbn1clk5hb9lri3c0ckvy2781i7w26y1yhfw6jbyl0np", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uIHRoYXQgcmVtb3ZlcyB0aGUgMC4xNSBzZWNvbmQgcG9wdXAgZGVsYXkgaW4gc3dpdGNoZXIgcG9wLXVwcy4gVGhpcyBleHRlbnNpb24gaXMgYWN0aXZlbHkgbWFpbnRhaW5lZC4gSXQgZml4ZXMgYXQgbGVhc3QgdGhpcyBrbm93biBpc3N1ZTogaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL211dHRlci9pc3N1ZXMvODg4LiIsCiAgIm5hbWUiOiAiUmVtb3ZlIEFsdCtUYWIgRGVsYXkgdjIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQmpvZXJuRGFhc2UvcmVtb3ZlLWFsdC10YWItZGVsYXkiLAogICJ1dWlkIjogInJlbW92ZS1hbHQtdGFiLWRlbGF5QGRhYXNlLm5ldCIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"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": "12", "sha256": "0qazb5s6hm4lzj0hfridpmviznx8spnps76kv6fa8s9yca7si6ab", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIChHTk9NRSBQYW5lbCBhcHBsZXQpIHRvIG5vdGlmeSB5b3UgZXZlcnkgZGF5IHdpdGggaW5mb3JtYXRpb24gYWJvdXQgdGhlIENPVklELTE5IHZpcnVzIHNwcmVhZC4iLAogICJuYW1lIjogImNvcm9uYS10cmFja2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGFjaGhlYm8vY29yb25hLXRyYWNrZXIiLAogICJ1dWlkIjogImNvcm9uYS10cmFja2VyQGxhY2hoZWJvLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMgp9"}}}
-, {"uuid": "gnome-trash@gnome-trash.b00f.gitlab.com", "name": "Gnome Trash", "pname": "gnome-trash", "description": "A gnome shell extension to manage your trash. You can manage trash items from the panel and open or empty the trash.\nIt hides completely when the trash is empty, and lists the files in the trash bin in the panel menu.", "link": "https://extensions.gnome.org/extension/2773/gnome-trash/", "shell_version_map": {"38": {"version": "12", "sha256": "067n56xa5rxdxfyjg68iidqwxkd6k0ilinbv5wrfrp2sp645hxkz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ25vbWUgc2hlbGwgZXh0ZW5zaW9uIHRvIG1hbmFnZSB5b3VyIHRyYXNoLiBZb3UgY2FuIG1hbmFnZSB0cmFzaCBpdGVtcyBmcm9tIHRoZSBwYW5lbCBhbmQgb3BlbiBvciBlbXB0eSB0aGUgdHJhc2guXG5JdCBoaWRlcyBjb21wbGV0ZWx5IHdoZW4gdGhlIHRyYXNoIGlzIGVtcHR5LCBhbmQgbGlzdHMgdGhlIGZpbGVzIGluIHRoZSB0cmFzaCBiaW4gaW4gdGhlIHBhbmVsIG1lbnUuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtdHJhc2giLAogICJuYW1lIjogIkdub21lIFRyYXNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vYjAwZi9nbm9tZS10cmFzaCIsCiAgInV1aWQiOiAiZ25vbWUtdHJhc2hAZ25vbWUtdHJhc2guYjAwZi5naXRsYWIuY29tIiwKICAidmVyc2lvbiI6IDEyCn0="}}}
+, {"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": "3", "sha256": "0nbxk6k42iglj51injq3drabfg9iv2288is36m263dwddyf9mk6d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklmIGEgYmFja2xpZ2h0IGRldmljZSBpcyBhdmFpbGFibGUsIHRoaXMgZXh0ZW5zaW9uIHNob3dzIGEgYnJpZ2h0bmVzcyBpbmRpY2F0b3Igb24gcGFuZWwgbWVudSwgdGhhdCBhbGxvd3MgY2hhbmdpbmcgYnJpZ2h0bmVzcyB0aHJvdWdoIHNjcm9sbGluZyBvbiBpdC4gVXNlZnVsLCB3aGVuIHVzaW5nIGRkY2NpLWRyaXZlci1saW51eCBvbiBhIGRlc2t0b3AgUEMgd2l0aG91dCBuYXRpdmUga2V5Ym9hcmQgYnV0dG9ucyB0byBjaGFuZ2UgYnJpZ2h0bmVzcy4iLAogICJuYW1lIjogIkJyaWdodG5lc3MgUGFuZWwgTWVudSBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZG8tc2NoL2dub21lLXNoZWxsLWJyaWdodG5lc3MtcGFuZWwtbWVudS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImJyaWdodG5lc3NwYW5lbG1lbnVpbmRpY2F0b3JAZG8uc2NoLmRldi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "3", "sha256": "0nbxk6k42iglj51injq3drabfg9iv2288is36m263dwddyf9mk6d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklmIGEgYmFja2xpZ2h0IGRldmljZSBpcyBhdmFpbGFibGUsIHRoaXMgZXh0ZW5zaW9uIHNob3dzIGEgYnJpZ2h0bmVzcyBpbmRpY2F0b3Igb24gcGFuZWwgbWVudSwgdGhhdCBhbGxvd3MgY2hhbmdpbmcgYnJpZ2h0bmVzcyB0aHJvdWdoIHNjcm9sbGluZyBvbiBpdC4gVXNlZnVsLCB3aGVuIHVzaW5nIGRkY2NpLWRyaXZlci1saW51eCBvbiBhIGRlc2t0b3AgUEMgd2l0aG91dCBuYXRpdmUga2V5Ym9hcmQgYnV0dG9ucyB0byBjaGFuZ2UgYnJpZ2h0bmVzcy4iLAogICJuYW1lIjogIkJyaWdodG5lc3MgUGFuZWwgTWVudSBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZG8tc2NoL2dub21lLXNoZWxsLWJyaWdodG5lc3MtcGFuZWwtbWVudS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImJyaWdodG5lc3NwYW5lbG1lbnVpbmRpY2F0b3JAZG8uc2NoLmRldi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}}}
-, {"uuid": "ibus-tweaker@tuberry.github.com", "name": "IBus Tweaker", "pname": "ibus-tweaker", "description": "Tweaker of IBus for orientation, theme, font and ascii mode auto-switch\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": "0dqf56hcgfsrlshbjzf3x19yhzz2v4dj1rlm4kj834vadn5816k7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrZXIgb2YgSUJ1cyBmb3Igb3JpZW50YXRpb24sIHRoZW1lLCBmb250IGFuZCBhc2NpaSBtb2RlIGF1dG8tc3dpdGNoXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImlidXMtdHdlYWtlciIsCiAgIm5hbWUiOiAiSUJ1cyBUd2Vha2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmlidXMtdHdlYWtlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvaWJ1cy10d2Vha2VyIiwKICAidXVpZCI6ICJpYnVzLXR3ZWFrZXJAdHViZXJyeS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDI4Cn0="}, "40": {"version": "32", "sha256": "1z5rnx83lcsyhamh7a9jlli7v5ll8942a2s3sln0bs6yfr6nrb7f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrZXIgb2YgSUJ1cyBmb3Igb3JpZW50YXRpb24sIHRoZW1lLCBmb250IGFuZCBhc2NpaSBtb2RlIGF1dG8tc3dpdGNoXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImlidXMtdHdlYWtlciIsCiAgIm5hbWUiOiAiSUJ1cyBUd2Vha2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmlidXMtdHdlYWtlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2lidXMtdHdlYWtlciIsCiAgInV1aWQiOiAiaWJ1cy10d2Vha2VyQHR1YmVycnkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAzMgp9"}}}
+, {"uuid": "ibus-tweaker@tuberry.github.com", "name": "IBus Tweaker", "pname": "ibus-tweaker", "description": "Tweaker of IBus for orientation, theme, font and ascii mode auto-switch\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": "0dqf56hcgfsrlshbjzf3x19yhzz2v4dj1rlm4kj834vadn5816k7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrZXIgb2YgSUJ1cyBmb3Igb3JpZW50YXRpb24sIHRoZW1lLCBmb250IGFuZCBhc2NpaSBtb2RlIGF1dG8tc3dpdGNoXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImlidXMtdHdlYWtlciIsCiAgIm5hbWUiOiAiSUJ1cyBUd2Vha2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmlidXMtdHdlYWtlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvaWJ1cy10d2Vha2VyIiwKICAidXVpZCI6ICJpYnVzLXR3ZWFrZXJAdHViZXJyeS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDI4Cn0="}, "40": {"version": "34", "sha256": "0s1z0p4bm6kpn5qj7hyynv8xknzly9jq1zk4rh8if0qqrg48n9g1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrZXIgb2YgSUJ1cyBmb3Igb3JpZW50YXRpb24sIHRoZW1lLCBmb250IGFuZCBhc2NpaSBtb2RlIGF1dG8tc3dpdGNoXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImlidXMtdHdlYWtlciIsCiAgIm5hbWUiOiAiSUJ1cyBUd2Vha2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmlidXMtdHdlYWtlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2lidXMtdHdlYWtlciIsCiAgInV1aWQiOiAiaWJ1cy10d2Vha2VyQHR1YmVycnkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAzNAp9"}}}
 , {"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": "5", "sha256": "1gpkqw18r0vm4v7kjhd6d4iw94aqmrni0g8qxqfc21l4cw90y4g4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGV4dCAmIGljb24gb24gc3lzdHJheSB1c2luZyBEQlVTIiwKICAibmFtZSI6ICJHZW5lcmljIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHA6Ly9pbmRlZmVyby5zb3V0YWRlLmZyL3AvZ2VuZXJpY21vbml0b3IiLAogICJ1dWlkIjogImdlbmVyaWMtbW9uaXRvckBnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
 , {"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": "2", "sha256": "1nylkw0v97w4x610bd2gkz0h1xprhkrnx03qzhm4vhqjw1j2bdg2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUga2V5Ym9hcmQgbGF5b3V0IGluZGljYXRvciBpbiBzdGF0dXMgYmFyIiwKICAibmFtZSI6ICJIaWRlIEtleWJvYXJkIExheW91dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9haS9oaWRlLWtleWJvYXJkLWxheW91dCIsCiAgInV1aWQiOiAiaGlkZS1rZXlib2FyZC1sYXlvdXRAc2l0bmlrLnJ1IiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "1nylkw0v97w4x610bd2gkz0h1xprhkrnx03qzhm4vhqjw1j2bdg2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUga2V5Ym9hcmQgbGF5b3V0IGluZGljYXRvciBpbiBzdGF0dXMgYmFyIiwKICAibmFtZSI6ICJIaWRlIEtleWJvYXJkIExheW91dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9haS9oaWRlLWtleWJvYXJkLWxheW91dCIsCiAgInV1aWQiOiAiaGlkZS1rZXlib2FyZC1sYXlvdXRAc2l0bmlrLnJ1IiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "maximize-to-workspace@raonetwo.github.com", "name": "Maximize To Workspace With History", "pname": "maximize-to-workspace-with-history", "description": "Like MacOS, puts window in a new workspace when its maximized or full-screened and brings you back to original workspace when its unmaximized or unfull-screened or closed. \n\nRecommended to use with touchegg/fusuma/libinput multi finger swipe gestures.", "link": "https://extensions.gnome.org/extension/2857/maximize-to-workspace-with-history/", "shell_version_map": {"38": {"version": "21", "sha256": "1m1vhscnflmlhscinj4nipybhkps213sh2s9qpp4bxm9h9waihww", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpa2UgTWFjT1MsIHB1dHMgd2luZG93IGluIGEgbmV3IHdvcmtzcGFjZSB3aGVuIGl0cyBtYXhpbWl6ZWQgb3IgZnVsbC1zY3JlZW5lZCBhbmQgYnJpbmdzIHlvdSBiYWNrIHRvIG9yaWdpbmFsIHdvcmtzcGFjZSB3aGVuIGl0cyB1bm1heGltaXplZCBvciB1bmZ1bGwtc2NyZWVuZWQgb3IgY2xvc2VkLiBcblxuUmVjb21tZW5kZWQgdG8gdXNlIHdpdGggdG91Y2hlZ2cvZnVzdW1hL2xpYmlucHV0IG11bHRpIGZpbmdlciBzd2lwZSBnZXN0dXJlcy4iLAogICJuYW1lIjogIk1heGltaXplIFRvIFdvcmtzcGFjZSBXaXRoIEhpc3RvcnkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yYW9uZXR3by9NYXhpbWl6ZVRvV29ya3NwYWNlIiwKICAidXVpZCI6ICJtYXhpbWl6ZS10by13b3Jrc3BhY2VAcmFvbmV0d28uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAyMQp9"}, "40": {"version": "21", "sha256": "1m1vhscnflmlhscinj4nipybhkps213sh2s9qpp4bxm9h9waihww", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpa2UgTWFjT1MsIHB1dHMgd2luZG93IGluIGEgbmV3IHdvcmtzcGFjZSB3aGVuIGl0cyBtYXhpbWl6ZWQgb3IgZnVsbC1zY3JlZW5lZCBhbmQgYnJpbmdzIHlvdSBiYWNrIHRvIG9yaWdpbmFsIHdvcmtzcGFjZSB3aGVuIGl0cyB1bm1heGltaXplZCBvciB1bmZ1bGwtc2NyZWVuZWQgb3IgY2xvc2VkLiBcblxuUmVjb21tZW5kZWQgdG8gdXNlIHdpdGggdG91Y2hlZ2cvZnVzdW1hL2xpYmlucHV0IG11bHRpIGZpbmdlciBzd2lwZSBnZXN0dXJlcy4iLAogICJuYW1lIjogIk1heGltaXplIFRvIFdvcmtzcGFjZSBXaXRoIEhpc3RvcnkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yYW9uZXR3by9NYXhpbWl6ZVRvV29ya3NwYWNlIiwKICAidXVpZCI6ICJtYXhpbWl6ZS10by13b3Jrc3BhY2VAcmFvbmV0d28uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAyMQp9"}}}
 , {"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": "7", "sha256": "0f3h4cwkfx0r0l0fd2yvg7g8hj2lf5nhl6kan9p2p9dsn2sdnlvv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBiZWNvbWVzIDIgaWNvbnMgZm9yIHNlbGVjdGluZyBlaXRoZXIgQXBwbGljYXRpb25zIG9yIFdvcmtzcGFjZXMgaW4gdGhlIG92ZXJ2aWV3LiBTZWxlY3RpbmcgdGhlIHNhbWUgdmlldyBhZ2FpbiB3aWxsIGhpZGUgdGhlIG92ZXJ2aWV3LlxuU2Nyb2xsaW5nIG9uIHRoZSBpY29ucyBhbGxvd3Mgc3dpdGNoaW5nIHdpbmRvd3Mgb24gYSB3b3Jrc3BhY2Ugb3IgY3ljbGluZyB0aHJvdWdoIHRoZSBXb3Jrc3BhY2VzLiIsCiAgIm5hbWUiOiAiQWN0aXZpdGllcyBJY29ucyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mYXd0eXRvby9hY3Rpdml0aWVzLWljb25zIiwKICAidXVpZCI6ICJhY3Rpdml0aWVzX2ljb25zQGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "0f3h4cwkfx0r0l0fd2yvg7g8hj2lf5nhl6kan9p2p9dsn2sdnlvv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBiZWNvbWVzIDIgaWNvbnMgZm9yIHNlbGVjdGluZyBlaXRoZXIgQXBwbGljYXRpb25zIG9yIFdvcmtzcGFjZXMgaW4gdGhlIG92ZXJ2aWV3LiBTZWxlY3RpbmcgdGhlIHNhbWUgdmlldyBhZ2FpbiB3aWxsIGhpZGUgdGhlIG92ZXJ2aWV3LlxuU2Nyb2xsaW5nIG9uIHRoZSBpY29ucyBhbGxvd3Mgc3dpdGNoaW5nIHdpbmRvd3Mgb24gYSB3b3Jrc3BhY2Ugb3IgY3ljbGluZyB0aHJvdWdoIHRoZSBXb3Jrc3BhY2VzLiIsCiAgIm5hbWUiOiAiQWN0aXZpdGllcyBJY29ucyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mYXd0eXRvby9hY3Rpdml0aWVzLWljb25zIiwKICAidXVpZCI6ICJhY3Rpdml0aWVzX2ljb25zQGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
-, {"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": "6", "sha256": "1ss4ckxinql9jvdqlsscvb5ddj1lijibwn9zk3nhkdqpxnz5qwrq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvdGFsbHkgdHJhbnNwYXJlbnQgdG9wIHBhbmVsIGluIHRoZSBPdmVydmlldy5cbkFsc28gYWRkcyBkcm9wIHNoYWRvd3MgdG8gdGV4dCBhbmQgaWNvbnMgZm9yIHRob3NlIHVzaW5nIEdTIDMuMzguIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAidHJhbnNwYXJlbnRfcGFuZWxAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogNgp9"}}}
+, {"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": "9", "sha256": "0samdl8ig95hin9xjc41pzh648s97cqs6sb6qmjzkhnd35cx0k9s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvdGFsbHkgdHJhbnNwYXJlbnQgdG9wIHBhbmVsIGluIHRoZSBPdmVydmlldy5cbkFsc28gYWRkcyBkcm9wIHNoYWRvd3MgdG8gdGV4dCBhbmQgaWNvbnMgZm9yIHRob3NlIHVzaW5nIEdTIDMuMzguIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInRyYW5zcGFyZW50X3BhbmVsQGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "40": {"version": "9", "sha256": "0samdl8ig95hin9xjc41pzh648s97cqs6sb6qmjzkhnd35cx0k9s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvdGFsbHkgdHJhbnNwYXJlbnQgdG9wIHBhbmVsIGluIHRoZSBPdmVydmlldy5cbkFsc28gYWRkcyBkcm9wIHNoYWRvd3MgdG8gdGV4dCBhbmQgaWNvbnMgZm9yIHRob3NlIHVzaW5nIEdTIDMuMzguIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInRyYW5zcGFyZW50X3BhbmVsQGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
 , {"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": "14", "sha256": "0knl4brv7bjx6pwj3r6ywfadgfw2yqwdxxxxfykcay6q95baf8jz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYXkgSWNvbnMgUmVsb2FkZWQgaXMgYSBHTk9NRSBTaGVsbCBleHRlbnNpb24gd2hpY2ggYnJpbmcgYmFjayBUcmF5IEljb25zIHRvIHRvcCBwYW5lbCwgd2l0aCBhZGRpdGlvbmFsIGZlYXR1cmVzLlxuXG4+Pj4gUmVhZCBjb21wYXRpYmlsaXR5IG5vdGUgb24gR2l0SHViIHRoZXJlIGlzIGFsc28gYnVnIHJlcG9ydGluZyA8PDwiLAogICJuYW1lIjogIlRyYXkgSWNvbnM6IFJlbG9hZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRyYXlJY29uc1JlbG9hZGVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL01hcnRpblBML1RyYXktSWNvbnMtUmVsb2FkZWQiLAogICJ1dWlkIjogInRyYXlJY29uc1JlbG9hZGVkQHNlbGZtYWRlLnBsIiwKICAidmVyc2lvbiI6IDE0Cn0="}}}
-, {"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": "6", "sha256": "09hd9qvg4xcyz2pjv3bwx3kmzhkq95598msxf2h7jzn7kdvmc3pp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTWVzc2FnaW5nIE1lbnUgZm9yIHRoZSBHbm9tZSBTaGVsbC4gQWxsIEVtYWlsIGFuZCBDaGF0IEFwcGxpY2F0aW9ucyBpbiBvbmUgUGxhY2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiTWVzc2FnaW5nIE1lbnUiLAogICJvcmlnaW5hbC1hdXRob3IiOiAic2luaXN0ZXJzdHVmIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1lc3NhZ2luZ21lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9DaHJpc0xhdWluZ2VyNzcvbWVzc2FnaW5nbWVudSIsCiAgInV1aWQiOiAibWVzc2FnaW5nbWVudUBsYXVpbmdlci1jbGFuLmRlIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
-, {"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": "4", "sha256": "17pcz8m4xs1rqfzr1whp56hdifsfqj1fw9087viqs7gb398ji7gx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNldHRpbmdzIENlbnRlciBpcyBhIGN1c3RvbWl6YWJsZSBkcm9wLWRvd24gbWVudSBmb3IgcXVpY2tseSBsYXVuY2hpbmcgZnJlcXVlbnRseSB1c2VkIGFwcHMgaW4gR25vbWU6U2hlbGwgdmlhIHRoZSB1c2VyL2FnZ3JlZ2F0ZSBtZW51LiBPcmlnaW5hbGx5IGNyZWF0ZWQgYnkgWEVTLlxuXG52MTA6IGZpeCBmb3Igb2xkZXIgdmVyc2lvbnMsIGkgaGF2ZW50IHRlc3RlZCB0aGlzIG9uIGFueXRoaW5nIGJlbG93IDMuMTAsIHY5OiBtaW5vciBjbGVhbnVwLCBub3cgaGFzIGFuIGljb24gZm9yIHRoZSBtYWluIG1lbnUgZW50cnkuIFxuXG5TZXR0aW5ncyBzaG9ydGN1dHMgOiBnbm9tZS10d2Vhay10b29sLCBkY29uZi1lZGl0b3IsIGdjb25mLWVkaXRvciwgZ25vbWUtc2Vzc2lvbi1wcm9wZXJ0aWVzLCBnbm9tZS1zaGVsbC1leHRlbnNpb24tcHJlZnMsIHNlYWhvcnNlIGFuZCBudmlkaWEtc2V0dGluZ3MuIFlvdSBjYW4gYWRkIHlvdXIgb3duXG5cbk9yaWdpbmFsIHNvdXJjZSA6IGh0dHA6Ly9zdm4ueGVzbmV0LmZyL2dub21lZXh0ZW5zaW9ucyAoMy44IHJlcGxhY2UgU2V0dGluZ3MgY29kZSBjcmVkaXQgSXNhY0RhYXZpZClcblxuQ3JlZGl0IHRvIEBwZWFjZXNlZWtlciBmb3IgdXBkYXRpbmcgdGhpcyB3aXRoIGEgd29ya2luZyByZXBvLCBpIGRvIHdpc2ggaXQgY291bGQgaGF2ZSBiZWVuIHB1c2hlZCB0byBtZSBidXQgbXkgYmxhbmsgcmVwbyB3YXMgZGVsZXRlZCBhcyBpdCB3YXMgc3RhbGUsIGkgZmFpbGVkIHRvIHB1c2ggdG8gZ2l0IGJlZm9yZSBnb2luZyBiYWNrIHRvIHdvcmsgYXJvdW5kIDEuNSB5ZWFycyBhZ28gYW5kIGkgaGFkbid0IGJlZW4gYWN0aXZlIGVub3VnaCB0byBub3RpY2UgYW55dGhpbmcgb3RoZXIgdGhhbiBlbWFpbHModGhlc2UgdGhpbmdzIGhlbHAgcGVvcGxlISkiLAogICJsb2NhbGUiOiAiL3Vzci9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlNldHRpbmdzQ2VudGVyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIlhlcywgbDMwMGx2bCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0NocmlzTGF1aW5nZXI3Ny9YRVMtU2V0dGluZ3MtQ2VudGVyLUV4dGVuc2lvbiIsCiAgInV1aWQiOiAiU2V0dGluZ3NDZW50ZXJAbGF1aW5nZXItY2xhbi5kZSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
+, {"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="}}}
+, {"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": "8", "sha256": "1pxf5rk8nqm6scm38np546g5z9xlnf2nghzbayrxk91b67qq6znv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTWVzc2FnaW5nIE1lbnUgZm9yIHRoZSBHbm9tZSBTaGVsbC4gQWxsIEVtYWlsIGFuZCBDaGF0IEFwcGxpY2F0aW9ucyBpbiBvbmUgUGxhY2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiTWVzc2FnaW5nIE1lbnUiLAogICJvcmlnaW5hbC1hdXRob3IiOiAic2luaXN0ZXJzdHVmIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1lc3NhZ2luZ21lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0NocmlzTGF1aW5nZXI3Ny9tZXNzYWdpbmdtZW51IiwKICAidXVpZCI6ICJtZXNzYWdpbmdtZW51QGxhdWluZ2VyLWNsYW4uZGUiLAogICJ2ZXJzaW9uIjogOAp9"}}}
+, {"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": "6", "sha256": "0vbvkvrx9yd2jci452m1wdqhx1d1a858kgg45abqds8d7vdmlph1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNldHRpbmdzIENlbnRlciBpcyBhIGN1c3RvbWl6YWJsZSBkcm9wLWRvd24gbWVudSBmb3IgcXVpY2tseSBsYXVuY2hpbmcgZnJlcXVlbnRseSB1c2VkIGFwcHMgaW4gR25vbWU6U2hlbGwgdmlhIHRoZSB1c2VyL2FnZ3JlZ2F0ZSBtZW51LiBPcmlnaW5hbGx5IGNyZWF0ZWQgYnkgWEVTLlxuXG52MTA6IGZpeCBmb3Igb2xkZXIgdmVyc2lvbnMsIGkgaGF2ZW50IHRlc3RlZCB0aGlzIG9uIGFueXRoaW5nIGJlbG93IDMuMTAsIHY5OiBtaW5vciBjbGVhbnVwLCBub3cgaGFzIGFuIGljb24gZm9yIHRoZSBtYWluIG1lbnUgZW50cnkuIFxuXG5TZXR0aW5ncyBzaG9ydGN1dHMgOiBnbm9tZS10d2Vhay10b29sLCBkY29uZi1lZGl0b3IsIGdjb25mLWVkaXRvciwgZ25vbWUtc2Vzc2lvbi1wcm9wZXJ0aWVzLCBnbm9tZS1zaGVsbC1leHRlbnNpb24tcHJlZnMsIHNlYWhvcnNlIGFuZCBudmlkaWEtc2V0dGluZ3MuIFlvdSBjYW4gYWRkIHlvdXIgb3duXG5cbk9yaWdpbmFsIHNvdXJjZSA6IGh0dHA6Ly9zdm4ueGVzbmV0LmZyL2dub21lZXh0ZW5zaW9ucyAoMy44IHJlcGxhY2UgU2V0dGluZ3MgY29kZSBjcmVkaXQgSXNhY0RhYXZpZClcblxuQ3JlZGl0IHRvIEBwZWFjZXNlZWtlciBmb3IgdXBkYXRpbmcgdGhpcyB3aXRoIGEgd29ya2luZyByZXBvLCBpIGRvIHdpc2ggaXQgY291bGQgaGF2ZSBiZWVuIHB1c2hlZCB0byBtZSBidXQgbXkgYmxhbmsgcmVwbyB3YXMgZGVsZXRlZCBhcyBpdCB3YXMgc3RhbGUsIGkgZmFpbGVkIHRvIHB1c2ggdG8gZ2l0IGJlZm9yZSBnb2luZyBiYWNrIHRvIHdvcmsgYXJvdW5kIDEuNSB5ZWFycyBhZ28gYW5kIGkgaGFkbid0IGJlZW4gYWN0aXZlIGVub3VnaCB0byBub3RpY2UgYW55dGhpbmcgb3RoZXIgdGhhbiBlbWFpbHModGhlc2UgdGhpbmdzIGhlbHAgcGVvcGxlISkiLAogICJsb2NhbGUiOiAiL3Vzci9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlNldHRpbmdzQ2VudGVyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIlhlcywgbDMwMGx2bCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQ2hyaXNMYXVpbmdlcjc3L1hFUy1TZXR0aW5ncy1DZW50ZXItRXh0ZW5zaW9uIiwKICAidXVpZCI6ICJTZXR0aW5nc0NlbnRlckBsYXVpbmdlci1jbGFuLmRlIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
 , {"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": "12", "sha256": "18f1pdz50m5dw86y2zj3jij2p0sakh3qpjq2g1d55pfg96zzrd5m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5nIE91dCBTdWJtZW51IE9mIFBvd2VyIE9mZi9Mb2dvdXQgQnV0dG9uIGFuZCBSZWFycmFuZ2UgdGhlIE9yZGVyIG9mIFN5c3RlbSBNZW51LiIsCiAgIm5hbWUiOiAiQnJpbmcgT3V0IFN1Ym1lbnUgT2YgUG93ZXIgT2ZmL0xvZ291dCBCdXR0b24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9QUkFUQVAtS1VNQVIvQnJpbmctT3V0LVN1Ym1lbnUtb2YtUG93ZXItT2ZmLUxvZ291dCIsCiAgInV1aWQiOiAiQnJpbmdPdXRTdWJtZW51T2ZQb3dlck9mZkxvZ291dEJ1dHRvbkBwcmF0YXAuZmFzdG1haWwuZm0iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "40": {"version": "13", "sha256": "04nxhhi46ms0z7hqkd2c0v984ls0dcpg4d4p9jgvkkp1d4ib3yvf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5nIE91dCBTdWJtZW51IE9mIFBvd2VyIE9mZi9Mb2dvdXQgQnV0dG9uIGFuZCBSZWFycmFuZ2UgdGhlIE9yZGVyIG9mIFN5c3RlbSBNZW51LiIsCiAgIm5hbWUiOiAiQnJpbmcgT3V0IFN1Ym1lbnUgT2YgUG93ZXIgT2ZmL0xvZ291dCBCdXR0b24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwLmFscGhhIiwKICAgICI0MC4wIiwKICAgICI0MC5iZXRhIiwKICAgICI0MC5yYyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1BSQVRBUC1LVU1BUi9CcmluZy1PdXQtU3VibWVudS1vZi1Qb3dlci1PZmYtTG9nb3V0IiwKICAidXVpZCI6ICJCcmluZ091dFN1Ym1lbnVPZlBvd2VyT2ZmTG9nb3V0QnV0dG9uQHByYXRhcC5mYXN0bWFpbC5mbSIsCiAgInZlcnNpb24iOiAxMwp9"}}}
+, {"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": "22", "sha256": "0iigq5qb4jh8rjc7m8abz4fsqrihppax4czgwhphkc3fyk2r8iym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5nIE91dCBTdWJtZW51IE9mIFBvd2VyIE9mZi9Mb2dvdXQgQnV0dG9uIGFuZCBSZWFycmFuZ2UgdGhlIE9yZGVyIG9mIFN5c3RlbSBNZW51LiIsCiAgIm5hbWUiOiAiQnJpbmcgT3V0IFN1Ym1lbnUgT2YgUG93ZXIgT2ZmL0xvZ291dCBCdXR0b24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9QUkFUQVAtS1VNQVIvQnJpbmctT3V0LVN1Ym1lbnUtb2YtUG93ZXItT2ZmLUxvZ291dCIsCiAgInV1aWQiOiAiQnJpbmdPdXRTdWJtZW51T2ZQb3dlck9mZkxvZ291dEJ1dHRvbkBwcmF0YXAuZmFzdG1haWwuZm0iLAogICJ2ZXJzaW9uIjogMjIKfQ=="}, "40": {"version": "23", "sha256": "1p3g1a68a02cy646lfh5zshn0d1xra4y3w9l1i7n3g26rzxgdsbw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5nIE91dCBTdWJtZW51IE9mIFBvd2VyIE9mZi9Mb2dvdXQgQnV0dG9uIGFuZCBSZWFycmFuZ2UgdGhlIE9yZGVyIG9mIFN5c3RlbSBNZW51LiIsCiAgIm5hbWUiOiAiQnJpbmcgT3V0IFN1Ym1lbnUgT2YgUG93ZXIgT2ZmL0xvZ291dCBCdXR0b24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUFJBVEFQLUtVTUFSL0JyaW5nLU91dC1TdWJtZW51LW9mLVBvd2VyLU9mZi1Mb2dvdXQiLAogICJ1dWlkIjogIkJyaW5nT3V0U3VibWVudU9mUG93ZXJPZmZMb2dvdXRCdXR0b25AcHJhdGFwLmZhc3RtYWlsLmZtIiwKICAidmVyc2lvbiI6IDIzCn0="}}}
 , {"uuid": "batterytimepercentagecompact@sagrland.de", "name": "Battery Time (Percentage) Compact", "pname": "battery-time-percentage-compact", "description": "Show 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": "3", "sha256": "07wrch3rabbfx79w3ivp3q81r2kvf2x4hd469jrvb83qmmfaypgh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGhlIHJlbWFpbmluZyB0aW1lIHVudGlsIGZ1bGx5IGNoYXJnZWQvZGlzY2hhcmdlZCBhcyB3ZWxsIGFzIHBlcmNlbnRhZ2Ugb2YgYmF0dGVyeSBjaGFyZ2UgaW4gdGhlIHBhbmVsLiIsCiAgImdldHRleHQtZG9tYWluIjogImJhdHRlcnl0aW1lcGVyY2VudGFnZWNvbXBhY3QiLAogICJuYW1lIjogIkJhdHRlcnkgVGltZSAoUGVyY2VudGFnZSkgQ29tcGFjdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iYXR0ZXJ5dGltZXBlcmNlbnRhZ2Vjb21wYWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MC5yYyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NhR3JMYW5kL2dub21lLXNoZWxsLWJhdHRlcnktdGltZS1wZXJjZW50YWdlLWNvbXBhY3QiLAogICJ1dWlkIjogImJhdHRlcnl0aW1lcGVyY2VudGFnZWNvbXBhY3RAc2FncmxhbmQuZGUiLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "3", "sha256": "07wrch3rabbfx79w3ivp3q81r2kvf2x4hd469jrvb83qmmfaypgh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGhlIHJlbWFpbmluZyB0aW1lIHVudGlsIGZ1bGx5IGNoYXJnZWQvZGlzY2hhcmdlZCBhcyB3ZWxsIGFzIHBlcmNlbnRhZ2Ugb2YgYmF0dGVyeSBjaGFyZ2UgaW4gdGhlIHBhbmVsLiIsCiAgImdldHRleHQtZG9tYWluIjogImJhdHRlcnl0aW1lcGVyY2VudGFnZWNvbXBhY3QiLAogICJuYW1lIjogIkJhdHRlcnkgVGltZSAoUGVyY2VudGFnZSkgQ29tcGFjdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iYXR0ZXJ5dGltZXBlcmNlbnRhZ2Vjb21wYWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MC5yYyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NhR3JMYW5kL2dub21lLXNoZWxsLWJhdHRlcnktdGltZS1wZXJjZW50YWdlLWNvbXBhY3QiLAogICJ1dWlkIjogImJhdHRlcnl0aW1lcGVyY2VudGFnZWNvbXBhY3RAc2FncmxhbmQuZGUiLAogICJ2ZXJzaW9uIjogMwp9"}}}
-, {"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": "10", "sha256": "0qaldgvkgp70hl1r8f82cxs15pgvgz2ls7zcav2vsig1h0jl7s7r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4ZWN1dGUgbXVsdGlwbGUgc2hlbGwgY29tbWFuZHMgcGVyaW9kaWNhbGx5IHdpdGggc2VwYXJhdGUgaW50ZXJ2YWxzIGFuZCBkaXNwbGF5IHRoZSBvdXRwdXQgaW4gZ25vbWUgdG9wIGJhci4iLAogICJuYW1lIjogIkV4ZWN1dG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwLjIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmF1am9uYXMvZXhlY3V0b3IiLAogICJ1dWlkIjogImV4ZWN1dG9yQHJhdWpvbmFzLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMAp9"}, "40": {"version": "10", "sha256": "0qaldgvkgp70hl1r8f82cxs15pgvgz2ls7zcav2vsig1h0jl7s7r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4ZWN1dGUgbXVsdGlwbGUgc2hlbGwgY29tbWFuZHMgcGVyaW9kaWNhbGx5IHdpdGggc2VwYXJhdGUgaW50ZXJ2YWxzIGFuZCBkaXNwbGF5IHRoZSBvdXRwdXQgaW4gZ25vbWUgdG9wIGJhci4iLAogICJuYW1lIjogIkV4ZWN1dG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwLjIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmF1am9uYXMvZXhlY3V0b3IiLAogICJ1dWlkIjogImV4ZWN1dG9yQHJhdWpvbmFzLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMAp9"}}}
-, {"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": "7", "sha256": "0zdvkv8swvr9dmv3b52zjss270j1b3gq386vhahkhxk93hg6n66f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdGhlIEJsdXIgRWZmZWN0IE9uIExvY2sgU2NyZWVuLiIsCiAgIm5hbWUiOiAiQ29udHJvbCBCbHVyIEVmZmVjdCBPbiBMb2NrIFNjcmVlbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1BSQVRBUC1LVU1BUi9Db250cm9sX0JsdXJfRWZmZWN0X09uX0xvY2tfU2NyZWVuIiwKICAidXVpZCI6ICJDb250cm9sQmx1ckVmZmVjdE9uTG9ja1NjcmVlbkBwcmF0YXAuZmFzdG1haWwuZm0iLAogICJ2ZXJzaW9uIjogNwp9"}, "40": {"version": "10", "sha256": "05j3mphb04iyngv347mzqb8dr1rx49fg2snjczgx9cxl2xa65797", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdGhlIEJsdXIgRWZmZWN0IE9uIExvY2sgU2NyZWVuLiIsCiAgIm5hbWUiOiAiQ29udHJvbCBCbHVyIEVmZmVjdCBPbiBMb2NrIFNjcmVlbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1BSQVRBUC1LVU1BUi9Db250cm9sX0JsdXJfRWZmZWN0X09uX0xvY2tfU2NyZWVuIiwKICAidXVpZCI6ICJDb250cm9sQmx1ckVmZmVjdE9uTG9ja1NjcmVlbkBwcmF0YXAuZmFzdG1haWwuZm0iLAogICJ2ZXJzaW9uIjogMTAKfQ=="}}}
+, {"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": "16", "sha256": "07fa3dqydyhm6rc6iqq1qqikp00ax7swg01c4mbzh2j0awi12fig", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4ZWN1dGUgbXVsdGlwbGUgc2hlbGwgY29tbWFuZHMgcGVyaW9kaWNhbGx5IHdpdGggc2VwYXJhdGUgaW50ZXJ2YWxzIGFuZCBkaXNwbGF5IHRoZSBvdXRwdXQgaW4gZ25vbWUgdG9wIGJhci4iLAogICJuYW1lIjogIkV4ZWN1dG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwLjIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmF1am9uYXMvZXhlY3V0b3IiLAogICJ1dWlkIjogImV4ZWN1dG9yQHJhdWpvbmFzLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxNgp9"}, "40": {"version": "16", "sha256": "07fa3dqydyhm6rc6iqq1qqikp00ax7swg01c4mbzh2j0awi12fig", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4ZWN1dGUgbXVsdGlwbGUgc2hlbGwgY29tbWFuZHMgcGVyaW9kaWNhbGx5IHdpdGggc2VwYXJhdGUgaW50ZXJ2YWxzIGFuZCBkaXNwbGF5IHRoZSBvdXRwdXQgaW4gZ25vbWUgdG9wIGJhci4iLAogICJuYW1lIjogIkV4ZWN1dG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwLjIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmF1am9uYXMvZXhlY3V0b3IiLAogICJ1dWlkIjogImV4ZWN1dG9yQHJhdWpvbmFzLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxNgp9"}}}
+, {"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": "15", "sha256": "1a8fslcwcv19inzca8snc76k0yacam8qyfws8gk52yy5apa2fwjd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdGhlIEJsdXIgRWZmZWN0IE9uIExvY2sgU2NyZWVuLiIsCiAgIm5hbWUiOiAiQ29udHJvbCBCbHVyIEVmZmVjdCBPbiBMb2NrIFNjcmVlbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9QUkFUQVAtS1VNQVIvQ29udHJvbF9CbHVyX0VmZmVjdF9Pbl9Mb2NrX1NjcmVlbiIsCiAgInV1aWQiOiAiQ29udHJvbEJsdXJFZmZlY3RPbkxvY2tTY3JlZW5AcHJhdGFwLmZhc3RtYWlsLmZtIiwKICAidmVyc2lvbiI6IDE1Cn0="}}}
 , {"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": "20", "sha256": "0lj9lzs0vngm6lr7dz1p6k6gnaz2a4hwp7g6y6i2r4c6kcwicqkq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvYmJseSB3aW5kb3dzIGVmZmVjdCBpbnNwaXJlZCBieSB0aGUgQ29tcGl6IG9uZXNcblxuTkJcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKVxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIEFMVEVSTkFUSVZFXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuYWx0ZXJuYXRpdmUgZXh0ZW5zaW9uIHRvIG9idGFpbiBhbiBlZmZlY3QgbW9yZSBzaW1pbGFyIHRvIHRoZSBvcmlnaW5hbDpcbmh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzMyMTAvY29tcGl6LXdpbmRvd3MtZWZmZWN0LyIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIHdpbmRvd3MgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hlcm1lczgzL2NvbXBpei1hbGlrZS13aW5kb3dzLWVmZmVjdCIsCiAgInV1aWQiOiAiY29tcGl6LWFsaWtlLXdpbmRvd3MtZWZmZWN0QGhlcm1lczgzLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjAKfQ=="}, "40": {"version": "20", "sha256": "0lj9lzs0vngm6lr7dz1p6k6gnaz2a4hwp7g6y6i2r4c6kcwicqkq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvYmJseSB3aW5kb3dzIGVmZmVjdCBpbnNwaXJlZCBieSB0aGUgQ29tcGl6IG9uZXNcblxuTkJcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKVxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIEFMVEVSTkFUSVZFXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuYWx0ZXJuYXRpdmUgZXh0ZW5zaW9uIHRvIG9idGFpbiBhbiBlZmZlY3QgbW9yZSBzaW1pbGFyIHRvIHRoZSBvcmlnaW5hbDpcbmh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzMyMTAvY29tcGl6LXdpbmRvd3MtZWZmZWN0LyIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIHdpbmRvd3MgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hlcm1lczgzL2NvbXBpei1hbGlrZS13aW5kb3dzLWVmZmVjdCIsCiAgInV1aWQiOiAiY29tcGl6LWFsaWtlLXdpbmRvd3MtZWZmZWN0QGhlcm1lczgzLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjAKfQ=="}}}
-, {"uuid": "light-dict@tuberry.github.io", "name": "Light Dict", "pname": "light-dict", "description": "Lightweight extension for instant action to primary selection, especially optimized for Dictionary lookup\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": "0afn26f234zsk4w1766yf5pr2rrb9d375f9qgqmxibaq34qbn4rx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IGV4dGVuc2lvbiBmb3IgaW5zdGFudCBhY3Rpb24gdG8gcHJpbWFyeSBzZWxlY3Rpb24sIGVzcGVjaWFsbHkgb3B0aW1pemVkIGZvciBEaWN0aW9uYXJ5IGxvb2t1cFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJsaWdodC1kaWN0IiwKICAibmFtZSI6ICJMaWdodCBEaWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxpZ2h0LWRpY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2xpZ2h0LWRpY3QiLAogICJ1dWlkIjogImxpZ2h0LWRpY3RAdHViZXJyeS5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNDcKfQ=="}, "40": {"version": "54", "sha256": "0gjfpy5lk5qp093syhz5q8c30hbrw2wijnzwbykidczrh58qr3g9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IGV4dGVuc2lvbiBmb3IgaW5zdGFudCBhY3Rpb24gdG8gcHJpbWFyeSBzZWxlY3Rpb24sIGVzcGVjaWFsbHkgb3B0aW1pemVkIGZvciBEaWN0aW9uYXJ5IGxvb2t1cFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJsaWdodC1kaWN0IiwKICAibmFtZSI6ICJMaWdodCBEaWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxpZ2h0LWRpY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9saWdodC1kaWN0IiwKICAidXVpZCI6ICJsaWdodC1kaWN0QHR1YmVycnkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDU0Cn0="}}}
+, {"uuid": "light-dict@tuberry.github.io", "name": "Light Dict", "pname": "light-dict", "description": "Lightweight extension for instant action to primary selection, especially optimized for Dictionary lookup\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": "0afn26f234zsk4w1766yf5pr2rrb9d375f9qgqmxibaq34qbn4rx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IGV4dGVuc2lvbiBmb3IgaW5zdGFudCBhY3Rpb24gdG8gcHJpbWFyeSBzZWxlY3Rpb24sIGVzcGVjaWFsbHkgb3B0aW1pemVkIGZvciBEaWN0aW9uYXJ5IGxvb2t1cFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJsaWdodC1kaWN0IiwKICAibmFtZSI6ICJMaWdodCBEaWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxpZ2h0LWRpY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2xpZ2h0LWRpY3QiLAogICJ1dWlkIjogImxpZ2h0LWRpY3RAdHViZXJyeS5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNDcKfQ=="}, "40": {"version": "56", "sha256": "1r8lw1fr8xw1dq8kgjjg2znzbj1665saj14jr1igpmkg9czxy3c6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IGV4dGVuc2lvbiBmb3IgaW5zdGFudCBhY3Rpb24gdG8gcHJpbWFyeSBzZWxlY3Rpb24sIGVzcGVjaWFsbHkgb3B0aW1pemVkIGZvciBEaWN0aW9uYXJ5IGxvb2t1cFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tbGlnaHQtZGljdCIsCiAgIm5hbWUiOiAiTGlnaHQgRGljdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5saWdodC1kaWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvbGlnaHQtZGljdCIsCiAgInV1aWQiOiAibGlnaHQtZGljdEB0dWJlcnJ5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA1Ngp9"}}}
 , {"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": "6", "sha256": "0qjqf5wdwvav5333k44qbgzkgwbhhm42370862ba8p3anih5d72w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBhbmQgbWluaW1hbCBpbnRlcm5ldCBzcGVlZCBtZXRlciBleHRlbnNpb24gZm9yIGdub21lIHNoZWxsIiwKICAibmFtZSI6ICJJbnRlcm5ldCBTcGVlZCBNZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9BbFNoYWtpYi9JbnRlcm5ldFNwZWVkTWV0ZXIiLAogICJ1dWlkIjogIkludGVybmV0U3BlZWRNZXRlckBhbHNoYWtpYi5kZXYiLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "6", "sha256": "0qjqf5wdwvav5333k44qbgzkgwbhhm42370862ba8p3anih5d72w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBhbmQgbWluaW1hbCBpbnRlcm5ldCBzcGVlZCBtZXRlciBleHRlbnNpb24gZm9yIGdub21lIHNoZWxsIiwKICAibmFtZSI6ICJJbnRlcm5ldCBTcGVlZCBNZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9BbFNoYWtpYi9JbnRlcm5ldFNwZWVkTWV0ZXIiLAogICJ1dWlkIjogIkludGVybmV0U3BlZWRNZXRlckBhbHNoYWtpYi5kZXYiLAogICJ2ZXJzaW9uIjogNgp9"}}}
-, {"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": "8", "sha256": "0pd9q6k6q2w4fhhai6mjdmgp571cpambn3x5nq4579ry60cwlcl8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHVzZWZ1bCBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBBZGRyZXNzXG5cbklQIEZpbmRlciBkaXNwbGF5cyBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBhZGRyZXNzLCBob3N0bmFtZSwgY291bnRyeSwgQVMgQmxvY2ssIGFzIHdlbGwgYXMgIGEgbWFwIHRpbGUgb2YgeW91ciBHZW9sb2NhdGlvbiBhbmQgY291bnRyeSBmbGFnLCAgdGhpcyBleHRlbnNpb24gaXMgQWxzbyBVc2VmdWwgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgdG8gbW9uaXRvciBWUE4gY2hhbmdlcyBhbmQgcHVibGljIG5ldHdvcmsgSVAgQWRkcmVzc2VzLlxuXG49PT09PT09PT09PT09PT09PT09PT1cbklQIEZpbmRlciBjYW4gbW9uaXRvciBpbiByZWFsIHRpbWVcbj09PT09PT09PT09PT09PT09PT09PVxuKldpcmVndWFyZCBjb25uZWN0aW9uc1xuKk9wZW5WUE4gY29ubmVjdGlvbnNcbipJUFY0LzYgY29ubmVjdGlvbnNcbipQcm94eSBjb25uZWN0aW9uc1xuKlZQTiB2ZW5kb3IgYXBwbGljYXRpb25zXG4qTWFudWFsIHN0YXRpYyBJUCBjaGFuZ2VzXG5cbj09PT09PT09PT09PT09PT09PT09XG5JUCBGaW5kZXIgaGFzIGFkZGVkIHNlY3VyaXR5XG49PT09PT09PT09PT09PT09PT09PVxuTmV3bHkgZGV2ZWxvcGVkIHJldmlzZWQgY29kZSBiYXNlIHVzaW5nIG9wZW4gdGVjaG5vbG9naWVzIGFuZCB1c2luZyBBUEkncyBmb3IgUHVibGljIElQIGFuZCBNYXAgVGlsZSBpbWFnZSBsb2NhdGlvbnMgdXNpbmcgR0VUIHJlcXVlc3RzIG92ZXIgSFRUUFMgZm9yIGEgYWRkZWQgbGF5ZXIgb2YgZW5jcnlwdGVkICBTZWN1cml0eSwgUGxlYXNlIHNlZSBzb3VyY2UgY29kZSBmb3IgbW9yZSBkZXRhaWxzLlxuXG49PT09PT09PT09PT09PT09PT09PVxuQ29tcGF0aWJsZSBHTk9NRSBzaGVsbCAtIDMuMzYgYW5kIG5ld2VyLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJpcC1maW5kZXIiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpcC1maW5kZXIiLAogICJuYW1lIjogIklQIEZpbmRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wdWJsaWMtaXAtYWRkcmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9MaW54R2VtMzMvSVAtRmluZGVyIiwKICAidXVpZCI6ICJJUC1GaW5kZXJAbGlueGdlbTMzLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "40": {"version": "8", "sha256": "0pd9q6k6q2w4fhhai6mjdmgp571cpambn3x5nq4579ry60cwlcl8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHVzZWZ1bCBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBBZGRyZXNzXG5cbklQIEZpbmRlciBkaXNwbGF5cyBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBhZGRyZXNzLCBob3N0bmFtZSwgY291bnRyeSwgQVMgQmxvY2ssIGFzIHdlbGwgYXMgIGEgbWFwIHRpbGUgb2YgeW91ciBHZW9sb2NhdGlvbiBhbmQgY291bnRyeSBmbGFnLCAgdGhpcyBleHRlbnNpb24gaXMgQWxzbyBVc2VmdWwgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgdG8gbW9uaXRvciBWUE4gY2hhbmdlcyBhbmQgcHVibGljIG5ldHdvcmsgSVAgQWRkcmVzc2VzLlxuXG49PT09PT09PT09PT09PT09PT09PT1cbklQIEZpbmRlciBjYW4gbW9uaXRvciBpbiByZWFsIHRpbWVcbj09PT09PT09PT09PT09PT09PT09PVxuKldpcmVndWFyZCBjb25uZWN0aW9uc1xuKk9wZW5WUE4gY29ubmVjdGlvbnNcbipJUFY0LzYgY29ubmVjdGlvbnNcbipQcm94eSBjb25uZWN0aW9uc1xuKlZQTiB2ZW5kb3IgYXBwbGljYXRpb25zXG4qTWFudWFsIHN0YXRpYyBJUCBjaGFuZ2VzXG5cbj09PT09PT09PT09PT09PT09PT09XG5JUCBGaW5kZXIgaGFzIGFkZGVkIHNlY3VyaXR5XG49PT09PT09PT09PT09PT09PT09PVxuTmV3bHkgZGV2ZWxvcGVkIHJldmlzZWQgY29kZSBiYXNlIHVzaW5nIG9wZW4gdGVjaG5vbG9naWVzIGFuZCB1c2luZyBBUEkncyBmb3IgUHVibGljIElQIGFuZCBNYXAgVGlsZSBpbWFnZSBsb2NhdGlvbnMgdXNpbmcgR0VUIHJlcXVlc3RzIG92ZXIgSFRUUFMgZm9yIGEgYWRkZWQgbGF5ZXIgb2YgZW5jcnlwdGVkICBTZWN1cml0eSwgUGxlYXNlIHNlZSBzb3VyY2UgY29kZSBmb3IgbW9yZSBkZXRhaWxzLlxuXG49PT09PT09PT09PT09PT09PT09PVxuQ29tcGF0aWJsZSBHTk9NRSBzaGVsbCAtIDMuMzYgYW5kIG5ld2VyLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJpcC1maW5kZXIiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpcC1maW5kZXIiLAogICJuYW1lIjogIklQIEZpbmRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wdWJsaWMtaXAtYWRkcmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9MaW54R2VtMzMvSVAtRmluZGVyIiwKICAidXVpZCI6ICJJUC1GaW5kZXJAbGlueGdlbTMzLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}}}
-, {"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": "12", "sha256": "1hn8zi9n9kqbl9gqhv314zpbf4n55ra5p7q6ca1mm235dwssr3j3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vd2luMGVyci9nbm9tZS1ydW5jYXQiLAogICJ1dWlkIjogInJ1bmNhdEBrb2xlc25pa292LnNlIiwKICAidmVyc2lvbiI6IDEyCn0="}, "40": {"version": "12", "sha256": "1hn8zi9n9kqbl9gqhv314zpbf4n55ra5p7q6ca1mm235dwssr3j3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vd2luMGVyci9nbm9tZS1ydW5jYXQiLAogICJ1dWlkIjogInJ1bmNhdEBrb2xlc25pa292LnNlIiwKICAidmVyc2lvbiI6IDEyCn0="}}}
+, {"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=="}}}
+, {"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": "13", "sha256": "1y11vsqgvy6yvy8b6w4b4xa5spags86hq1ma6pp448ljdgwh40xa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3dpbjBlcnIvZ25vbWUtcnVuY2F0IiwKICAidXVpZCI6ICJydW5jYXRAa29sZXNuaWtvdi5zZSIsCiAgInZlcnNpb24iOiAxMwp9"}, "40": {"version": "13", "sha256": "1y11vsqgvy6yvy8b6w4b4xa5spags86hq1ma6pp448ljdgwh40xa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3dpbjBlcnIvZ25vbWUtcnVuY2F0IiwKICAidXVpZCI6ICJydW5jYXRAa29sZXNuaWtvdi5zZSIsCiAgInZlcnNpb24iOiAxMwp9"}}}
 , {"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": "Lenovo Ideapad", "pname": "ideapad", "description": "Lenovo Ideapad goodies for Gnome Shell.\nUser-friendly battery conservation mode control.\n\nPlease note additional installation steps are needed! Check on the homepage.", "link": "https://extensions.gnome.org/extension/2992/ideapad/", "shell_version_map": {"38": {"version": "3", "sha256": "1i68qi9r396sdhirp5xhaaxdzzjqhdv2i4hbp8dyiq2qxj9ny2w1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxlbm92byBJZGVhcGFkIGdvb2RpZXMgZm9yIEdub21lIFNoZWxsLlxuVXNlci1mcmllbmRseSBiYXR0ZXJ5IGNvbnNlcnZhdGlvbiBtb2RlIGNvbnRyb2wuXG5cblBsZWFzZSBub3RlIGFkZGl0aW9uYWwgaW5zdGFsbGF0aW9uIHN0ZXBzIGFyZSBuZWVkZWQhIENoZWNrIG9uIHRoZSBob21lcGFnZS4iLAogICJuYW1lIjogIkxlbm92byBJZGVhcGFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGF1cmVudG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWlkZWFwYWQiLAogICJ1dWlkIjogImlkZWFwYWRAbGF1cmVudG8uZnJpdHRlbGxhIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "40": {"version": "3", "sha256": "1i68qi9r396sdhirp5xhaaxdzzjqhdv2i4hbp8dyiq2qxj9ny2w1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxlbm92byBJZGVhcGFkIGdvb2RpZXMgZm9yIEdub21lIFNoZWxsLlxuVXNlci1mcmllbmRseSBiYXR0ZXJ5IGNvbnNlcnZhdGlvbiBtb2RlIGNvbnRyb2wuXG5cblBsZWFzZSBub3RlIGFkZGl0aW9uYWwgaW5zdGFsbGF0aW9uIHN0ZXBzIGFyZSBuZWVkZWQhIENoZWNrIG9uIHRoZSBob21lcGFnZS4iLAogICJuYW1lIjogIkxlbm92byBJZGVhcGFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGF1cmVudG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWlkZWFwYWQiLAogICJ1dWlkIjogImlkZWFwYWRAbGF1cmVudG8uZnJpdHRlbGxhIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
-, {"uuid": "user-theme-x@tuberry.github.io", "name": "User Themes X", "pname": "user-themes-x", "description": "Customizable user-theme with user stylesheet and night 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": "11q5f3rj2c27cb4gz8ga8kshc55gxqg7v841mrr2vw80p8792nr1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6YWJsZSB1c2VyLXRoZW1lIHdpdGggdXNlciBzdHlsZXNoZWV0IGFuZCBuaWdodCB0aGVtZSBhdXRvLXN3aXRjaCBzdXBwb3J0XG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ1c2VyLXRoZW1lLXgiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ1c2VyLXRoZW1lLXgiLAogICJuYW1lIjogIlVzZXIgVGhlbWVzIFgiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImpvaG4uc3Rvd2Vyc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVzZXItdGhlbWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L3VzZXItdGhlbWUteCIsCiAgInV1aWQiOiAidXNlci10aGVtZS14QHR1YmVycnkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDIxCn0="}, "40": {"version": "23", "sha256": "11dchipn43fjrv32ylzcbirhwrxx5m9vfmwcwvlffwdcgvg5v6f2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6YWJsZSB1c2VyLXRoZW1lIHdpdGggdXNlciBzdHlsZXNoZWV0IGFuZCBuaWdodCB0aGVtZSBhdXRvLXN3aXRjaCBzdXBwb3J0XG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ1c2VyLXRoZW1lLXgiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ1c2VyLXRoZW1lLXgiLAogICJuYW1lIjogIlVzZXIgVGhlbWVzIFgiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImpvaG4uc3Rvd2Vyc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVzZXItdGhlbWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS91c2VyLXRoZW1lLXgiLAogICJ1dWlkIjogInVzZXItdGhlbWUteEB0dWJlcnJ5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAyMwp9"}}}
+, {"uuid": "ideapad@laurento.frittella", "name": "IdeaPad", "pname": "ideapad", "description": "Lenovo IdeaPad goodies for Gnome Shell", "link": "https://extensions.gnome.org/extension/2992/ideapad/", "shell_version_map": {"38": {"version": "4", "sha256": "0pnk7avnkp847vhdsgdyyp780aikly1bh56lvp6497q5ym14jfna", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxlbm92byBJZGVhUGFkIGdvb2RpZXMgZm9yIEdub21lIFNoZWxsIiwKICAibmFtZSI6ICJJZGVhUGFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2xhdXJlbnRvL2dub21lLXNoZWxsLWV4dGVuc2lvbi1pZGVhcGFkIiwKICAidXVpZCI6ICJpZGVhcGFkQGxhdXJlbnRvLmZyaXR0ZWxsYSIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "0pnk7avnkp847vhdsgdyyp780aikly1bh56lvp6497q5ym14jfna", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxlbm92byBJZGVhUGFkIGdvb2RpZXMgZm9yIEdub21lIFNoZWxsIiwKICAibmFtZSI6ICJJZGVhUGFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2xhdXJlbnRvL2dub21lLXNoZWxsLWV4dGVuc2lvbi1pZGVhcGFkIiwKICAidXVpZCI6ICJpZGVhcGFkQGxhdXJlbnRvLmZyaXR0ZWxsYSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
+, {"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.", "link": "https://extensions.gnome.org/extension/3010/system-monitor-next/", "shell_version_map": {"40": {"version": "33", "sha256": "0zyrs51m7sh80sjpx57gg2fpw1xzddmccpp0im3cgjls3vm3ynvg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgc3lzdGVtIGluZm9ybWF0aW9uIGluIEdOT01FIFNoZWxsIHN0YXR1cyBiYXIsIHN1Y2ggYXMgbWVtb3J5LCBDUFUsIGRpc2sgYW5kIGJhdHRlcnkgdXNhZ2VzLCBuZXR3b3JrIHJhdGVzXHUyMDI2XG5cblRoaXMgZm9yayBvZiBwYXJhZG94eHh6ZXJvL2dub21lLXNoZWxsLXN5c3RlbS1tb25pdG9yLWFwcGxldCBpcyBmb3IgcGFja2FnaW5nIHB1cnBvc2VzIG9ubHkuIFRoaXMgZXh0ZW5zaW9uIGlzIGJ1aWx0IGFuZCB1cGRhdGVkIGNvbnRpbnVvdXNseSB3aXRoIHRoZSB1cHN0cmVhbSBtYXN0ZXIgYnJhbmNoLlxuXG5UaGlzIGlzIHByZWZlcmFibGUgZm9yIHVzZXJzIG9uIGJsZWVkaW5nIGVkZ2UgZGlzdHJpYnV0aW9ucyB0aGF0IHByZWZlciBub3QgdG8gd2FpdCBmb3IgYSBzdGFibGUgcmVsZWFzZSBmcm9tIHRoZSBtYWluIHJlcG8uIE9mIGNvdXJzZSwgc2luY2Ugd2UncmUgcmVsZWFzaW5nIGRpcmVjdGx5IGZyb20gbWFzdGVyIHNvbWUgaW5zdGFiaWxpdHkgaXMgaW5ldml0YWJsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzeXN0ZW0tbW9uaXRvciIsCiAgIm5hbWUiOiAic3lzdGVtLW1vbml0b3ItbmV4dCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zeXN0ZW0tbW9uaXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tZ2FsZ3MvZ25vbWUtc2hlbGwtc3lzdGVtLW1vbml0b3ItYXBwbGV0IiwKICAidXVpZCI6ICJzeXN0ZW0tbW9uaXRvci1uZXh0QHBhcmFkb3h4eC56ZXJvLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzMwp9"}}}
+, {"uuid": "user-theme-x@tuberry.github.io", "name": "User Themes X", "pname": "user-themes-x", "description": "Customizable user-theme with user stylesheet and night 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": "11q5f3rj2c27cb4gz8ga8kshc55gxqg7v841mrr2vw80p8792nr1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6YWJsZSB1c2VyLXRoZW1lIHdpdGggdXNlciBzdHlsZXNoZWV0IGFuZCBuaWdodCB0aGVtZSBhdXRvLXN3aXRjaCBzdXBwb3J0XG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ1c2VyLXRoZW1lLXgiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ1c2VyLXRoZW1lLXgiLAogICJuYW1lIjogIlVzZXIgVGhlbWVzIFgiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImpvaG4uc3Rvd2Vyc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVzZXItdGhlbWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L3VzZXItdGhlbWUteCIsCiAgInV1aWQiOiAidXNlci10aGVtZS14QHR1YmVycnkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDIxCn0="}, "40": {"version": "24", "sha256": "0mcz80dys1h17k3ffrlai4180asbxc3dc2f92ib64p4gjy5qzalw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6YWJsZSB1c2VyLXRoZW1lIHdpdGggdXNlciBzdHlsZXNoZWV0IGFuZCBuaWdodCB0aGVtZSBhdXRvLXN3aXRjaCBzdXBwb3J0XG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ1c2VyLXRoZW1lLXgiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ1c2VyLXRoZW1lLXgiLAogICJuYW1lIjogIlVzZXIgVGhlbWVzIFgiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImpvaG4uc3Rvd2Vyc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVzZXItdGhlbWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS91c2VyLXRoZW1lLXgiLAogICJ1dWlkIjogInVzZXItdGhlbWUteEB0dWJlcnJ5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAyNAp9"}}}
 , {"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": "6", "sha256": "0bigmnvybrflmc7dq9g00c8h9sfwd2c8iqm8j4zg7mzj1gjaazkc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSB0ZXh0IGluIHRoZSBBcHBsaWNhdGlvbiB2aWV3IGNhbiBiZSBoYXJkIHRvIHJlYWQgb24gYSBsaWdodCBjb2xvdXJlZCBiYWNrZ3JvdW5kLiBUaGlzIGV4dGVuc2lvbiBtYWtlcyB0aGUgdGV4dCBib2xkZXIgd2l0aCBhIGRyb3Agc2hhZG93LlxuQWxzbyBpbXByb3ZlcyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgYXBwIHJ1bm5pbmcgZG90LiIsCiAgIm5hbWUiOiAiQXBwbGljYXRpb24gVmlldyBUZXh0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJhcHBfdmlld190ZXh0QGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "6", "sha256": "0bigmnvybrflmc7dq9g00c8h9sfwd2c8iqm8j4zg7mzj1gjaazkc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSB0ZXh0IGluIHRoZSBBcHBsaWNhdGlvbiB2aWV3IGNhbiBiZSBoYXJkIHRvIHJlYWQgb24gYSBsaWdodCBjb2xvdXJlZCBiYWNrZ3JvdW5kLiBUaGlzIGV4dGVuc2lvbiBtYWtlcyB0aGUgdGV4dCBib2xkZXIgd2l0aCBhIGRyb3Agc2hhZG93LlxuQWxzbyBpbXByb3ZlcyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgYXBwIHJ1bm5pbmcgZG90LiIsCiAgIm5hbWUiOiAiQXBwbGljYXRpb24gVmlldyBUZXh0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJhcHBfdmlld190ZXh0QGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
 , {"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": "0cvgcwk7liaaws9gf366xls7cn4slzzmh4l33qq91mgnm5wajr6k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBzaGFkb3dzb2NrcyBzdWJzY3JpYmVyIChTU0Qgb25seSksIHlldCBhbm90aGVyIHByb3h5IHN3aXRjaGVyIGZvciBnbm9tZSBzaGVsbFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzcy1zdWJzY3JpYmVyIiwKICAibmFtZSI6ICJTaW1wbGUgU3Vic2NyaWJlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zcy1zdWJzY3JpYmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9zcy1zdWJzY3JpYmVyIiwKICAidXVpZCI6ICJzc3NzQHR1LmJlcnJ5IiwKICAidmVyc2lvbiI6IDE4Cn0="}, "40": {"version": "20", "sha256": "0c9104f2a9b98732jwg0sgfjzbp5qsm2lgh1z1n5hp2524s1f0sv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBzaGFkb3dzb2NrcyBzdWJzY3JpYmVyIChTU0Qgb25seSksIHlldCBhbm90aGVyIHByb3h5IHN3aXRjaGVyIGZvciBnbm9tZSBzaGVsbFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzcy1zdWJzY3JpYmVyIiwKICAibmFtZSI6ICJTaW1wbGUgU3Vic2NyaWJlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zcy1zdWJzY3JpYmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvc3Mtc3Vic2NyaWJlciIsCiAgInV1aWQiOiAic3Nzc0B0dS5iZXJyeSIsCiAgInZlcnNpb24iOiAyMAp9"}}}
-, {"uuid": "extension-list@tu.berry", "name": "Extension List", "pname": "extension-list", "description": "Simple gnome shell extension manager in 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": "111q6m34vdsxbiw3nim3hwd2h3bf8mflg7s6qdzxcn1g0kih7x1i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBnbm9tZSBzaGVsbCBleHRlbnNpb24gbWFuYWdlciBpbiB0b3AgcGFuZWxcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZXh0ZW5zaW9uLWxpc3QiLAogICJuYW1lIjogIkV4dGVuc2lvbiBMaXN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmV4dGVuc2lvbi1saXN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9leHRlbnNpb24tbGlzdCIsCiAgInV1aWQiOiAiZXh0ZW5zaW9uLWxpc3RAdHUuYmVycnkiLAogICJ2ZXJzaW9uIjogMjUKfQ=="}, "40": {"version": "26", "sha256": "0sywsz7ksd16cxfw22xvmib8l7cb1d76dnx49sp7xawlimwjdj5q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBnbm9tZSBzaGVsbCBleHRlbnNpb24gbWFuYWdlciBpbiB0b3AgcGFuZWxcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZXh0ZW5zaW9uLWxpc3QiLAogICJuYW1lIjogIkV4dGVuc2lvbiBMaXN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmV4dGVuc2lvbi1saXN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvZXh0ZW5zaW9uLWxpc3QiLAogICJ1dWlkIjogImV4dGVuc2lvbi1saXN0QHR1LmJlcnJ5IiwKICAidmVyc2lvbiI6IDI2Cn0="}}}
+, {"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": "0ckv4i23bqga97pv4hsfkc2zx7hhyj2ngz0l4jw5bbfs25adg2jf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBnbm9tZSBzaGVsbCBleHRlbnNpb24gbWFuYWdlciBpbiB0aGUgdG9wIHBhbmVsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImV4dGVuc2lvbi1saXN0IiwKICAibmFtZSI6ICJFeHRlbnNpb24gTGlzdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5leHRlbnNpb24tbGlzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvZXh0ZW5zaW9uLWxpc3QiLAogICJ1dWlkIjogImV4dGVuc2lvbi1saXN0QHR1LmJlcnJ5IiwKICAidmVyc2lvbiI6IDI1Cn0="}, "40": {"version": "27", "sha256": "00n5v7a0qahkpan77np3jmiwzb399p1p8kbhcyd60l7r3910hbf7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBnbm9tZSBzaGVsbCBleHRlbnNpb24gbWFuYWdlciBpbiB0aGUgdG9wIHBhbmVsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImV4dGVuc2lvbi1saXN0IiwKICAibmFtZSI6ICJFeHRlbnNpb24gTGlzdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5leHRlbnNpb24tbGlzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2V4dGVuc2lvbi1saXN0IiwKICAidXVpZCI6ICJleHRlbnNpb24tbGlzdEB0dS5iZXJyeSIsCiAgInZlcnNpb24iOiAyNwp9"}}}
 , {"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": "7", "sha256": "0ncqpr2rw8nbjyvwpq3x5ddiw1l1nmz0kw8698p0l7jmgycmi785", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldyBhbmQgbWF4aW1pemVkIHdpbmRvd3Mgd2lsbCBiZSBtb3ZlZCB0byBlbXB0eSB3b3Jrc3BhY2VzLlxuU3VwcG9ydHMgbXVsdGlwbGUgbW9uaXRvcnMuIiwKICAibmFtZSI6ICJNYXhpbWl6ZSBUbyBFbXB0eSBXb3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rYWlzZXJhY20vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW1heGltaXplLXRvLWVtcHR5LXdvcmtzcGFjZSIsCiAgInV1aWQiOiAiTWF4aW1pemVUb0VtcHR5V29ya3NwYWNlLWV4dGVuc2lvbkBrYWlzZXJzaXRlLmRlIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "0ncqpr2rw8nbjyvwpq3x5ddiw1l1nmz0kw8698p0l7jmgycmi785", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldyBhbmQgbWF4aW1pemVkIHdpbmRvd3Mgd2lsbCBiZSBtb3ZlZCB0byBlbXB0eSB3b3Jrc3BhY2VzLlxuU3VwcG9ydHMgbXVsdGlwbGUgbW9uaXRvcnMuIiwKICAibmFtZSI6ICJNYXhpbWl6ZSBUbyBFbXB0eSBXb3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rYWlzZXJhY20vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW1heGltaXplLXRvLWVtcHR5LXdvcmtzcGFjZSIsCiAgInV1aWQiOiAiTWF4aW1pemVUb0VtcHR5V29ya3NwYWNlLWV4dGVuc2lvbkBrYWlzZXJzaXRlLmRlIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
+, {"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": "8", "sha256": "0am93vkz74l70vavf8mlv8diga32xawvd5g79k8k7vwy15jg4zcj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYW4gZXllIHRvIHRoZSBpbmRpY2F0b3IgYmFyIHRoYXQgZm9sbG93cyB5b3VyIGN1cnNvciBcbllvdSBjYW4gYWxzbyBkaXNwbGF5IHRoZSBtb3VzZSBpbmRpY2F0b3IsIHBlcmhhcHMgaXQgd2lsbCBoZWxwIHlvdSB3aXRoIHRoZSBwcm9ibGVtIG9mIGRpc3BsYXlpbmcgdGhlIG1vdXNlIGN1cnNvciBpbiBTa3lwZSIsCiAgImdldHRleHQtZG9tYWluIjogIkV5ZUV4dGVuZGVkIiwKICAibmFtZSI6ICJFeWUgYW5kIE1vdXNlIEV4dGVuZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogImt6LmFscy5leWUtZXh0ZW5kZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYuMCIsCiAgICAiMy4zOC4wIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FsZXhleWxvdmNoaWtvdi9leWUtZXh0ZW5kZWQtc2hlbGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJleWUtZXh0ZW5kZWRAYWxzLmt6IiwKICAidmVyc2lvbiI6IDgKfQ=="}, "40": {"version": "8", "sha256": "0am93vkz74l70vavf8mlv8diga32xawvd5g79k8k7vwy15jg4zcj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYW4gZXllIHRvIHRoZSBpbmRpY2F0b3IgYmFyIHRoYXQgZm9sbG93cyB5b3VyIGN1cnNvciBcbllvdSBjYW4gYWxzbyBkaXNwbGF5IHRoZSBtb3VzZSBpbmRpY2F0b3IsIHBlcmhhcHMgaXQgd2lsbCBoZWxwIHlvdSB3aXRoIHRoZSBwcm9ibGVtIG9mIGRpc3BsYXlpbmcgdGhlIG1vdXNlIGN1cnNvciBpbiBTa3lwZSIsCiAgImdldHRleHQtZG9tYWluIjogIkV5ZUV4dGVuZGVkIiwKICAibmFtZSI6ICJFeWUgYW5kIE1vdXNlIEV4dGVuZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogImt6LmFscy5leWUtZXh0ZW5kZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYuMCIsCiAgICAiMy4zOC4wIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FsZXhleWxvdmNoaWtvdi9leWUtZXh0ZW5kZWQtc2hlbGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJleWUtZXh0ZW5kZWRAYWxzLmt6IiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
 , {"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": "3", "sha256": "07c3g7ynv95qs97fq2xyzn0xgg6nsjqrzn2f2ldpshdl31c76npf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSwgZGlzYWJsZSwgYW5kIHZpZXcgZGV0YWlscyBvZiBXaXJlZ3VhcmQuXG5EZXZlbG9wZWQgYnkgR3JlZ29zLVdpbnVzLiIsCiAgIm5hbWUiOiAiV2lyZWd1YXJkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAid2lyZWd1YXJkLWluZGljYXRvckBncmVnb3MubWUiLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "3", "sha256": "07c3g7ynv95qs97fq2xyzn0xgg6nsjqrzn2f2ldpshdl31c76npf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSwgZGlzYWJsZSwgYW5kIHZpZXcgZGV0YWlscyBvZiBXaXJlZ3VhcmQuXG5EZXZlbG9wZWQgYnkgR3JlZ29zLVdpbnVzLiIsCiAgIm5hbWUiOiAiV2lyZWd1YXJkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAid2lyZWd1YXJkLWluZGljYXRvckBncmVnb3MubWUiLAogICJ2ZXJzaW9uIjogMwp9"}}}
-, {"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\nContains some bugs due to the implementation of the blur effect on gnome shell, see https: //gitlab.gnome.org/GNOME/gnome-shell/-/issues/2857 for more informations.\n\nAdded support for Gnome 40, and a way to entirely remove artifacts from top panel :)", "link": "https://extensions.gnome.org/extension/3193/blur-my-shell/", "shell_version_map": {"38": {"version": "6", "sha256": "07p928zrcmjpk705g3y3yrbdm3dpai2rb7d5wi6522ibcmiknqna", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Db250YWlucyBzb21lIGJ1Z3MgZHVlIHRvIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgYmx1ciBlZmZlY3Qgb24gZ25vbWUgc2hlbGwsIHNlZSBodHRwczogLy9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLy0vaXNzdWVzLzI4NTcgZm9yIG1vcmUgaW5mb3JtYXRpb25zLlxuXG5BZGRlZCBzdXBwb3J0IGZvciBHbm9tZSA0MCwgYW5kIGEgd2F5IHRvIGVudGlyZWx5IHJlbW92ZSBhcnRpZmFjdHMgZnJvbSB0b3AgcGFuZWwgOikiLAogICJuYW1lIjogIkJsdXIgbXkgU2hlbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hdW5ldHgvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWJsdXItbXktc2hlbGwiLAogICJ1dWlkIjogImJsdXItbXktc2hlbGxAYXVuZXR4IiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "11", "sha256": "0wx3bcccvw7qdw7fsqrcjd6h4xnh81ww3gigrl0d8j2mqwvjrhqi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Db250YWlucyBzb21lIGJ1Z3MgZHVlIHRvIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgYmx1ciBlZmZlY3Qgb24gZ25vbWUgc2hlbGwsIHNlZSBodHRwczogLy9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLy0vaXNzdWVzLzI4NTcgZm9yIG1vcmUgaW5mb3JtYXRpb25zLlxuXG5BZGRlZCBzdXBwb3J0IGZvciBHbm9tZSA0MCwgYW5kIGEgd2F5IHRvIGVudGlyZWx5IHJlbW92ZSBhcnRpZmFjdHMgZnJvbSB0b3AgcGFuZWwgOikiLAogICJuYW1lIjogIkJsdXIgbXkgU2hlbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXVuZXR4L2dub21lLXNoZWxsLWV4dGVuc2lvbi1ibHVyLW15LXNoZWxsIiwKICAidXVpZCI6ICJibHVyLW15LXNoZWxsQGF1bmV0eCIsCiAgInZlcnNpb24iOiAxMQp9"}}}
+, {"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\nContains some bugs due to the implementation of the blur effect on gnome shell, see https: //gitlab.gnome.org/GNOME/gnome-shell/-/issues/2857 for more informations.\n\nYou can now select which part you want to blur, wether or not you want overview animation and there is an option that reduces a lot the artifacts :)\n\nYou can sponsor my work at https://github.com/sponsors/aunetx or https://ko-fi.com/aunetx", "link": "https://extensions.gnome.org/extension/3193/blur-my-shell/", "shell_version_map": {"38": {"version": "22", "sha256": "123i53gj7zv8h0gfx5d3ymb8ba5cjxrcj4k5xdz10l4mfil9hwh5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Db250YWlucyBzb21lIGJ1Z3MgZHVlIHRvIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgYmx1ciBlZmZlY3Qgb24gZ25vbWUgc2hlbGwsIHNlZSBodHRwczogLy9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLy0vaXNzdWVzLzI4NTcgZm9yIG1vcmUgaW5mb3JtYXRpb25zLlxuXG5Zb3UgY2FuIG5vdyBzZWxlY3Qgd2hpY2ggcGFydCB5b3Ugd2FudCB0byBibHVyLCB3ZXRoZXIgb3Igbm90IHlvdSB3YW50IG92ZXJ2aWV3IGFuaW1hdGlvbiBhbmQgdGhlcmUgaXMgYW4gb3B0aW9uIHRoYXQgcmVkdWNlcyBhIGxvdCB0aGUgYXJ0aWZhY3RzIDopXG5cbllvdSBjYW4gc3BvbnNvciBteSB3b3JrIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHggb3IgaHR0cHM6Ly9rby1maS5jb20vYXVuZXR4IiwKICAibmFtZSI6ICJCbHVyIG15IFNoZWxsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXVuZXR4L2dub21lLXNoZWxsLWV4dGVuc2lvbi1ibHVyLW15LXNoZWxsIiwKICAidXVpZCI6ICJibHVyLW15LXNoZWxsQGF1bmV0eCIsCiAgInZlcnNpb24iOiAyMgp9"}, "40": {"version": "21", "sha256": "11711nhih56kqdc1jr0r4d6706yc1zdg9pcc6fn17h4a8fjihlfz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Db250YWlucyBzb21lIGJ1Z3MgZHVlIHRvIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgYmx1ciBlZmZlY3Qgb24gZ25vbWUgc2hlbGwsIHNlZSBodHRwczogLy9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLy0vaXNzdWVzLzI4NTcgZm9yIG1vcmUgaW5mb3JtYXRpb25zLlxuXG5Zb3UgY2FuIG5vdyBzZWxlY3Qgd2hpY2ggcGFydCB5b3Ugd2FudCB0byBibHVyLCB3ZXRoZXIgb3Igbm90IHlvdSB3YW50IG92ZXJ2aWV3IGFuaW1hdGlvbiBhbmQgdGhlcmUgaXMgYW4gb3B0aW9uIHRoYXQgcmVkdWNlcyBhIGxvdCB0aGUgYXJ0aWZhY3RzIDopXG5cbllvdSBjYW4gc3BvbnNvciBteSB3b3JrIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHggb3IgaHR0cHM6Ly9rby1maS5jb20vYXVuZXR4IiwKICAibmFtZSI6ICJCbHVyIG15IFNoZWxsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2F1bmV0eC9nbm9tZS1zaGVsbC1leHRlbnNpb24tYmx1ci1teS1zaGVsbCIsCiAgInV1aWQiOiAiYmx1ci1teS1zaGVsbEBhdW5ldHgiLAogICJ2ZXJzaW9uIjogMjEKfQ=="}}}
 , {"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": "9", "sha256": "1igwqkm2d5230q6yk41bal9yk690vkap5qfh8zqm6wdrsnswbhfm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbXBpeiB3b2JibHkgd2luZG93cyBlZmZlY3QgdGhhbmtzIHRvIGxpYmFuaW1hdGlvbiBlbmdpbmUuXG5cblRoZSB1c2Ugb2YgdGhlIFwianMgZW5naW5lXCIgb3B0aW9uIE5PVCByZXF1aXJlcyBhbnkgZXh0ZXJuYWwgbGlicmFyeSwgb3JoZXJ3aXNlIHlvdSBuZWVkIHRvIGluc3RhbGwgdGhlIExJQkFOSU1BVElPTiBsaWJyYXJ5IHBhdGNoZWQgZm9yIEdub21lIFNoZWxsOiBcbmh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9saWJhbmltYXRpb25cblxuTkI6XG5JbiBjYXNlIG9mIHVwZGF0ZSBlcnJvciBwbGVhc2UgcmVzdGFydCBHbm9tZSBTaGVsbCAob24gWG9yZyBwcmVzcyBBTFQrRjIgdGhlbiB3cml0ZSByIGFuZCBwcmVzcyBlbnRlciwgb24gV2F5bGFuZCBlbmQgdGhlIHNlc3Npb24gYW5kIGxvZyBpbiBhZ2FpbilcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgVmlkZW9cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5odHRwczovL3lvdXR1LmJlL0c4YkFWSUI5QTdBIiwKICAibmFtZSI6ICJDb21waXogd2luZG93cyBlZmZlY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGVybWVzODMvY29tcGl6LXdpbmRvd3MtZWZmZWN0IiwKICAidXVpZCI6ICJjb21waXotd2luZG93cy1lZmZlY3RAaGVybWVzODMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA5Cn0="}, "40": {"version": "9", "sha256": "1igwqkm2d5230q6yk41bal9yk690vkap5qfh8zqm6wdrsnswbhfm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbXBpeiB3b2JibHkgd2luZG93cyBlZmZlY3QgdGhhbmtzIHRvIGxpYmFuaW1hdGlvbiBlbmdpbmUuXG5cblRoZSB1c2Ugb2YgdGhlIFwianMgZW5naW5lXCIgb3B0aW9uIE5PVCByZXF1aXJlcyBhbnkgZXh0ZXJuYWwgbGlicmFyeSwgb3JoZXJ3aXNlIHlvdSBuZWVkIHRvIGluc3RhbGwgdGhlIExJQkFOSU1BVElPTiBsaWJyYXJ5IHBhdGNoZWQgZm9yIEdub21lIFNoZWxsOiBcbmh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9saWJhbmltYXRpb25cblxuTkI6XG5JbiBjYXNlIG9mIHVwZGF0ZSBlcnJvciBwbGVhc2UgcmVzdGFydCBHbm9tZSBTaGVsbCAob24gWG9yZyBwcmVzcyBBTFQrRjIgdGhlbiB3cml0ZSByIGFuZCBwcmVzcyBlbnRlciwgb24gV2F5bGFuZCBlbmQgdGhlIHNlc3Npb24gYW5kIGxvZyBpbiBhZ2FpbilcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgVmlkZW9cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5odHRwczovL3lvdXR1LmJlL0c4YkFWSUI5QTdBIiwKICAibmFtZSI6ICJDb21waXogd2luZG93cyBlZmZlY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGVybWVzODMvY29tcGl6LXdpbmRvd3MtZWZmZWN0IiwKICAidXVpZCI6ICJjb21waXotd2luZG93cy1lZmZlY3RAaGVybWVzODMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA5Cn0="}}}
-, {"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. Note, only tested on gnome shell version 4.40 on Fedora 34 with Xorg", "link": "https://extensions.gnome.org/extension/3222/block-caribou-36/", "shell_version_map": {"40": {"version": "2", "sha256": "0mzylj49w2xdrx9wlk6ijcsg8g1n8mksflihzaihlv3hga9ih9n9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJsb2NrcyBjYXJpYm91ICh0aGUgb24gc2NyZWVuIGtleWJvYXJkKSBmcm9tIHBvcHBpbmcgdXAgd2hlbiB5b3UgdXNlIGEgdG91Y2hzY3JlZW4uIEV2ZW4gaWYgaXQncyBkaXNhYmxlZCBpbiB0aGUgYWNjZXNzaWJpbGl0eSBzZXJ2aWNlcyBtZW51LiBDb250aW51YXRpb24gb2Yga2VyaW5nYXIncyB3b3JrLiBOb3RlLCBvbmx5IHRlc3RlZCBvbiBnbm9tZSBzaGVsbCB2ZXJzaW9uIDQuNDAgb24gRmVkb3JhIDM0IHdpdGggWG9yZyIsCiAgIm5hbWUiOiAiQmxvY2sgQ2FyaWJvdSAzNiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2x4eWx4eTEyMzQ1Ni9jYXJpYm91YmxvY2tlciIsCiAgInV1aWQiOiAiYmxvY2stY2FyaWJvdS0zNkBseHlseHkxMjM0NTYuZXJjbGkuZGV2IiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
+, {"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. Note, only tested on gnome shell version 4.40 on Fedora 34 with Xorg", "link": "https://extensions.gnome.org/extension/3222/block-caribou-36/", "shell_version_map": {"40": {"version": "3", "sha256": "0asqd39s35w8axz8rp772fv97fj6fxcxmq08wx7xh5virnzin4fw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJsb2NrcyBjYXJpYm91ICh0aGUgb24gc2NyZWVuIGtleWJvYXJkKSBmcm9tIHBvcHBpbmcgdXAgd2hlbiB5b3UgdXNlIGEgdG91Y2hzY3JlZW4uIEV2ZW4gaWYgaXQncyBkaXNhYmxlZCBpbiB0aGUgYWNjZXNzaWJpbGl0eSBzZXJ2aWNlcyBtZW51LiBDb250aW51YXRpb24gb2Yga2VyaW5nYXIncyB3b3JrLiBOb3RlLCBvbmx5IHRlc3RlZCBvbiBnbm9tZSBzaGVsbCB2ZXJzaW9uIDQuNDAgb24gRmVkb3JhIDM0IHdpdGggWG9yZyIsCiAgIm5hbWUiOiAiQmxvY2sgQ2FyaWJvdSAzNiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9seHlseHkxMjM0NTYvY2FyaWJvdWJsb2NrZXIiLAogICJ1dWlkIjogImJsb2NrLWNhcmlib3UtMzZAbHh5bHh5MTIzNDU2LmVyY2xpLmRldiIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"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": "3", "sha256": "17xpxzxqx6zgr484xxa9sz78f90mmdq7ihgnhfmlmscsz10v5h3z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVubWF4aW1pemUgdGhlIGN1cnJlbnQgd2luZG93IG9uIGRvdWJsZSBjbGljayBvbiB0aGUgdG9wIHBhbmVsLiBZb3UgY2FuIGFsc28gbWF4aW1pemUgaG9yaXpvbnRhbGx5IGFuZCB2ZXJ0aWNhbGx5IHdpdGggbWlkZGxlIGFuZCByaWdodCBjbGljay4iLAogICJuYW1lIjogIlVubWF4aW1pemUgRG91YmxlIENsaWNrIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dvbnphYXJjci91bm1heGltaXplLWdub21lLWV4dCIsCiAgInV1aWQiOiAidW5tYXhpbWl6ZV9kb3VibGVfY2xpY2tAZ29uemEuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "40": {"version": "3", "sha256": "17xpxzxqx6zgr484xxa9sz78f90mmdq7ihgnhfmlmscsz10v5h3z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVubWF4aW1pemUgdGhlIGN1cnJlbnQgd2luZG93IG9uIGRvdWJsZSBjbGljayBvbiB0aGUgdG9wIHBhbmVsLiBZb3UgY2FuIGFsc28gbWF4aW1pemUgaG9yaXpvbnRhbGx5IGFuZCB2ZXJ0aWNhbGx5IHdpdGggbWlkZGxlIGFuZCByaWdodCBjbGljay4iLAogICJuYW1lIjogIlVubWF4aW1pemUgRG91YmxlIENsaWNrIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dvbnphYXJjci91bm1heGltaXplLWdub21lLWV4dCIsCiAgInV1aWQiOiAidW5tYXhpbWl6ZV9kb3VibGVfY2xpY2tAZ29uemEuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
 , {"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": "6", "sha256": "0s5mza4x2hk6k95hm7xsyxhariffhb896676fhh5qriphxsrif2q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgYmlnZ2VyIGFuZCBtb3JlIGNvbG91cmZ1bGwgQXBwU3dpdGNoZXIiLAogICJuYW1lIjogIlVuaXR5LWxpa2UgQXBwIFN3aXRjaGVyIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJnb256YSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy51bml0eS13aW5kb3ctc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ29uemFhcmNyL3VuaXR5LWxpa2Utc3dpdGNoZXItZ25vbWUtZXh0IiwKICAidXVpZCI6ICJ1bml0eS1saWtlLWFwcHN3aXRjaGVyQGdvbnphLmNvbSIsCiAgInZlcnNpb24iOiA2Cn0="}, "40": {"version": "6", "sha256": "0s5mza4x2hk6k95hm7xsyxhariffhb896676fhh5qriphxsrif2q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgYmlnZ2VyIGFuZCBtb3JlIGNvbG91cmZ1bGwgQXBwU3dpdGNoZXIiLAogICJuYW1lIjogIlVuaXR5LWxpa2UgQXBwIFN3aXRjaGVyIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJnb256YSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy51bml0eS13aW5kb3ctc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ29uemFhcmNyL3VuaXR5LWxpa2Utc3dpdGNoZXItZ25vbWUtZXh0IiwKICAidXVpZCI6ICJ1bml0eS1saWtlLWFwcHN3aXRjaGVyQGdvbnphLmNvbSIsCiAgInZlcnNpb24iOiA2Cn0="}}}
-, {"uuid": "add-to-desktop@tommimon.github.com", "name": "Add to Desktop", "pname": "add-to-desktop", "description": "An easy way to create desktop app shortcuts in gnome", "link": "https://extensions.gnome.org/extension/3240/add-to-desktop/", "shell_version_map": {"38": {"version": "4", "sha256": "0qikj36wl3317qdbjk95g6fm0f4vr367iwgai0hn85wjkxsh9c9c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGVhc3kgd2F5IHRvIGNyZWF0ZSBkZXNrdG9wIGFwcCBzaG9ydGN1dHMgaW4gZ25vbWUiLAogICJuYW1lIjogIkFkZCB0byBEZXNrdG9wIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vVG9tbWltb24vYWRkLXRvLWRlc2t0b3AiLAogICJ1dWlkIjogImFkZC10by1kZXNrdG9wQHRvbW1pbW9uLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNAp9"}}}
+, {"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"}}}
 , {"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=="}}}
 , {"uuid": "gnome-shell-duckduckgo-search-provider@keithcirkel.co.uk", "name": "DuckDuckGo Search Provider", "pname": "duckduckgo-search-provider", "description": "Add DuckDuckGo search suggestions to Gnome Shell Search", "link": "https://extensions.gnome.org/extension/3306/duckduckgo-search-provider/", "shell_version_map": {"38": {"version": "3", "sha256": "1id10vxz5dfq53wbiz8spqkr6d9qvs9dsykxpff29an96lzybj1w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBEdWNrRHVja0dvIHNlYXJjaCBzdWdnZXN0aW9ucyB0byBHbm9tZSBTaGVsbCBTZWFyY2giLAogICJuYW1lIjogIkR1Y2tEdWNrR28gU2VhcmNoIFByb3ZpZGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmR1Y2tkdWNrZ28tc2VhcmNoLXByb3ZpZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2VpdGhhbXVzL2dub21lLXNoZWxsLWR1Y2tkdWNrZ28tc2VhcmNoLXByb3ZpZGVyIiwKICAidXVpZCI6ICJnbm9tZS1zaGVsbC1kdWNrZHVja2dvLXNlYXJjaC1wcm92aWRlckBrZWl0aGNpcmtlbC5jby51ayIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "3", "sha256": "1id10vxz5dfq53wbiz8spqkr6d9qvs9dsykxpff29an96lzybj1w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBEdWNrRHVja0dvIHNlYXJjaCBzdWdnZXN0aW9ucyB0byBHbm9tZSBTaGVsbCBTZWFyY2giLAogICJuYW1lIjogIkR1Y2tEdWNrR28gU2VhcmNoIFByb3ZpZGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmR1Y2tkdWNrZ28tc2VhcmNoLXByb3ZpZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2VpdGhhbXVzL2dub21lLXNoZWxsLWR1Y2tkdWNrZ28tc2VhcmNoLXByb3ZpZGVyIiwKICAidXVpZCI6ICJnbm9tZS1zaGVsbC1kdWNrZHVja2dvLXNlYXJjaC1wcm92aWRlckBrZWl0aGNpcmtlbC5jby51ayIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"uuid": "translate-indicator@athenstaedt.net", "name": "Translate Indicator", "pname": "translate-indicator", "description": "Translate extension for Gnome-Shell - based on translate-shell, inspired by Tudmotu's clipboard-indicator and gufoe's text-translator", "link": "https://extensions.gnome.org/extension/3318/translate-indicator/", "shell_version_map": {"38": {"version": "3", "sha256": "04c3hjbcbn8y9d94swmc3qiv63sjynn71jnwp08sgqa79nrn4cyg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYW5zbGF0ZSBleHRlbnNpb24gZm9yIEdub21lLVNoZWxsIC0gYmFzZWQgb24gdHJhbnNsYXRlLXNoZWxsLCBpbnNwaXJlZCBieSBUdWRtb3R1J3MgY2xpcGJvYXJkLWluZGljYXRvciBhbmQgZ3Vmb2UncyB0ZXh0LXRyYW5zbGF0b3IiLAogICJuYW1lIjogIlRyYW5zbGF0ZSBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zZXZlbnV6L2dub21lLXRyYW5zbGF0ZS1pbmRpY2F0b3IiLAogICJ1dWlkIjogInRyYW5zbGF0ZS1pbmRpY2F0b3JAYXRoZW5zdGFlZHQubmV0IiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
-, {"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"}}}
-, {"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": "24", "sha256": "0hngbg4y16dazy1i00qdbvyy4d2wn7yrmy6l38ixxdly9gra8n6d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBjb2xvciBwaWNrZXIgZm9yIGdub21lIHNoZWxsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImNvbG9yLXBpY2tlciIsCiAgIm5hbWUiOiAiQ29sb3IgUGlja2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmNvbG9yLXBpY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2NvbG9yLXBpY2tlciIsCiAgInV1aWQiOiAiY29sb3ItcGlja2VyQHR1YmVycnkiLAogICJ2ZXJzaW9uIjogMjQKfQ=="}}}
+, {"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": "15", "sha256": "0q8lrp9s31n3bvdzyq5vrl0zibszmrvl3c0hndx17lwzqs5rxwa2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJpbmRpbmdzIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1hdGVyaWFsc2hlbGwuYmluZGluZ3MiLAogICJkZXNjcmlwdGlvbiI6ICJBIG1vZGVybiBkZXNrdG9wIGludGVyZmFjZSBmb3IgTGludXggLSBwYWNrYWdlZCBhcyBhbiBleHRlbnNpb24gZm9yIEdOT01FIFNoZWxsLiBJbXByb3ZlIHlvdXIgdXNlciBleHBlcmllbmNlIGFuZCBnZXQgcmlkIG9mIHRoZSBhbmFyY2h5IG9mIHRyYWRpdGlvbmFsIGRlc2t0b3Agd29ya2Zsb3dzLiBEZXNpZ25lZCB0byBzaW1wbGlmeSBuYXZpZ2F0aW9uIGFuZCByZWR1Y2UgdGhlIG5lZWQgdG8gbWFuaXB1bGF0ZSB3aW5kb3dzIGluIG9yZGVyIHRvIGltcHJvdmUgcHJvZHVjdGl2aXR5LiBJdCdzIG1lYW50IHRvIGJlIDEwMCUgcHJlZGljdGFibGUgYW5kIGJyaW5nIHRoZSBiZW5lZml0cyBvZiB0b29scyBjb3ZldGVkIGJ5IHByb2Zlc3Npb25hbHMgdG8gZXZlcnlvbmUuIiwKICAibGF5b3V0cyI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5tYXRlcmlhbHNoZWxsLmxheW91dHMiLAogICJuYW1lIjogIk1hdGVyaWFsIFNoZWxsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ0aGVtZSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5tYXRlcmlhbHNoZWxsLnRoZW1lIiwKICAidHdlYWtzIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1hdGVyaWFsc2hlbGwudHdlYWtzIiwKICAidXJsIjogImh0dHBzOi8vbWF0ZXJpYWwtc2hlbGwuY29tIiwKICAidXVpZCI6ICJtYXRlcmlhbC1zaGVsbEBwYXB5ZWxncmluZ28iLAogICJ2ZXJzaW9uIjogMTUKfQ=="}}}
+, {"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=="}}}
 , {"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": "3", "sha256": "1gkjf0vx60zi6yj4zcqsrdnsk3m7p6zxcpi6v3hywp43g7ql4dg6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgY3VzdG9tIHN0eWxlIHNoZWV0IGZyb20gfi8uY29uZmlnL2dub21lLXNoZWxsL2dub21lLXNoZWxsLmNzcy4gVXNlIEdUSyBmb250IGZhbWlseSBhbmQgZm9udCBzaXplIGZyb20gR05PTUUgVHdlYWtzIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiVXNlciBzdHlsZSBzaGVldCAmIGZvbnQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vVG9tYXN6R2FzaW9yL2dub21lLXNoZWxsLXVzZXItc3R5bGVzaGVldC1hbmQtZm9udCIsCiAgInV1aWQiOiAidXNlci1zdHlsZXNoZWV0QHRvbWFzemdhc2lvci5wbCIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "3", "sha256": "1gkjf0vx60zi6yj4zcqsrdnsk3m7p6zxcpi6v3hywp43g7ql4dg6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgY3VzdG9tIHN0eWxlIHNoZWV0IGZyb20gfi8uY29uZmlnL2dub21lLXNoZWxsL2dub21lLXNoZWxsLmNzcy4gVXNlIEdUSyBmb250IGZhbWlseSBhbmQgZm9udCBzaXplIGZyb20gR05PTUUgVHdlYWtzIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiVXNlciBzdHlsZSBzaGVldCAmIGZvbnQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vVG9tYXN6R2FzaW9yL2dub21lLXNoZWxsLXVzZXItc3R5bGVzaGVldC1hbmQtZm9udCIsCiAgInV1aWQiOiAidXNlci1zdHlsZXNoZWV0QHRvbWFzemdhc2lvci5wbCIsCiAgInZlcnNpb24iOiAzCn0="}}}
-, {"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": "8", "sha256": "0gzk5d04g4gqmf66cnbhyywbxvrzz3vk106i5qx13vklkskjg5wg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc3RhdHVzIGluZGljYXRvciBmb3IgV2lyZWd1YXJkIGNvbm5lY3Rpb25zLiIsCiAgIm5hbWUiOiAiV0cgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyLjEiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zeW5jMTIxMS93Zy1pbmRpY2F0b3IiLAogICJ1dWlkIjogIndnLWluZGljYXRvckBkcGYxMjExMC5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}}}
+, {"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": "12", "sha256": "14yp1l9n3lvdj8l16zqx8c87nkh5mrbyfjbnqi4ylfchpc5pm8kk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc3RhdHVzIGluZGljYXRvciBmb3IgV2lyZWd1YXJkIGNvbm5lY3Rpb25zLiIsCiAgIm5hbWUiOiAiV0cgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyLjEiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3luYzEyMTEvd2ctaW5kaWNhdG9yIiwKICAidXVpZCI6ICJ3Zy1pbmRpY2F0b3JAZHBmMTIxMTAuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDEyCn0="}}}
 , {"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": "6", "sha256": "1bxi2f6w906p9wxz1hd9wjbd98chzhzg4lsbf1bz6mdfxmplq4b4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgbWFya2luZyBtZW51IHdoaWNoIGNhbiBiZSB1c2VkIHRvIGxhdW5jaCBhcHBsaWNhdGlvbnMsIHNpbXVsYXRlIGhvdGtleXMsIG9wZW4gVVJMcyBhbmQgbXVjaCBtb3JlLiIsCiAgImdldHRleHQtZG9tYWluIjogImZseXBpZSIsCiAgIm5hbWUiOiAiRmx5LVBpZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5mbHlwaWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0ZseS1QaWUiLAogICJ1dWlkIjogImZseXBpZUBzY2huZWVnYW5zLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"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": "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=="}}}
-, {"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": "8", "sha256": "1pgbr188vk1b0wdfszg160b1x04yz28fr7pmnyiwqy2hsvqz81cn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgeW91ciB1c2VyIGF2YXRhciBhbmQgbmFtZSB0byB0aGUgbWVudSBwYW5lbC4gQmlnIHRoYW5rcyB0bzogZGIweCBhbmQgJ0kgbGlrZSAnZW0gY3VydnknIGV4dGVuc2lvbiBkZXZlbG9wZXIiLAogICJleHRlbnNpb24taWQiOiAiYmlnLWF2YXRhciIsCiAgIm5hbWUiOiAiQmlnIEF2YXRhciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iaWctYXZhdGFyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vR3VzdGF2b1BlcmVkby9CaWctQXZhdGFyLUdub21lLVNoZWxsLUV4dGVuc2lvbiIsCiAgInV1aWQiOiAiYmlnLWF2YXRhckBndXN0YXZvcGVyZWRvLm9yZyIsCiAgInZlcnNpb24iOiA4Cn0="}}}
+, {"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": "7", "sha256": "02k60askhgs69ajwhsqkw4977065pvg3fnw70rhc1mnx1yvjbgs9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdm9sdW1lIG91dHB1dCBwZXItYXBwbGljYXRpb24iLAogICJuYW1lIjogIkFwcGxpY2F0aW9uIFZvbHVtZSBNaXhlciIsCiAgIm9yZ2luYWwtYXV0aG9yIjogIm15bWluZHN0b3JtQGV2ZXJtaXNzLm5ldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9teW1pbmRzdG9ybS9nbm9tZS12b2x1bWUtbWl4ZXIiLAogICJ1dWlkIjogInZvbHVtZS1taXhlckBldmVybWlzcy5uZXQiLAogICJ2ZXJzaW9uIjogNwp9"}, "40": {"version": "7", "sha256": "02k60askhgs69ajwhsqkw4977065pvg3fnw70rhc1mnx1yvjbgs9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdm9sdW1lIG91dHB1dCBwZXItYXBwbGljYXRpb24iLAogICJuYW1lIjogIkFwcGxpY2F0aW9uIFZvbHVtZSBNaXhlciIsCiAgIm9yZ2luYWwtYXV0aG9yIjogIm15bWluZHN0b3JtQGV2ZXJtaXNzLm5ldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9teW1pbmRzdG9ybS9nbm9tZS12b2x1bWUtbWl4ZXIiLAogICJ1dWlkIjogInZvbHVtZS1taXhlckBldmVybWlzcy5uZXQiLAogICJ2ZXJzaW9uIjogNwp9"}}}
 , {"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\n\nI've tested it with both XOrg and Wayland on Gnome 3.38 and 40.\nWayland users will have to log out and log back in for the installation to complete.\n\nVersion 6 has higher contrast than version 4, which I think makes it more readable.\nLet me know what you think in the comments!", "link": "https://extensions.gnome.org/extension/3530/true-color-invert/", "shell_version_map": {"38": {"version": "6", "sha256": "1kiqlafs5zszbim44y93jvilajp3nmcjvwds1pfy5hmnrnz0khga", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludmVydHMgdGhlIGNvbG9yIG9mIGluZGl2aWR1YWwgd2luZG93cyBzbyB0aGV5IGFyZSBodWUtcHJlc2VydmVkLlxuRGVmYXVsdCBzaG9ydGN1dCBpcyBTdXBlcitJXG5cbkkndmUgdGVzdGVkIGl0IHdpdGggYm90aCBYT3JnIGFuZCBXYXlsYW5kIG9uIEdub21lIDMuMzggYW5kIDQwLlxuV2F5bGFuZCB1c2VycyB3aWxsIGhhdmUgdG8gbG9nIG91dCBhbmQgbG9nIGJhY2sgaW4gZm9yIHRoZSBpbnN0YWxsYXRpb24gdG8gY29tcGxldGUuXG5cblZlcnNpb24gNiBoYXMgaGlnaGVyIGNvbnRyYXN0IHRoYW4gdmVyc2lvbiA0LCB3aGljaCBJIHRoaW5rIG1ha2VzIGl0IG1vcmUgcmVhZGFibGUuXG5MZXQgbWUga25vdyB3aGF0IHlvdSB0aGluayBpbiB0aGUgY29tbWVudHMhIiwKICAibmFtZSI6ICJUcnVlIENvbG9yIEludmVydCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cnVlLWNvbG9yLWludmVydCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qYWNra2VubmV5L2dub21lLXRydWUtY29sb3ItaW52ZXJ0IiwKICAidXVpZCI6ICJ0cnVlLWNvbG9yLWludmVydEBqYWNra2VubmV5IiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "6", "sha256": "1kiqlafs5zszbim44y93jvilajp3nmcjvwds1pfy5hmnrnz0khga", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludmVydHMgdGhlIGNvbG9yIG9mIGluZGl2aWR1YWwgd2luZG93cyBzbyB0aGV5IGFyZSBodWUtcHJlc2VydmVkLlxuRGVmYXVsdCBzaG9ydGN1dCBpcyBTdXBlcitJXG5cbkkndmUgdGVzdGVkIGl0IHdpdGggYm90aCBYT3JnIGFuZCBXYXlsYW5kIG9uIEdub21lIDMuMzggYW5kIDQwLlxuV2F5bGFuZCB1c2VycyB3aWxsIGhhdmUgdG8gbG9nIG91dCBhbmQgbG9nIGJhY2sgaW4gZm9yIHRoZSBpbnN0YWxsYXRpb24gdG8gY29tcGxldGUuXG5cblZlcnNpb24gNiBoYXMgaGlnaGVyIGNvbnRyYXN0IHRoYW4gdmVyc2lvbiA0LCB3aGljaCBJIHRoaW5rIG1ha2VzIGl0IG1vcmUgcmVhZGFibGUuXG5MZXQgbWUga25vdyB3aGF0IHlvdSB0aGluayBpbiB0aGUgY29tbWVudHMhIiwKICAibmFtZSI6ICJUcnVlIENvbG9yIEludmVydCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cnVlLWNvbG9yLWludmVydCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qYWNra2VubmV5L2dub21lLXRydWUtY29sb3ItaW52ZXJ0IiwKICAidXVpZCI6ICJ0cnVlLWNvbG9yLWludmVydEBqYWNra2VubmV5IiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
 , {"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! Note: currently experiencing high CPU usage. Developers welcome to contribute on github!", "link": "https://extensions.gnome.org/extension/3539/downfall/", "shell_version_map": {"38": {"version": "8", "sha256": "0bij98fazn8q8wjq96m30nf93xmmgq635c9y3svasqqghag8mrb2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRleHQgb2YgeW91ciBjaG9pY2UgYWNyb3NzIHRoZSBzY3JlZW4uIENhbiBzaW11bGF0ZSBsZWF2ZXMsIHNub3csIGZpcmV3b3JrcywgdWZvcywgYW5kIG1vcmUhIE5vdGU6IGN1cnJlbnRseSBleHBlcmllbmNpbmcgaGlnaCBDUFUgdXNhZ2UuIERldmVsb3BlcnMgd2VsY29tZSB0byBjb250cmlidXRlIG9uIGdpdGh1YiEiLAogICJuYW1lIjogIkRvd25GYWxsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdG9yY3VsdXMvRG93bkZhbGwiLAogICJ1dWlkIjogImRvd25mYWxsQHRvcmN1bHVzLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}, "40": {"version": "8", "sha256": "0bij98fazn8q8wjq96m30nf93xmmgq635c9y3svasqqghag8mrb2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRleHQgb2YgeW91ciBjaG9pY2UgYWNyb3NzIHRoZSBzY3JlZW4uIENhbiBzaW11bGF0ZSBsZWF2ZXMsIHNub3csIGZpcmV3b3JrcywgdWZvcywgYW5kIG1vcmUhIE5vdGU6IGN1cnJlbnRseSBleHBlcmllbmNpbmcgaGlnaCBDUFUgdXNhZ2UuIERldmVsb3BlcnMgd2VsY29tZSB0byBjb250cmlidXRlIG9uIGdpdGh1YiEiLAogICJuYW1lIjogIkRvd25GYWxsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdG9yY3VsdXMvRG93bkZhbGwiLAogICJ1dWlkIjogImRvd25mYWxsQHRvcmN1bHVzLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}}}
-, {"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": "7", "sha256": "1mrxfivq4f0117yl1gv8q8j2m236b34livag1fv4a7pgi0graxxi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJhc2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQiLAogICJkZXBlbmRlbmNpZXMiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2ptaXNraW5pcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGFzay13aWRnZXQvd2lraXMvSW5zdGFsbGF0aW9uIiwKICAiZGVzY3JpcHRpb24iOiAiRGlzcGxheSB0YXNrcyBuZXh0IHRvIHRoZSBjYWxlbmRhciB3aWRnZXQuXG5cblZpc2l0IG91ciBXaWtpIHBhZ2UgZm9yIG1vcmUgaW5mb3JtYXRpb24gYW5kIHRyb3VibGVzaG9vdGluZy4iLAogICJlcGF0aCI6ICIvb3JnL2dub21lL3NoZWxsL2V4dGVuc2lvbnMvdGFzay13aWRnZXQiLAogICJncmVzb3VyY2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQuZ3Jlc291cmNlIiwKICAibG9jYWxlIjogInVzZXItc3BlY2lmaWMiLAogICJuYW1lIjogIlRhc2sgV2lkZ2V0IiwKICAic2NoZW1hcyI6ICJ1c2VyLXNwZWNpZmljIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2ptaXNraW5pcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGFzay13aWRnZXQiLAogICJ1dWlkIjogInRhc2std2lkZ2V0QGp1b3phc21pc2tpbmlzLmdpdGxhYi5pbyIsCiAgInZlcnNpb24iOiA3LAogICJ3aWtpIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzIgp9"}, "40": {"version": "7", "sha256": "1mrxfivq4f0117yl1gv8q8j2m236b34livag1fv4a7pgi0graxxi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJhc2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQiLAogICJkZXBlbmRlbmNpZXMiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2ptaXNraW5pcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGFzay13aWRnZXQvd2lraXMvSW5zdGFsbGF0aW9uIiwKICAiZGVzY3JpcHRpb24iOiAiRGlzcGxheSB0YXNrcyBuZXh0IHRvIHRoZSBjYWxlbmRhciB3aWRnZXQuXG5cblZpc2l0IG91ciBXaWtpIHBhZ2UgZm9yIG1vcmUgaW5mb3JtYXRpb24gYW5kIHRyb3VibGVzaG9vdGluZy4iLAogICJlcGF0aCI6ICIvb3JnL2dub21lL3NoZWxsL2V4dGVuc2lvbnMvdGFzay13aWRnZXQiLAogICJncmVzb3VyY2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQuZ3Jlc291cmNlIiwKICAibG9jYWxlIjogInVzZXItc3BlY2lmaWMiLAogICJuYW1lIjogIlRhc2sgV2lkZ2V0IiwKICAic2NoZW1hcyI6ICJ1c2VyLXNwZWNpZmljIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2ptaXNraW5pcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGFzay13aWRnZXQiLAogICJ1dWlkIjogInRhc2std2lkZ2V0QGp1b3phc21pc2tpbmlzLmdpdGxhYi5pbyIsCiAgInZlcnNpb24iOiA3LAogICJ3aWtpIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzIgp9"}}}
+, {"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! Note: currently experiencing high CPU usage. Developers welcome to contribute on github!", "link": "https://extensions.gnome.org/extension/3539/downfall/", "shell_version_map": {"38": {"version": "11", "sha256": "0ccpxijh9qmvsncfjvvgrp5n4l2qxbvjhndpg32mjfpwf7d1dqrx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRleHQgb2YgeW91ciBjaG9pY2UgYWNyb3NzIHRoZSBzY3JlZW4uIENhbiBzaW11bGF0ZSBsZWF2ZXMsIHNub3csIGZpcmV3b3JrcywgdWZvcywgYW5kIG1vcmUhIE5vdGU6IGN1cnJlbnRseSBleHBlcmllbmNpbmcgaGlnaCBDUFUgdXNhZ2UuIERldmVsb3BlcnMgd2VsY29tZSB0byBjb250cmlidXRlIG9uIGdpdGh1YiEiLAogICJuYW1lIjogIkRvd25GYWxsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RvcmN1bHVzL0Rvd25GYWxsIiwKICAidXVpZCI6ICJkb3duZmFsbEB0b3JjdWx1cy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDExCn0="}, "40": {"version": "11", "sha256": "0ccpxijh9qmvsncfjvvgrp5n4l2qxbvjhndpg32mjfpwf7d1dqrx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRleHQgb2YgeW91ciBjaG9pY2UgYWNyb3NzIHRoZSBzY3JlZW4uIENhbiBzaW11bGF0ZSBsZWF2ZXMsIHNub3csIGZpcmV3b3JrcywgdWZvcywgYW5kIG1vcmUhIE5vdGU6IGN1cnJlbnRseSBleHBlcmllbmNpbmcgaGlnaCBDUFUgdXNhZ2UuIERldmVsb3BlcnMgd2VsY29tZSB0byBjb250cmlidXRlIG9uIGdpdGh1YiEiLAogICJuYW1lIjogIkRvd25GYWxsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RvcmN1bHVzL0Rvd25GYWxsIiwKICAidXVpZCI6ICJkb3duZmFsbEB0b3JjdWx1cy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDExCn0="}}}
+, {"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": "4", "sha256": "0pybsc0f7nqd4f0y8a26v5yr1k9b0kj77wkvv5mxilbhhh67yv36", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9zci5odC9+a2FwcGEvZ25vbWUtc2hlbGwtdGltZS1hd2FyZW5lc3MvIiwKICAidXVpZCI6ICJ0aW1lLWF3YXJlbmVzc0Bnbm9tZS1leHRlbnNpb25zLmthcHJhbm9mZi5ydSIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "0pybsc0f7nqd4f0y8a26v5yr1k9b0kj77wkvv5mxilbhhh67yv36", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9zci5odC9+a2FwcGEvZ25vbWUtc2hlbGwtdGltZS1hd2FyZW5lc3MvIiwKICAidXVpZCI6ICJ0aW1lLWF3YXJlbmVzc0Bnbm9tZS1leHRlbnNpb25zLmthcHJhbm9mZi5ydSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
+, {"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 installation instructions and troubleshooting.", "link": "https://extensions.gnome.org/extension/3569/task-widget/", "shell_version_map": {"38": {"version": "7", "sha256": "1frgby34251xmc9871ydxaa9iska8m2hkm81lc0f7fhk0gbbif2d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJhc2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQiLAogICJkZXBlbmRlbmNpZXMiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2ptaXNraW5pcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGFzay13aWRnZXQvd2lraXMvSW5zdGFsbGF0aW9uIiwKICAiZGVzY3JpcHRpb24iOiAiRGlzcGxheSB0YXNrcyBuZXh0IHRvIHRoZSBjYWxlbmRhciB3aWRnZXQuXG5cblZpc2l0IG91ciBXaWtpIHBhZ2UgZm9yIGluc3RhbGxhdGlvbiBpbnN0cnVjdGlvbnMgYW5kIHRyb3VibGVzaG9vdGluZy4iLAogICJlcGF0aCI6ICIvb3JnL2dub21lL3NoZWxsL2V4dGVuc2lvbnMvdGFzay13aWRnZXQiLAogICJncmVzb3VyY2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQuZ3Jlc291cmNlIiwKICAibG9jYWxlIjogInVzZXItc3BlY2lmaWMiLAogICJuYW1lIjogIlRhc2sgV2lkZ2V0IiwKICAic2NoZW1hcyI6ICJ1c2VyLXNwZWNpZmljIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2ptaXNraW5pcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGFzay13aWRnZXQiLAogICJ1dWlkIjogInRhc2std2lkZ2V0QGp1b3phc21pc2tpbmlzLmdpdGxhYi5pbyIsCiAgInZlcnNpb24iOiA3LAogICJ3aWtpIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzIgp9"}, "40": {"version": "7", "sha256": "1frgby34251xmc9871ydxaa9iska8m2hkm81lc0f7fhk0gbbif2d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJhc2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQiLAogICJkZXBlbmRlbmNpZXMiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2ptaXNraW5pcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGFzay13aWRnZXQvd2lraXMvSW5zdGFsbGF0aW9uIiwKICAiZGVzY3JpcHRpb24iOiAiRGlzcGxheSB0YXNrcyBuZXh0IHRvIHRoZSBjYWxlbmRhciB3aWRnZXQuXG5cblZpc2l0IG91ciBXaWtpIHBhZ2UgZm9yIGluc3RhbGxhdGlvbiBpbnN0cnVjdGlvbnMgYW5kIHRyb3VibGVzaG9vdGluZy4iLAogICJlcGF0aCI6ICIvb3JnL2dub21lL3NoZWxsL2V4dGVuc2lvbnMvdGFzay13aWRnZXQiLAogICJncmVzb3VyY2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQuZ3Jlc291cmNlIiwKICAibG9jYWxlIjogInVzZXItc3BlY2lmaWMiLAogICJuYW1lIjogIlRhc2sgV2lkZ2V0IiwKICAic2NoZW1hcyI6ICJ1c2VyLXNwZWNpZmljIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2ptaXNraW5pcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGFzay13aWRnZXQiLAogICJ1dWlkIjogInRhc2std2lkZ2V0QGp1b3phc21pc2tpbmlzLmdpdGxhYi5pbyIsCiAgInZlcnNpb24iOiA3LAogICJ3aWtpIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzIgp9"}}}
+, {"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"}}}
 , {"uuid": "azan@hatem.masmoudi.org", "name": "Azan Islamic Prayer Times", "pname": "azan-islamic-prayer-times", "description": "Azan is an Islamic prayer times extension for Gnome Shell based on the extension by Fahrinh.\n\nFeatures\n- List compulsory prayer times\n Optionally display Imsak, Sunrise, Sunset and Midnight\n- Show remaining time for the upcoming prayer.\n- Show current date in Hijri calendar.\n- Display a notification when it's time for prayer.\n- Automatic Geoclue2 location detection\n- Show times in 24 hour and 12 hour formats\n- Hijri date adjusment\n- Moon status icon", "link": "https://extensions.gnome.org/extension/3602/azan-islamic-prayer-times/", "shell_version_map": {"38": {"version": "2", "sha256": "1z58m1w04mdddq9p3102jv852zks41f2l7xbx7j8jcljy4ahiqll", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF6YW4gaXMgYW4gSXNsYW1pYyBwcmF5ZXIgdGltZXMgZXh0ZW5zaW9uIGZvciBHbm9tZSBTaGVsbCBiYXNlZCBvbiB0aGUgZXh0ZW5zaW9uIGJ5IEZhaHJpbmguXG5cbkZlYXR1cmVzXG4tIExpc3QgY29tcHVsc29yeSBwcmF5ZXIgdGltZXNcbiBPcHRpb25hbGx5IGRpc3BsYXkgSW1zYWssIFN1bnJpc2UsIFN1bnNldCBhbmQgTWlkbmlnaHRcbi0gU2hvdyByZW1haW5pbmcgdGltZSBmb3IgdGhlIHVwY29taW5nIHByYXllci5cbi0gU2hvdyBjdXJyZW50IGRhdGUgaW4gSGlqcmkgY2FsZW5kYXIuXG4tIERpc3BsYXkgYSBub3RpZmljYXRpb24gd2hlbiBpdCdzIHRpbWUgZm9yIHByYXllci5cbi0gQXV0b21hdGljIEdlb2NsdWUyIGxvY2F0aW9uIGRldGVjdGlvblxuLSBTaG93IHRpbWVzIGluIDI0IGhvdXIgYW5kIDEyIGhvdXIgZm9ybWF0c1xuLSBIaWpyaSBkYXRlIGFkanVzbWVudFxuLSBNb29uIHN0YXR1cyBpY29uIiwKICAibmFtZSI6ICJBemFuIElzbGFtaWMgUHJheWVyIFRpbWVzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmF6YW4iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYuMSIsCiAgICAiMy4zOC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vaG1hc21vdWRpL2F6YW4tZ25vbWUtc2hlbGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJhemFuQGhhdGVtLm1hc21vdWRpLm9yZyIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "blur-provider@corvettecole.github.com", "name": "blur-provider", "pname": "blur-provider", "description": "Provides an easy way for applications to request blur, and allows users to set blur on applications", "link": "https://extensions.gnome.org/extension/3607/blur-provider/", "shell_version_map": {"38": {"version": "2", "sha256": "1p0cyq1bfi18ysk1fvydjvk6qdl87qi9p3kpc165q5i0d4b41ffp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGVzIGFuIGVhc3kgd2F5IGZvciBhcHBsaWNhdGlvbnMgdG8gcmVxdWVzdCBibHVyLCBhbmQgYWxsb3dzIHVzZXJzIHRvIHNldCBibHVyIG9uIGFwcGxpY2F0aW9ucyIsCiAgImV4dGVuc2lvbi1pZCI6ICJibHVyLXByb3ZpZGVyIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiYmx1ci1wcm92aWRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ibHVyLXByb3ZpZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY29ydmV0dGVjb2xlL2JsdXItcHJvdmlkZXIiLAogICJ1dWlkIjogImJsdXItcHJvdmlkZXJAY29ydmV0dGVjb2xlLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}}}
-, {"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": "13", "sha256": "05g1lshild456qm73a2g7wcis0hkkilyv2i8naq2wp17g17rw5dn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlx1MDYyYVx1MDY0Mlx1MDY0OFx1MDZjY1x1MDY0NSBcdTA2NDdcdTA2MmNcdTA2MzFcdTA2Y2MgXHUwNjM0XHUwNjQ1XHUwNjMzXHUwNmNjXHUwNjBjXHUwNjQyXHUwNjQ1XHUwNjMxXHUwNmNjIFx1MDY0OCBcdTA2NDVcdTA2Y2NcdTA2NDRcdTA2MjdcdTA2MmZcdTA2Y2MgXHUwNjJmXHUwNjMxIFx1MDY0NVx1MDZjY1x1MDYzMlx1MjAwY1x1MDZhOVx1MDYyN1x1MDYzMSBcdTA2YWZcdTA2NDZcdTA2NDhcdTA2NDUgXHUwNjQ0XHUwNmNjXHUwNjQ2XHUwNjQ4XHUwNmE5XHUwNjMzXG5cdTA2NDJcdTA2MjdcdTA2MjhcdTA2NDRcdTA2Y2NcdTA2MmEgXHUwNjQ2XHUwNjQ1XHUwNjI3XHUwNmNjXHUwNjM0IFx1MDYyN1x1MDY0OFx1MDY0Mlx1MDYyN1x1MDYyYSBcdTA2MzRcdTA2MzFcdTA2MzlcdTA2Y2MgXHUwNjQ4IFx1MDY3ZVx1MDYyZVx1MDYzNCBcdTA2MjdcdTA2MzBcdTA2MjdcdTA2NDZcblx1MDYyZlx1MDYzMVx1MDYyYyBcdTA2MmFcdTA2MzlcdTA2MzdcdTA2Y2NcdTA2NDRcdTA2Y2NcdTIwMGNcdTA2NDdcdTA2MjcgXHUwNjQ4IFx1MDY0NVx1MDY0Nlx1MDYyN1x1MDYzM1x1MDYyOFx1MDYyYVx1MjAwY1x1MDY0N1x1MDYyN1x1MDZjYyBcdTA2MzFcdTA2MzNcdTA2NDVcdTA2Y2MgXHUwNjJhXHUwNjQyXHUwNjQ4XHUwNmNjXHUwNjQ1XG5cdTA2MzJcdTA2MjhcdTA2MjdcdTA2NDYgXHUwNmE5XHUwNjI3XHUwNjQ1XHUwNjQ0XHUwNjI3XHUwNjRiIFx1MDY0MVx1MDYyN1x1MDYzMVx1MDYzM1x1MDZjY1xuXHUwNjJhXHUwNjI3XHUwNjMxXHUwNmNjXHUwNjJlIFx1MDY0Mlx1MDY0NVx1MDYzMVx1MDZjYyBcdTA2NDdcdTA2NDRcdTA2MjdcdTA2NDRcdTA2Y2MgXHUwNjI3XHUwNmNjXHUwNjMxXHUwNjI3XHUwNjQ2XG5cdTA2MzNcdTA2MjdcdTA2MzJcdTA2YWZcdTA2MjdcdTA2MzEgXHUwNjI4XHUwNjI3IFx1MDYyN1x1MDZhOVx1MDYyYlx1MDYzMSBcdTA2NDZcdTA2MzNcdTA2MmVcdTA2NDdcdTIwMGNcdTA2NDdcdTA2MjdcdTA2Y2MgXHUwNmFmXHUwNjQ2XHUwNjQ4XHUwNjQ1XG5cdTA2MmZcdTA2MzEgXHUwNjJkXHUwNjI3XHUwNjQ0IFx1MDYyYVx1MDY0OFx1MDYzM1x1MDYzOVx1MDY0Ny4uLlxuXG5TaG93cyBQZXJzaWFuICsgSXNsYW1pYyArIEdyZWdvcmlhbiBkYXRlIGluIHRoZSBwYW5lbCBvZiBnbm9tZS5cblxuSXQgc2hvd3M6XG4xLSBQZXJzaWFuIGNhbGVuZGFyXG4yLSBJdCBjYW4gc2hvdywgdG9kYXkgaXMgaG9saWRheSBvciBub3QhXG4zLSBTaG93IG5vdGlmaWNhdGlvbiBvbkRheUNoYW5nZWQhXG40LSBEYXRlIGNvbnZlcnRlciBiZXR3ZWVuIFBlcnNpYW4sIEdyZWdvcmlhbiBhbmQgTHVuYXIgSGlqcmkoSXNsYW1pYylcbjUtIFNob3cgY2FsZW5kYXIgRXZlbnRzLlxuNi0gU2hvdyBQcmF5VGltZXMgYW5kIHBsYXkgc291bmQgKEF6YW4pLlxuXG5QbGVhc2UgXCJyYXRlXCIgaGVyZSBhbmQgXCJzdGFyXCIgcHJvamVjdCBpbiBHaXRIdWIuXG5QbGVhc2Ugb3BlbiBhbiBpc3N1ZSBpbiBHaXRIdWIgaWYgeW91IGZvdW5kIHNvbWV0aGluZyBvciBoYXZlIGFuIGlkZWEhXG5cdTA2YWZcdTA2MzJcdTA2MjdcdTA2MzFcdTA2MzQgXHUwNjQ1XHUwNjM0XHUwNmE5XHUwNjQ0XHUwNjI3XHUwNjJhOlxuaHR0cHM6Ly9naXRodWIuY29tL1NDUi1JUi9nbm9tZS1zaGFtc2ktY2FsZW5kYXIvaXNzdWVzIiwKICAibmFtZSI6ICJJcmFuaWFuIFBlcnNpYW4gQ2FsZW5kYXIiLAogICJvcmlnaW5hbC1hdXRob3JzIjogImpkZi5zY3IuaXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zY3ItaXIvZ25vbWUtc2hhbXNpLWNhbGVuZGFyIiwKICAidXVpZCI6ICJzaGFtc2ktY2FsZW5kYXJAZ25vbWUuc2NyLmlyIiwKICAidmVyc2lvbiI6IDEzCn0="}, "40": {"version": "13", "sha256": "05g1lshild456qm73a2g7wcis0hkkilyv2i8naq2wp17g17rw5dn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlx1MDYyYVx1MDY0Mlx1MDY0OFx1MDZjY1x1MDY0NSBcdTA2NDdcdTA2MmNcdTA2MzFcdTA2Y2MgXHUwNjM0XHUwNjQ1XHUwNjMzXHUwNmNjXHUwNjBjXHUwNjQyXHUwNjQ1XHUwNjMxXHUwNmNjIFx1MDY0OCBcdTA2NDVcdTA2Y2NcdTA2NDRcdTA2MjdcdTA2MmZcdTA2Y2MgXHUwNjJmXHUwNjMxIFx1MDY0NVx1MDZjY1x1MDYzMlx1MjAwY1x1MDZhOVx1MDYyN1x1MDYzMSBcdTA2YWZcdTA2NDZcdTA2NDhcdTA2NDUgXHUwNjQ0XHUwNmNjXHUwNjQ2XHUwNjQ4XHUwNmE5XHUwNjMzXG5cdTA2NDJcdTA2MjdcdTA2MjhcdTA2NDRcdTA2Y2NcdTA2MmEgXHUwNjQ2XHUwNjQ1XHUwNjI3XHUwNmNjXHUwNjM0IFx1MDYyN1x1MDY0OFx1MDY0Mlx1MDYyN1x1MDYyYSBcdTA2MzRcdTA2MzFcdTA2MzlcdTA2Y2MgXHUwNjQ4IFx1MDY3ZVx1MDYyZVx1MDYzNCBcdTA2MjdcdTA2MzBcdTA2MjdcdTA2NDZcblx1MDYyZlx1MDYzMVx1MDYyYyBcdTA2MmFcdTA2MzlcdTA2MzdcdTA2Y2NcdTA2NDRcdTA2Y2NcdTIwMGNcdTA2NDdcdTA2MjcgXHUwNjQ4IFx1MDY0NVx1MDY0Nlx1MDYyN1x1MDYzM1x1MDYyOFx1MDYyYVx1MjAwY1x1MDY0N1x1MDYyN1x1MDZjYyBcdTA2MzFcdTA2MzNcdTA2NDVcdTA2Y2MgXHUwNjJhXHUwNjQyXHUwNjQ4XHUwNmNjXHUwNjQ1XG5cdTA2MzJcdTA2MjhcdTA2MjdcdTA2NDYgXHUwNmE5XHUwNjI3XHUwNjQ1XHUwNjQ0XHUwNjI3XHUwNjRiIFx1MDY0MVx1MDYyN1x1MDYzMVx1MDYzM1x1MDZjY1xuXHUwNjJhXHUwNjI3XHUwNjMxXHUwNmNjXHUwNjJlIFx1MDY0Mlx1MDY0NVx1MDYzMVx1MDZjYyBcdTA2NDdcdTA2NDRcdTA2MjdcdTA2NDRcdTA2Y2MgXHUwNjI3XHUwNmNjXHUwNjMxXHUwNjI3XHUwNjQ2XG5cdTA2MzNcdTA2MjdcdTA2MzJcdTA2YWZcdTA2MjdcdTA2MzEgXHUwNjI4XHUwNjI3IFx1MDYyN1x1MDZhOVx1MDYyYlx1MDYzMSBcdTA2NDZcdTA2MzNcdTA2MmVcdTA2NDdcdTIwMGNcdTA2NDdcdTA2MjdcdTA2Y2MgXHUwNmFmXHUwNjQ2XHUwNjQ4XHUwNjQ1XG5cdTA2MmZcdTA2MzEgXHUwNjJkXHUwNjI3XHUwNjQ0IFx1MDYyYVx1MDY0OFx1MDYzM1x1MDYzOVx1MDY0Ny4uLlxuXG5TaG93cyBQZXJzaWFuICsgSXNsYW1pYyArIEdyZWdvcmlhbiBkYXRlIGluIHRoZSBwYW5lbCBvZiBnbm9tZS5cblxuSXQgc2hvd3M6XG4xLSBQZXJzaWFuIGNhbGVuZGFyXG4yLSBJdCBjYW4gc2hvdywgdG9kYXkgaXMgaG9saWRheSBvciBub3QhXG4zLSBTaG93IG5vdGlmaWNhdGlvbiBvbkRheUNoYW5nZWQhXG40LSBEYXRlIGNvbnZlcnRlciBiZXR3ZWVuIFBlcnNpYW4sIEdyZWdvcmlhbiBhbmQgTHVuYXIgSGlqcmkoSXNsYW1pYylcbjUtIFNob3cgY2FsZW5kYXIgRXZlbnRzLlxuNi0gU2hvdyBQcmF5VGltZXMgYW5kIHBsYXkgc291bmQgKEF6YW4pLlxuXG5QbGVhc2UgXCJyYXRlXCIgaGVyZSBhbmQgXCJzdGFyXCIgcHJvamVjdCBpbiBHaXRIdWIuXG5QbGVhc2Ugb3BlbiBhbiBpc3N1ZSBpbiBHaXRIdWIgaWYgeW91IGZvdW5kIHNvbWV0aGluZyBvciBoYXZlIGFuIGlkZWEhXG5cdTA2YWZcdTA2MzJcdTA2MjdcdTA2MzFcdTA2MzQgXHUwNjQ1XHUwNjM0XHUwNmE5XHUwNjQ0XHUwNjI3XHUwNjJhOlxuaHR0cHM6Ly9naXRodWIuY29tL1NDUi1JUi9nbm9tZS1zaGFtc2ktY2FsZW5kYXIvaXNzdWVzIiwKICAibmFtZSI6ICJJcmFuaWFuIFBlcnNpYW4gQ2FsZW5kYXIiLAogICJvcmlnaW5hbC1hdXRob3JzIjogImpkZi5zY3IuaXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zY3ItaXIvZ25vbWUtc2hhbXNpLWNhbGVuZGFyIiwKICAidXVpZCI6ICJzaGFtc2ktY2FsZW5kYXJAZ25vbWUuc2NyLmlyIiwKICAidmVyc2lvbiI6IDEzCn0="}}}
-, {"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, and 40.\n\nFor GNOME shell versions 3.14-3.34 visit https://extensions.gnome.org/extension/1228/arc-menu/\n\nCommon solutions for ERROR message:\n-Restart your GNOME session after updating ArcMenu.\n-Make sure package 'gir1.2-gmenu-3.0' is installed.\n\nGeneral Help:\n-Visit https://gitlab.com/arcmenu/ArcMenu/-/wikis/home\n\nPlease report any other issues or concerns on the ArcMenu GitLab page.", "link": "https://extensions.gnome.org/extension/3628/arcmenu/", "shell_version_map": {"38": {"version": "8", "sha256": "0zhnb7r1v1pnkw1f0kh3m1pxbsn8vycvs8iyp1qv3rrav9vbvvhz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxpY2F0aW9uIE1lbnUgZm9yIEdOT01FLCB3aXRoIHZhcmlvdXMgbGF5b3V0cyB0byBjaG9vc2UgZnJvbSFcblxuU3VwcG9ydHMgR05PTUUgc2hlbGwgMy4zNiwgMy4zOCwgYW5kIDQwLlxuXG5Gb3IgR05PTUUgc2hlbGwgdmVyc2lvbnMgMy4xNC0zLjM0IHZpc2l0IGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzEyMjgvYXJjLW1lbnUvXG5cbkNvbW1vbiBzb2x1dGlvbnMgZm9yIEVSUk9SIG1lc3NhZ2U6XG4tUmVzdGFydCB5b3VyIEdOT01FIHNlc3Npb24gYWZ0ZXIgdXBkYXRpbmcgQXJjTWVudS5cbi1NYWtlIHN1cmUgcGFja2FnZSAnZ2lyMS4yLWdtZW51LTMuMCcgaXMgaW5zdGFsbGVkLlxuXG5HZW5lcmFsIEhlbHA6XG4tVmlzaXQgaHR0cHM6Ly9naXRsYWIuY29tL2FyY21lbnUvQXJjTWVudS8tL3dpa2lzL2hvbWVcblxuUGxlYXNlIHJlcG9ydCBhbnkgb3RoZXIgaXNzdWVzIG9yIGNvbmNlcm5zIG9uIHRoZSBBcmNNZW51IEdpdExhYiBwYWdlLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJhcmNtZW51IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYXJjbWVudSIsCiAgIm5hbWUiOiAiQXJjTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hcmNtZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vYXJjbWVudS9BcmNNZW51IiwKICAidXVpZCI6ICJhcmNtZW51QGFyY21lbnUuY29tIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "40": {"version": "10", "sha256": "1094mjp57gf9a3yw7v3j2hgawgrip3ylwbq2l80mjr5q062a8p4n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxpY2F0aW9uIE1lbnUgZm9yIEdOT01FLCB3aXRoIHZhcmlvdXMgbGF5b3V0cyB0byBjaG9vc2UgZnJvbSFcblxuU3VwcG9ydHMgR05PTUUgc2hlbGwgMy4zNiwgMy4zOCwgYW5kIDQwLlxuXG5Gb3IgR05PTUUgc2hlbGwgdmVyc2lvbnMgMy4xNC0zLjM0IHZpc2l0IGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzEyMjgvYXJjLW1lbnUvXG5cbkNvbW1vbiBzb2x1dGlvbnMgZm9yIEVSUk9SIG1lc3NhZ2U6XG4tUmVzdGFydCB5b3VyIEdOT01FIHNlc3Npb24gYWZ0ZXIgdXBkYXRpbmcgQXJjTWVudS5cbi1NYWtlIHN1cmUgcGFja2FnZSAnZ2lyMS4yLWdtZW51LTMuMCcgaXMgaW5zdGFsbGVkLlxuXG5HZW5lcmFsIEhlbHA6XG4tVmlzaXQgaHR0cHM6Ly9naXRsYWIuY29tL2FyY21lbnUvQXJjTWVudS8tL3dpa2lzL2hvbWVcblxuUGxlYXNlIHJlcG9ydCBhbnkgb3RoZXIgaXNzdWVzIG9yIGNvbmNlcm5zIG9uIHRoZSBBcmNNZW51IEdpdExhYiBwYWdlLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJhcmNtZW51IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYXJjbWVudSIsCiAgIm5hbWUiOiAiQXJjTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hcmNtZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2FyY21lbnUvQXJjTWVudSIsCiAgInV1aWQiOiAiYXJjbWVudUBhcmNtZW51LmNvbSIsCiAgInZlcnNpb24iOiAxMAp9"}}}
-, {"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": "5", "sha256": "1f0c8xkdv6ij4rc0gdfmqgshxcn5pg6zqb25rcxgjg1ckp10984w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIElNRSBsaXN0IGluIGZpeGVkIHNlcXVlbmNlIGluc3RlYWQgb2YgTVJVLiIsCiAgIm5hbWUiOiAiRml4ZWQgSU1FIExpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQWx5bnhaaG91L2dub21lLXNoZWxsLWV4dGVuc2lvbi1maXhlZC1pbWUtbGlzdC8iLAogICJ1dWlkIjogImZpeGVkaW1lbGlzdEBhbHlueC5vbmUiLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "5", "sha256": "1f0c8xkdv6ij4rc0gdfmqgshxcn5pg6zqb25rcxgjg1ckp10984w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIElNRSBsaXN0IGluIGZpeGVkIHNlcXVlbmNlIGluc3RlYWQgb2YgTVJVLiIsCiAgIm5hbWUiOiAiRml4ZWQgSU1FIExpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQWx5bnhaaG91L2dub21lLXNoZWxsLWV4dGVuc2lvbi1maXhlZC1pbWUtbGlzdC8iLAogICJ1dWlkIjogImZpeGVkaW1lbGlzdEBhbHlueC5vbmUiLAogICJ2ZXJzaW9uIjogNQp9"}}}
+, {"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": "14", "sha256": "16jz1vrl992nlgnlxdnqp7w89bl7ryi5l77vvydi1jn3n042jr2y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlx1MDYyYVx1MDY0Mlx1MDY0OFx1MDZjY1x1MDY0NSBcdTA2NDdcdTA2MmNcdTA2MzFcdTA2Y2MgXHUwNjM0XHUwNjQ1XHUwNjMzXHUwNmNjXHUwNjBjXHUwNjQyXHUwNjQ1XHUwNjMxXHUwNmNjIFx1MDY0OCBcdTA2NDVcdTA2Y2NcdTA2NDRcdTA2MjdcdTA2MmZcdTA2Y2MgXHUwNjJmXHUwNjMxIFx1MDY0NVx1MDZjY1x1MDYzMlx1MjAwY1x1MDZhOVx1MDYyN1x1MDYzMSBcdTA2YWZcdTA2NDZcdTA2NDhcdTA2NDUgXHUwNjQ0XHUwNmNjXHUwNjQ2XHUwNjQ4XHUwNmE5XHUwNjMzXG5cdTA2NDJcdTA2MjdcdTA2MjhcdTA2NDRcdTA2Y2NcdTA2MmEgXHUwNjQ2XHUwNjQ1XHUwNjI3XHUwNmNjXHUwNjM0IFx1MDYyN1x1MDY0OFx1MDY0Mlx1MDYyN1x1MDYyYSBcdTA2MzRcdTA2MzFcdTA2MzlcdTA2Y2MgXHUwNjQ4IFx1MDY3ZVx1MDYyZVx1MDYzNCBcdTA2MjdcdTA2MzBcdTA2MjdcdTA2NDZcblx1MDYyZlx1MDYzMVx1MDYyYyBcdTA2MmFcdTA2MzlcdTA2MzdcdTA2Y2NcdTA2NDRcdTA2Y2NcdTIwMGNcdTA2NDdcdTA2MjcgXHUwNjQ4IFx1MDY0NVx1MDY0Nlx1MDYyN1x1MDYzM1x1MDYyOFx1MDYyYVx1MjAwY1x1MDY0N1x1MDYyN1x1MDZjYyBcdTA2MzFcdTA2MzNcdTA2NDVcdTA2Y2MgXHUwNjJhXHUwNjQyXHUwNjQ4XHUwNmNjXHUwNjQ1XG5cdTA2MzJcdTA2MjhcdTA2MjdcdTA2NDYgXHUwNmE5XHUwNjI3XHUwNjQ1XHUwNjQ0XHUwNjI3XHUwNjRiIFx1MDY0MVx1MDYyN1x1MDYzMVx1MDYzM1x1MDZjY1xuXHUwNjJhXHUwNjI3XHUwNjMxXHUwNmNjXHUwNjJlIFx1MDY0Mlx1MDY0NVx1MDYzMVx1MDZjYyBcdTA2NDdcdTA2NDRcdTA2MjdcdTA2NDRcdTA2Y2MgXHUwNjI3XHUwNmNjXHUwNjMxXHUwNjI3XHUwNjQ2XG5cdTA2MzNcdTA2MjdcdTA2MzJcdTA2YWZcdTA2MjdcdTA2MzEgXHUwNjI4XHUwNjI3IFx1MDYyN1x1MDZhOVx1MDYyYlx1MDYzMSBcdTA2NDZcdTA2MzNcdTA2MmVcdTA2NDdcdTIwMGNcdTA2NDdcdTA2MjdcdTA2Y2MgXHUwNmFmXHUwNjQ2XHUwNjQ4XHUwNjQ1XG5cdTA2MmZcdTA2MzEgXHUwNjJkXHUwNjI3XHUwNjQ0IFx1MDYyYVx1MDY0OFx1MDYzM1x1MDYzOVx1MDY0Ny4uLlxuXG5TaG93cyBQZXJzaWFuICsgSXNsYW1pYyArIEdyZWdvcmlhbiBkYXRlIGluIHRoZSBwYW5lbCBvZiBnbm9tZS5cblxuSXQgc2hvd3M6XG4xLSBQZXJzaWFuIGNhbGVuZGFyXG4yLSBJdCBjYW4gc2hvdywgdG9kYXkgaXMgaG9saWRheSBvciBub3QhXG4zLSBTaG93IG5vdGlmaWNhdGlvbiBvbkRheUNoYW5nZWQhXG40LSBEYXRlIGNvbnZlcnRlciBiZXR3ZWVuIFBlcnNpYW4sIEdyZWdvcmlhbiBhbmQgTHVuYXIgSGlqcmkoSXNsYW1pYylcbjUtIFNob3cgY2FsZW5kYXIgRXZlbnRzLlxuNi0gU2hvdyBQcmF5VGltZXMgYW5kIHBsYXkgc291bmQgKEF6YW4pLlxuXG5QbGVhc2UgXCJyYXRlXCIgaGVyZSBhbmQgXCJzdGFyXCIgcHJvamVjdCBpbiBHaXRIdWIuXG5QbGVhc2Ugb3BlbiBhbiBpc3N1ZSBpbiBHaXRIdWIgaWYgeW91IGZvdW5kIHNvbWV0aGluZyBvciBoYXZlIGFuIGlkZWEhXG5cdTA2YWZcdTA2MzJcdTA2MjdcdTA2MzFcdTA2MzQgXHUwNjQ1XHUwNjM0XHUwNmE5XHUwNjQ0XHUwNjI3XHUwNjJhOlxuaHR0cHM6Ly9naXRodWIuY29tL1NDUi1JUi9nbm9tZS1zaGFtc2ktY2FsZW5kYXIvaXNzdWVzIiwKICAibmFtZSI6ICJJcmFuaWFuIFBlcnNpYW4gQ2FsZW5kYXIiLAogICJvcmlnaW5hbC1hdXRob3JzIjogImpkZi5zY3IuaXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc2NyLWlyL2dub21lLXNoYW1zaS1jYWxlbmRhciIsCiAgInV1aWQiOiAic2hhbXNpLWNhbGVuZGFyQGdub21lLnNjci5pciIsCiAgInZlcnNpb24iOiAxNAp9"}, "40": {"version": "14", "sha256": "16jz1vrl992nlgnlxdnqp7w89bl7ryi5l77vvydi1jn3n042jr2y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlx1MDYyYVx1MDY0Mlx1MDY0OFx1MDZjY1x1MDY0NSBcdTA2NDdcdTA2MmNcdTA2MzFcdTA2Y2MgXHUwNjM0XHUwNjQ1XHUwNjMzXHUwNmNjXHUwNjBjXHUwNjQyXHUwNjQ1XHUwNjMxXHUwNmNjIFx1MDY0OCBcdTA2NDVcdTA2Y2NcdTA2NDRcdTA2MjdcdTA2MmZcdTA2Y2MgXHUwNjJmXHUwNjMxIFx1MDY0NVx1MDZjY1x1MDYzMlx1MjAwY1x1MDZhOVx1MDYyN1x1MDYzMSBcdTA2YWZcdTA2NDZcdTA2NDhcdTA2NDUgXHUwNjQ0XHUwNmNjXHUwNjQ2XHUwNjQ4XHUwNmE5XHUwNjMzXG5cdTA2NDJcdTA2MjdcdTA2MjhcdTA2NDRcdTA2Y2NcdTA2MmEgXHUwNjQ2XHUwNjQ1XHUwNjI3XHUwNmNjXHUwNjM0IFx1MDYyN1x1MDY0OFx1MDY0Mlx1MDYyN1x1MDYyYSBcdTA2MzRcdTA2MzFcdTA2MzlcdTA2Y2MgXHUwNjQ4IFx1MDY3ZVx1MDYyZVx1MDYzNCBcdTA2MjdcdTA2MzBcdTA2MjdcdTA2NDZcblx1MDYyZlx1MDYzMVx1MDYyYyBcdTA2MmFcdTA2MzlcdTA2MzdcdTA2Y2NcdTA2NDRcdTA2Y2NcdTIwMGNcdTA2NDdcdTA2MjcgXHUwNjQ4IFx1MDY0NVx1MDY0Nlx1MDYyN1x1MDYzM1x1MDYyOFx1MDYyYVx1MjAwY1x1MDY0N1x1MDYyN1x1MDZjYyBcdTA2MzFcdTA2MzNcdTA2NDVcdTA2Y2MgXHUwNjJhXHUwNjQyXHUwNjQ4XHUwNmNjXHUwNjQ1XG5cdTA2MzJcdTA2MjhcdTA2MjdcdTA2NDYgXHUwNmE5XHUwNjI3XHUwNjQ1XHUwNjQ0XHUwNjI3XHUwNjRiIFx1MDY0MVx1MDYyN1x1MDYzMVx1MDYzM1x1MDZjY1xuXHUwNjJhXHUwNjI3XHUwNjMxXHUwNmNjXHUwNjJlIFx1MDY0Mlx1MDY0NVx1MDYzMVx1MDZjYyBcdTA2NDdcdTA2NDRcdTA2MjdcdTA2NDRcdTA2Y2MgXHUwNjI3XHUwNmNjXHUwNjMxXHUwNjI3XHUwNjQ2XG5cdTA2MzNcdTA2MjdcdTA2MzJcdTA2YWZcdTA2MjdcdTA2MzEgXHUwNjI4XHUwNjI3IFx1MDYyN1x1MDZhOVx1MDYyYlx1MDYzMSBcdTA2NDZcdTA2MzNcdTA2MmVcdTA2NDdcdTIwMGNcdTA2NDdcdTA2MjdcdTA2Y2MgXHUwNmFmXHUwNjQ2XHUwNjQ4XHUwNjQ1XG5cdTA2MmZcdTA2MzEgXHUwNjJkXHUwNjI3XHUwNjQ0IFx1MDYyYVx1MDY0OFx1MDYzM1x1MDYzOVx1MDY0Ny4uLlxuXG5TaG93cyBQZXJzaWFuICsgSXNsYW1pYyArIEdyZWdvcmlhbiBkYXRlIGluIHRoZSBwYW5lbCBvZiBnbm9tZS5cblxuSXQgc2hvd3M6XG4xLSBQZXJzaWFuIGNhbGVuZGFyXG4yLSBJdCBjYW4gc2hvdywgdG9kYXkgaXMgaG9saWRheSBvciBub3QhXG4zLSBTaG93IG5vdGlmaWNhdGlvbiBvbkRheUNoYW5nZWQhXG40LSBEYXRlIGNvbnZlcnRlciBiZXR3ZWVuIFBlcnNpYW4sIEdyZWdvcmlhbiBhbmQgTHVuYXIgSGlqcmkoSXNsYW1pYylcbjUtIFNob3cgY2FsZW5kYXIgRXZlbnRzLlxuNi0gU2hvdyBQcmF5VGltZXMgYW5kIHBsYXkgc291bmQgKEF6YW4pLlxuXG5QbGVhc2UgXCJyYXRlXCIgaGVyZSBhbmQgXCJzdGFyXCIgcHJvamVjdCBpbiBHaXRIdWIuXG5QbGVhc2Ugb3BlbiBhbiBpc3N1ZSBpbiBHaXRIdWIgaWYgeW91IGZvdW5kIHNvbWV0aGluZyBvciBoYXZlIGFuIGlkZWEhXG5cdTA2YWZcdTA2MzJcdTA2MjdcdTA2MzFcdTA2MzQgXHUwNjQ1XHUwNjM0XHUwNmE5XHUwNjQ0XHUwNjI3XHUwNjJhOlxuaHR0cHM6Ly9naXRodWIuY29tL1NDUi1JUi9nbm9tZS1zaGFtc2ktY2FsZW5kYXIvaXNzdWVzIiwKICAibmFtZSI6ICJJcmFuaWFuIFBlcnNpYW4gQ2FsZW5kYXIiLAogICJvcmlnaW5hbC1hdXRob3JzIjogImpkZi5zY3IuaXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc2NyLWlyL2dub21lLXNoYW1zaS1jYWxlbmRhciIsCiAgInV1aWQiOiAic2hhbXNpLWNhbGVuZGFyQGdub21lLnNjci5pciIsCiAgInZlcnNpb24iOiAxNAp9"}}}
+, {"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, and 40.\n\nFor GNOME shell versions 3.14-3.34 visit https://extensions.gnome.org/extension/1228/arc-menu/\n\nCommon solutions for ERROR message:\n-Restart your GNOME session after updating ArcMenu.\n-Make sure package 'gir1.2-gmenu-3.0' is installed.\n\nGeneral Help:\n-Visit https://gitlab.com/arcmenu/ArcMenu/-/wikis/home\n\nPlease report issues at https://gitlab.com/arcmenu/ArcMenu", "link": "https://extensions.gnome.org/extension/3628/arcmenu/", "shell_version_map": {"38": {"version": "13", "sha256": "023frirwnjn7daa2kwgfywf782mwhrzajd908sigr0gphpwpx286", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxpY2F0aW9uIE1lbnUgZm9yIEdOT01FLCB3aXRoIHZhcmlvdXMgbGF5b3V0cyB0byBjaG9vc2UgZnJvbSFcblxuU3VwcG9ydHMgR05PTUUgc2hlbGwgMy4zNiwgMy4zOCwgYW5kIDQwLlxuXG5Gb3IgR05PTUUgc2hlbGwgdmVyc2lvbnMgMy4xNC0zLjM0IHZpc2l0IGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzEyMjgvYXJjLW1lbnUvXG5cbkNvbW1vbiBzb2x1dGlvbnMgZm9yIEVSUk9SIG1lc3NhZ2U6XG4tUmVzdGFydCB5b3VyIEdOT01FIHNlc3Npb24gYWZ0ZXIgdXBkYXRpbmcgQXJjTWVudS5cbi1NYWtlIHN1cmUgcGFja2FnZSAnZ2lyMS4yLWdtZW51LTMuMCcgaXMgaW5zdGFsbGVkLlxuXG5HZW5lcmFsIEhlbHA6XG4tVmlzaXQgaHR0cHM6Ly9naXRsYWIuY29tL2FyY21lbnUvQXJjTWVudS8tL3dpa2lzL2hvbWVcblxuUGxlYXNlIHJlcG9ydCBpc3N1ZXMgYXQgaHR0cHM6Ly9naXRsYWIuY29tL2FyY21lbnUvQXJjTWVudSIsCiAgImV4dGVuc2lvbi1pZCI6ICJhcmNtZW51IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYXJjbWVudSIsCiAgIm5hbWUiOiAiQXJjTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hcmNtZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vYXJjbWVudS9BcmNNZW51IiwKICAidXVpZCI6ICJhcmNtZW51QGFyY21lbnUuY29tIiwKICAidmVyc2lvbiI6IDEzCn0="}, "40": {"version": "14", "sha256": "1aji561klhhcslwwhq0021y947i6c6h9lsly3lp3ljd7h5znl0r6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxpY2F0aW9uIE1lbnUgZm9yIEdOT01FLCB3aXRoIHZhcmlvdXMgbGF5b3V0cyB0byBjaG9vc2UgZnJvbSFcblxuU3VwcG9ydHMgR05PTUUgc2hlbGwgMy4zNiwgMy4zOCwgYW5kIDQwLlxuXG5Gb3IgR05PTUUgc2hlbGwgdmVyc2lvbnMgMy4xNC0zLjM0IHZpc2l0IGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzEyMjgvYXJjLW1lbnUvXG5cbkNvbW1vbiBzb2x1dGlvbnMgZm9yIEVSUk9SIG1lc3NhZ2U6XG4tUmVzdGFydCB5b3VyIEdOT01FIHNlc3Npb24gYWZ0ZXIgdXBkYXRpbmcgQXJjTWVudS5cbi1NYWtlIHN1cmUgcGFja2FnZSAnZ2lyMS4yLWdtZW51LTMuMCcgaXMgaW5zdGFsbGVkLlxuXG5HZW5lcmFsIEhlbHA6XG4tVmlzaXQgaHR0cHM6Ly9naXRsYWIuY29tL2FyY21lbnUvQXJjTWVudS8tL3dpa2lzL2hvbWVcblxuUGxlYXNlIHJlcG9ydCBpc3N1ZXMgYXQgaHR0cHM6Ly9naXRsYWIuY29tL2FyY21lbnUvQXJjTWVudSIsCiAgImV4dGVuc2lvbi1pZCI6ICJhcmNtZW51IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYXJjbWVudSIsCiAgIm5hbWUiOiAiQXJjTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hcmNtZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2FyY21lbnUvQXJjTWVudSIsCiAgInV1aWQiOiAiYXJjbWVudUBhcmNtZW51LmNvbSIsCiAgInZlcnNpb24iOiAxNAp9"}}}
+, {"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="}}}
 , {"uuid": "eos-hack@endlessos.org", "name": "Hack", "pname": "hack", "description": "Add the Flip to Hack experience to the desktop", "link": "https://extensions.gnome.org/extension/3690/hack/", "shell_version_map": {"38": {"version": "7", "sha256": "1dm9471qpyghzh0vvwdcliqrshv3844wizkgcv4fiwccr346i6ga", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCB0aGUgRmxpcCB0byBIYWNrIGV4cGVyaWVuY2UgdG8gdGhlIGRlc2t0b3AiLAogICJuYW1lIjogIkhhY2siLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmVuZGxlc3Nvcy5oYWNrLWV4dGVuc2lvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VuZGxlc3NtL2Vvcy1oYWNrLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiZW9zLWhhY2tAZW5kbGVzc29zLm9yZyIsCiAgInZlcnNpb24iOiA3Cn0="}}}
+, {"uuid": "desktop-scroller@calango", "name": "Desktop Scroller (GNOME 3.38)", "pname": "desktop-scroller-gnome-338", "description": "Switch between desktops scrolling at the upper edge of the screen, including in overview. Change your delay between scroll events in extension.js. If you want to scroll on more lines from the top of the screen just remember that other extensions or indicators will not be able to catch their scroll events.", "link": "https://extensions.gnome.org/extension/3709/desktop-scroller-gnome-338/", "shell_version_map": {"38": {"version": "1", "sha256": "11g4w7bbzb8p9w78w83jpslgbs74rc26np0b1v35dg7nc7x33q4i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCBiZXR3ZWVuIGRlc2t0b3BzIHNjcm9sbGluZyBhdCB0aGUgdXBwZXIgZWRnZSBvZiB0aGUgc2NyZWVuLCBpbmNsdWRpbmcgaW4gb3ZlcnZpZXcuIENoYW5nZSB5b3VyIGRlbGF5IGJldHdlZW4gc2Nyb2xsIGV2ZW50cyBpbiBleHRlbnNpb24uanMuIElmIHlvdSB3YW50IHRvIHNjcm9sbCBvbiBtb3JlIGxpbmVzIGZyb20gdGhlIHRvcCBvZiB0aGUgc2NyZWVuIGp1c3QgcmVtZW1iZXIgdGhhdCBvdGhlciBleHRlbnNpb25zIG9yIGluZGljYXRvcnMgd2lsbCBub3QgYmUgYWJsZSB0byBjYXRjaCB0aGVpciBzY3JvbGwgZXZlbnRzLiIsCiAgIm5hbWUiOiAiRGVza3RvcCBTY3JvbGxlciAoR05PTUUgMy4zOCkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzguMSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJkZXNrdG9wLXNjcm9sbGVyQGNhbGFuZ28iLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"uuid": "appmenu-color-icon@yanbab.gitlab.com", "name": "Colored AppMenu Icon", "pname": "color-app-menu-icon", "description": "Replace the symbolic application menu icon with the colored one", "link": "https://extensions.gnome.org/extension/3712/color-app-menu-icon/", "shell_version_map": {"38": {"version": "1", "sha256": "17bsnqimkanf6c3d3qjvhggi5r3xjp6pha05fyh6b1ak9m9lvg53", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgdGhlIHN5bWJvbGljIGFwcGxpY2F0aW9uIG1lbnUgaWNvbiB3aXRoIHRoZSBjb2xvcmVkIG9uZSIsCiAgIm5hbWUiOiAiQ29sb3JlZCBBcHBNZW51IEljb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS95YW5iYWIvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXJlZ3VsYXItYXBwbWVudS1pY29uIiwKICAidXVpZCI6ICJhcHBtZW51LWNvbG9yLWljb25AeWFuYmFiLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
-, {"uuid": "snap-manager@fthx", "name": "Snap Manager", "pname": "snap-manager", "description": "Popup menu in the top bar to easily manage snap tasks (list, changes, refresh, remove, install...). Update notification at session start-up.\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. You can turn off refresh check and associated notifications (just a variable to toggle in <extension_folder>/extension.js). You can disable 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/3715/snap-manager/", "shell_version_map": {"38": {"version": "32", "sha256": "0baby2385cnk0j133vr0n8z92smps28shzxymn80ljk8dmdqz1gp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBvcHVwIG1lbnUgaW4gdGhlIHRvcCBiYXIgdG8gZWFzaWx5IG1hbmFnZSBzbmFwIHRhc2tzIChsaXN0LCBjaGFuZ2VzLCByZWZyZXNoLCByZW1vdmUsIGluc3RhbGwuLi4pLiBVcGRhdGUgbm90aWZpY2F0aW9uIGF0IHNlc3Npb24gc3RhcnQtdXAuXG5cbiBBbGwgdGhlIHJlc3VsdHMgb2YgYWN0aW9ucyBhcmUgZGlzcGxheWVkIGluIEdOT01FIFRlcm1pbmFsLCBzbyB5b3UgY2FuIGV4YWN0bHkga25vdyB3aGF0IHlvdSBhcmUgZG9pbmcgYW5kIHdoYXQgaXMgcHJvY2Vzc2luZy4gVmVyeSBsaWdodCBleHRlbnNpb24sIG5vIGJhY2tncm91bmQgcHJvY2Vzcywgbm8gcGVyaW9kaWMgYmFja2dyb3VuZCB0YXNrLiBZb3UgY2FuIHR1cm4gb2ZmIHJlZnJlc2ggY2hlY2sgYW5kIGFzc29jaWF0ZWQgbm90aWZpY2F0aW9ucyAoanVzdCBhIHZhcmlhYmxlIHRvIHRvZ2dsZSBpbiA8ZXh0ZW5zaW9uX2ZvbGRlcj4vZXh0ZW5zaW9uLmpzKS4gWW91IGNhbiBkaXNhYmxlIGF1dG8gdXBkYXRlcyBmb3IgYSBsaW1pdGVkIHRpbWUgKHVwIHRvIG9uZSBtb250aCwgcmVuZXdhYmxlKSwgY29uc2VxdWVudGx5IGJlIG5vdGlmaWVkIG9mIHNuYXAgdXBkYXRlcyBhbmQgbWFudWFsbHkgaW5zdGFsbCB0aGVtLiBcblxuIFRoaXMgaXMgbm90IGFuIG9mZmljaWFsIFVidW50dS9DYW5vbmljYWwgZXh0ZW5zaW9uLiIsCiAgIm5hbWUiOiAiU25hcCBNYW5hZ2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvc25hcC1tYW5hZ2VyIiwKICAidXVpZCI6ICJzbmFwLW1hbmFnZXJAZnRoeCIsCiAgInZlcnNpb24iOiAzMgp9"}, "40": {"version": "32", "sha256": "0baby2385cnk0j133vr0n8z92smps28shzxymn80ljk8dmdqz1gp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBvcHVwIG1lbnUgaW4gdGhlIHRvcCBiYXIgdG8gZWFzaWx5IG1hbmFnZSBzbmFwIHRhc2tzIChsaXN0LCBjaGFuZ2VzLCByZWZyZXNoLCByZW1vdmUsIGluc3RhbGwuLi4pLiBVcGRhdGUgbm90aWZpY2F0aW9uIGF0IHNlc3Npb24gc3RhcnQtdXAuXG5cbiBBbGwgdGhlIHJlc3VsdHMgb2YgYWN0aW9ucyBhcmUgZGlzcGxheWVkIGluIEdOT01FIFRlcm1pbmFsLCBzbyB5b3UgY2FuIGV4YWN0bHkga25vdyB3aGF0IHlvdSBhcmUgZG9pbmcgYW5kIHdoYXQgaXMgcHJvY2Vzc2luZy4gVmVyeSBsaWdodCBleHRlbnNpb24sIG5vIGJhY2tncm91bmQgcHJvY2Vzcywgbm8gcGVyaW9kaWMgYmFja2dyb3VuZCB0YXNrLiBZb3UgY2FuIHR1cm4gb2ZmIHJlZnJlc2ggY2hlY2sgYW5kIGFzc29jaWF0ZWQgbm90aWZpY2F0aW9ucyAoanVzdCBhIHZhcmlhYmxlIHRvIHRvZ2dsZSBpbiA8ZXh0ZW5zaW9uX2ZvbGRlcj4vZXh0ZW5zaW9uLmpzKS4gWW91IGNhbiBkaXNhYmxlIGF1dG8gdXBkYXRlcyBmb3IgYSBsaW1pdGVkIHRpbWUgKHVwIHRvIG9uZSBtb250aCwgcmVuZXdhYmxlKSwgY29uc2VxdWVudGx5IGJlIG5vdGlmaWVkIG9mIHNuYXAgdXBkYXRlcyBhbmQgbWFudWFsbHkgaW5zdGFsbCB0aGVtLiBcblxuIFRoaXMgaXMgbm90IGFuIG9mZmljaWFsIFVidW50dS9DYW5vbmljYWwgZXh0ZW5zaW9uLiIsCiAgIm5hbWUiOiAiU25hcCBNYW5hZ2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvc25hcC1tYW5hZ2VyIiwKICAidXVpZCI6ICJzbmFwLW1hbmFnZXJAZnRoeCIsCiAgInZlcnNpb24iOiAzMgp9"}}}
+, {"uuid": "snap-manager@fthx", "name": "Snap Manager", "pname": "snap-manager", "description": "Popup menu in the top bar to easily manage snap tasks (list, changes, refresh, remove, install...). Update notification at session start-up.\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. You can turn off refresh check and associated notifications (just a variable to toggle in <extension_folder>/extension.js). You can disable 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/3715/snap-manager/", "shell_version_map": {"38": {"version": "33", "sha256": "1fvjjhh4q45qvyjma4azn4i63c79a9500jncqbwz5jnv39j9h3d7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBvcHVwIG1lbnUgaW4gdGhlIHRvcCBiYXIgdG8gZWFzaWx5IG1hbmFnZSBzbmFwIHRhc2tzIChsaXN0LCBjaGFuZ2VzLCByZWZyZXNoLCByZW1vdmUsIGluc3RhbGwuLi4pLiBVcGRhdGUgbm90aWZpY2F0aW9uIGF0IHNlc3Npb24gc3RhcnQtdXAuXG5cbiBBbGwgdGhlIHJlc3VsdHMgb2YgYWN0aW9ucyBhcmUgZGlzcGxheWVkIGluIEdOT01FIFRlcm1pbmFsLCBzbyB5b3UgY2FuIGV4YWN0bHkga25vdyB3aGF0IHlvdSBhcmUgZG9pbmcgYW5kIHdoYXQgaXMgcHJvY2Vzc2luZy4gVmVyeSBsaWdodCBleHRlbnNpb24sIG5vIGJhY2tncm91bmQgcHJvY2Vzcywgbm8gcGVyaW9kaWMgYmFja2dyb3VuZCB0YXNrLiBZb3UgY2FuIHR1cm4gb2ZmIHJlZnJlc2ggY2hlY2sgYW5kIGFzc29jaWF0ZWQgbm90aWZpY2F0aW9ucyAoanVzdCBhIHZhcmlhYmxlIHRvIHRvZ2dsZSBpbiA8ZXh0ZW5zaW9uX2ZvbGRlcj4vZXh0ZW5zaW9uLmpzKS4gWW91IGNhbiBkaXNhYmxlIGF1dG8gdXBkYXRlcyBmb3IgYSBsaW1pdGVkIHRpbWUgKHVwIHRvIG9uZSBtb250aCwgcmVuZXdhYmxlKSwgY29uc2VxdWVudGx5IGJlIG5vdGlmaWVkIG9mIHNuYXAgdXBkYXRlcyBhbmQgbWFudWFsbHkgaW5zdGFsbCB0aGVtLiBcblxuIFRoaXMgaXMgbm90IGFuIG9mZmljaWFsIFVidW50dS9DYW5vbmljYWwgZXh0ZW5zaW9uLiIsCiAgIm5hbWUiOiAiU25hcCBNYW5hZ2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvc25hcC1tYW5hZ2VyIiwKICAidXVpZCI6ICJzbmFwLW1hbmFnZXJAZnRoeCIsCiAgInZlcnNpb24iOiAzMwp9"}, "40": {"version": "33", "sha256": "1fvjjhh4q45qvyjma4azn4i63c79a9500jncqbwz5jnv39j9h3d7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBvcHVwIG1lbnUgaW4gdGhlIHRvcCBiYXIgdG8gZWFzaWx5IG1hbmFnZSBzbmFwIHRhc2tzIChsaXN0LCBjaGFuZ2VzLCByZWZyZXNoLCByZW1vdmUsIGluc3RhbGwuLi4pLiBVcGRhdGUgbm90aWZpY2F0aW9uIGF0IHNlc3Npb24gc3RhcnQtdXAuXG5cbiBBbGwgdGhlIHJlc3VsdHMgb2YgYWN0aW9ucyBhcmUgZGlzcGxheWVkIGluIEdOT01FIFRlcm1pbmFsLCBzbyB5b3UgY2FuIGV4YWN0bHkga25vdyB3aGF0IHlvdSBhcmUgZG9pbmcgYW5kIHdoYXQgaXMgcHJvY2Vzc2luZy4gVmVyeSBsaWdodCBleHRlbnNpb24sIG5vIGJhY2tncm91bmQgcHJvY2Vzcywgbm8gcGVyaW9kaWMgYmFja2dyb3VuZCB0YXNrLiBZb3UgY2FuIHR1cm4gb2ZmIHJlZnJlc2ggY2hlY2sgYW5kIGFzc29jaWF0ZWQgbm90aWZpY2F0aW9ucyAoanVzdCBhIHZhcmlhYmxlIHRvIHRvZ2dsZSBpbiA8ZXh0ZW5zaW9uX2ZvbGRlcj4vZXh0ZW5zaW9uLmpzKS4gWW91IGNhbiBkaXNhYmxlIGF1dG8gdXBkYXRlcyBmb3IgYSBsaW1pdGVkIHRpbWUgKHVwIHRvIG9uZSBtb250aCwgcmVuZXdhYmxlKSwgY29uc2VxdWVudGx5IGJlIG5vdGlmaWVkIG9mIHNuYXAgdXBkYXRlcyBhbmQgbWFudWFsbHkgaW5zdGFsbCB0aGVtLiBcblxuIFRoaXMgaXMgbm90IGFuIG9mZmljaWFsIFVidW50dS9DYW5vbmljYWwgZXh0ZW5zaW9uLiIsCiAgIm5hbWUiOiAiU25hcCBNYW5hZ2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvc25hcC1tYW5hZ2VyIiwKICAidXVpZCI6ICJzbmFwLW1hbmFnZXJAZnRoeCIsCiAgInZlcnNpb24iOiAzMwp9"}}}
 , {"uuid": "hide-dash-forked@farnasirim.com", "name": "Hide Dash Forked", "pname": "hide-dash-forked", "description": "Hide dash menu from gnome overview", "link": "https://extensions.gnome.org/extension/3718/hide-dash-forked/", "shell_version_map": {"38": {"version": "3", "sha256": "1j0ca2nwj8bhnn2vv3fgjhglg8af9iqa992i7d2mvxx4zisj8rdq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgZGFzaCBtZW51IGZyb20gZ25vbWUgb3ZlcnZpZXciLAogICJuYW1lIjogIkhpZGUgRGFzaCBGb3JrZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mYXJuYXNpcmltL2dub21lLXNoZWxsLWV4dGVuc2lvbi1oaWRlLWRhc2gtZm9ya2VkIiwKICAidXVpZCI6ICJoaWRlLWRhc2gtZm9ya2VkQGZhcm5hc2lyaW0uY29tIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
-, {"uuid": "netspeedsimplified@prateekmedia.extension", "name": "Net speed Simplified", "pname": "net-speed-simplified", "description": "A Net Speed extension With Loads of Customization. Fork of simplenetspeed \n \nWhat's new\n☞ Add Limit Unit option \n☞ Tested on GNOME 40, 3.38 and 3.36 \n☞ Fix a bug where refresh time was getting reset to 6.5 \n☞ Used Min Width 3.0 by default \n \nFeatures \n1. Cleaner UI \n2. Adjustable Refresh rate \n3. Preferences to manage extension \n4. Vertical Alignment Support \n5. Two Icon sets for Indicators \n\n Feature Highlights for Preferences \n1. Lock Mouse Actions button to Freeze Mouse Events \n2. Advance Position options to pinpoint where to place the indicator on the Panel. \n3. Refresh time option by which you can change refresh rate value between 1.0 sec to 10.0 sec. \n\nModes \n- Total net speed in bits per second \n- Total net speed in Bytes per second \n- Up and down speed in bits per second \n- Up and down speed in Bytes per second \n- Total of downloaded in Bytes (Right click to reset counter) \n\nMouse Events \n- Left click to change modes \n- Right click to toggle total data usage visibility \n- Right click continuously for 4 times in any mode to toggle vertical alignment \n- Middle click to change font size", "link": "https://extensions.gnome.org/extension/3724/net-speed-simplified/", "shell_version_map": {"38": {"version": "27", "sha256": "1g2jk200v8fyl1f0yrw98jsvr3ymhmd3glq6min4lx531j80r948", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTmV0IFNwZWVkIGV4dGVuc2lvbiBXaXRoIExvYWRzIG9mIEN1c3RvbWl6YXRpb24uIEZvcmsgb2Ygc2ltcGxlbmV0c3BlZWQgXG4gXG5XaGF0J3MgbmV3XG5cdTI2MWUgQWRkIExpbWl0IFVuaXQgb3B0aW9uIFxuXHUyNjFlIFRlc3RlZCBvbiBHTk9NRSA0MCwgMy4zOCBhbmQgMy4zNiBcblx1MjYxZSBGaXggYSBidWcgd2hlcmUgcmVmcmVzaCB0aW1lIHdhcyBnZXR0aW5nIHJlc2V0IHRvIDYuNSBcblx1MjYxZSBVc2VkIE1pbiBXaWR0aCAzLjAgYnkgZGVmYXVsdCBcbiBcbkZlYXR1cmVzIFxuMS4gQ2xlYW5lciBVSSBcbjIuIEFkanVzdGFibGUgUmVmcmVzaCByYXRlIFxuMy4gUHJlZmVyZW5jZXMgdG8gbWFuYWdlIGV4dGVuc2lvbiBcbjQuIFZlcnRpY2FsIEFsaWdubWVudCBTdXBwb3J0IFxuNS4gVHdvIEljb24gc2V0cyBmb3IgSW5kaWNhdG9ycyBcblxuIEZlYXR1cmUgSGlnaGxpZ2h0cyBmb3IgUHJlZmVyZW5jZXMgXG4xLiBMb2NrIE1vdXNlIEFjdGlvbnMgYnV0dG9uIHRvIEZyZWV6ZSBNb3VzZSBFdmVudHMgXG4yLiBBZHZhbmNlIFBvc2l0aW9uIG9wdGlvbnMgdG8gcGlucG9pbnQgd2hlcmUgdG8gcGxhY2UgdGhlIGluZGljYXRvciBvbiB0aGUgUGFuZWwuIFxuMy4gUmVmcmVzaCB0aW1lIG9wdGlvbiBieSB3aGljaCB5b3UgY2FuIGNoYW5nZSByZWZyZXNoIHJhdGUgdmFsdWUgYmV0d2VlbiAxLjAgc2VjIHRvIDEwLjAgc2VjLiBcblxuTW9kZXMgXG4tIFRvdGFsIG5ldCBzcGVlZCBpbiBiaXRzIHBlciBzZWNvbmQgXG4tIFRvdGFsIG5ldCBzcGVlZCBpbiBCeXRlcyBwZXIgc2Vjb25kIFxuLSBVcCBhbmQgZG93biBzcGVlZCBpbiBiaXRzIHBlciBzZWNvbmQgXG4tIFVwIGFuZCBkb3duIHNwZWVkIGluIEJ5dGVzIHBlciBzZWNvbmQgXG4tIFRvdGFsIG9mIGRvd25sb2FkZWQgaW4gQnl0ZXMgKFJpZ2h0IGNsaWNrIHRvIHJlc2V0IGNvdW50ZXIpIFxuXG5Nb3VzZSBFdmVudHMgXG4tIExlZnQgY2xpY2sgdG8gY2hhbmdlIG1vZGVzIFxuLSBSaWdodCBjbGljayB0byB0b2dnbGUgdG90YWwgZGF0YSB1c2FnZSB2aXNpYmlsaXR5IFxuLSBSaWdodCBjbGljayBjb250aW51b3VzbHkgZm9yIDQgdGltZXMgaW4gYW55IG1vZGUgdG8gdG9nZ2xlIHZlcnRpY2FsIGFsaWdubWVudCBcbi0gTWlkZGxlIGNsaWNrIHRvIGNoYW5nZSBmb250IHNpemUiLAogICJuYW1lIjogIk5ldCBzcGVlZCBTaW1wbGlmaWVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIsCiAgICAiNDQiLAogICAgIjQ1IiwKICAgICI0NiIsCiAgICAiNDciLAogICAgIjQ4IiwKICAgICI0OSIsCiAgICAiNTAiLAogICAgIjUxIiwKICAgICI1MiIsCiAgICAiNTMiLAogICAgIjU0IiwKICAgICI1NSIsCiAgICAiNTYiLAogICAgIjU3IiwKICAgICI1OCIsCiAgICAiNTkiLAogICAgIjYwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcHJhdGVla21lZGlhL25ldHNwZWVkc2ltcGxpZmllZCIsCiAgInV1aWQiOiAibmV0c3BlZWRzaW1wbGlmaWVkQHByYXRlZWttZWRpYS5leHRlbnNpb24iLAogICJ2ZXJzaW9uIjogMjcKfQ=="}, "40": {"version": "27", "sha256": "1g2jk200v8fyl1f0yrw98jsvr3ymhmd3glq6min4lx531j80r948", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTmV0IFNwZWVkIGV4dGVuc2lvbiBXaXRoIExvYWRzIG9mIEN1c3RvbWl6YXRpb24uIEZvcmsgb2Ygc2ltcGxlbmV0c3BlZWQgXG4gXG5XaGF0J3MgbmV3XG5cdTI2MWUgQWRkIExpbWl0IFVuaXQgb3B0aW9uIFxuXHUyNjFlIFRlc3RlZCBvbiBHTk9NRSA0MCwgMy4zOCBhbmQgMy4zNiBcblx1MjYxZSBGaXggYSBidWcgd2hlcmUgcmVmcmVzaCB0aW1lIHdhcyBnZXR0aW5nIHJlc2V0IHRvIDYuNSBcblx1MjYxZSBVc2VkIE1pbiBXaWR0aCAzLjAgYnkgZGVmYXVsdCBcbiBcbkZlYXR1cmVzIFxuMS4gQ2xlYW5lciBVSSBcbjIuIEFkanVzdGFibGUgUmVmcmVzaCByYXRlIFxuMy4gUHJlZmVyZW5jZXMgdG8gbWFuYWdlIGV4dGVuc2lvbiBcbjQuIFZlcnRpY2FsIEFsaWdubWVudCBTdXBwb3J0IFxuNS4gVHdvIEljb24gc2V0cyBmb3IgSW5kaWNhdG9ycyBcblxuIEZlYXR1cmUgSGlnaGxpZ2h0cyBmb3IgUHJlZmVyZW5jZXMgXG4xLiBMb2NrIE1vdXNlIEFjdGlvbnMgYnV0dG9uIHRvIEZyZWV6ZSBNb3VzZSBFdmVudHMgXG4yLiBBZHZhbmNlIFBvc2l0aW9uIG9wdGlvbnMgdG8gcGlucG9pbnQgd2hlcmUgdG8gcGxhY2UgdGhlIGluZGljYXRvciBvbiB0aGUgUGFuZWwuIFxuMy4gUmVmcmVzaCB0aW1lIG9wdGlvbiBieSB3aGljaCB5b3UgY2FuIGNoYW5nZSByZWZyZXNoIHJhdGUgdmFsdWUgYmV0d2VlbiAxLjAgc2VjIHRvIDEwLjAgc2VjLiBcblxuTW9kZXMgXG4tIFRvdGFsIG5ldCBzcGVlZCBpbiBiaXRzIHBlciBzZWNvbmQgXG4tIFRvdGFsIG5ldCBzcGVlZCBpbiBCeXRlcyBwZXIgc2Vjb25kIFxuLSBVcCBhbmQgZG93biBzcGVlZCBpbiBiaXRzIHBlciBzZWNvbmQgXG4tIFVwIGFuZCBkb3duIHNwZWVkIGluIEJ5dGVzIHBlciBzZWNvbmQgXG4tIFRvdGFsIG9mIGRvd25sb2FkZWQgaW4gQnl0ZXMgKFJpZ2h0IGNsaWNrIHRvIHJlc2V0IGNvdW50ZXIpIFxuXG5Nb3VzZSBFdmVudHMgXG4tIExlZnQgY2xpY2sgdG8gY2hhbmdlIG1vZGVzIFxuLSBSaWdodCBjbGljayB0byB0b2dnbGUgdG90YWwgZGF0YSB1c2FnZSB2aXNpYmlsaXR5IFxuLSBSaWdodCBjbGljayBjb250aW51b3VzbHkgZm9yIDQgdGltZXMgaW4gYW55IG1vZGUgdG8gdG9nZ2xlIHZlcnRpY2FsIGFsaWdubWVudCBcbi0gTWlkZGxlIGNsaWNrIHRvIGNoYW5nZSBmb250IHNpemUiLAogICJuYW1lIjogIk5ldCBzcGVlZCBTaW1wbGlmaWVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIsCiAgICAiNDQiLAogICAgIjQ1IiwKICAgICI0NiIsCiAgICAiNDciLAogICAgIjQ4IiwKICAgICI0OSIsCiAgICAiNTAiLAogICAgIjUxIiwKICAgICI1MiIsCiAgICAiNTMiLAogICAgIjU0IiwKICAgICI1NSIsCiAgICAiNTYiLAogICAgIjU3IiwKICAgICI1OCIsCiAgICAiNTkiLAogICAgIjYwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcHJhdGVla21lZGlhL25ldHNwZWVkc2ltcGxpZmllZCIsCiAgInV1aWQiOiAibmV0c3BlZWRzaW1wbGlmaWVkQHByYXRlZWttZWRpYS5leHRlbnNpb24iLAogICJ2ZXJzaW9uIjogMjcKfQ=="}}}
+, {"uuid": "netspeedsimplified@prateekmedia.extension", "name": "Net speed Simplified", "pname": "net-speed-simplified", "description": "A Net Speed extension With Loads of Customization. Fork of simplenetspeed \n \nWhat's new\n☞ Add Use System Color Scheme option \n☞ Update Preferences logic \n☞ Filter more devices for net speed indicator \n\nFull CHANGELOG can be found on github releases page \n\nFeatures \n1. Clean UI \n2. Adjustable Refresh rate \n3. Preferences to manage extension \n4. Vertical Alignment Support \n5. Two Icon sets for Indicators \n\nFeature Highlights for Preferences \n1. Lock Mouse Actions option \n2. Advance Position options to pinpoint where to place the indicator on the Panel. \n3. Refresh time option by which you can change refresh rate value between 1.0 sec to 10.0 sec. \n4. Show Upload First option to show upload speed first \n5. Color Customizations for speed indicators \n6. Hide when Disconnected option \n7. Use Shorten Units option \n8. Limit Unit option and more... \n\nModes \n- Total net speed in b/s, kb/s, ... \n- Total net speed in B/s, KB/s, ... \n- Up & down speed in b/s, kb/s, ... \n- Up & down speed in B/s, KB/s, ... \n- Total downloads in B, KB, ... (Right click to reset counter) \n\nMouse Events \n- Left click to change modes \n- Right click(in 1-4 modes): Toggle the visibility of total loaded. \n- Right click(in 5th mode): Reset total downloaded. \n- Right Click(Four consecutive times): Toggle through horizontal/vertical alignment. \n- Middle click: Cycle through the font sizes.", "link": "https://extensions.gnome.org/extension/3724/net-speed-simplified/", "shell_version_map": {"38": {"version": "32", "sha256": "0b9g0p93pp6pnrvmz6r2hga3w8i2p6ld26f377baabzw4xsc4ad5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTmV0IFNwZWVkIGV4dGVuc2lvbiBXaXRoIExvYWRzIG9mIEN1c3RvbWl6YXRpb24uIEZvcmsgb2Ygc2ltcGxlbmV0c3BlZWQgXG4gXG5XaGF0J3MgbmV3XG5cdTI2MWUgQWRkIFVzZSBTeXN0ZW0gQ29sb3IgU2NoZW1lIG9wdGlvbiBcblx1MjYxZSBVcGRhdGUgUHJlZmVyZW5jZXMgbG9naWMgXG5cdTI2MWUgRmlsdGVyIG1vcmUgZGV2aWNlcyBmb3IgbmV0IHNwZWVkIGluZGljYXRvciBcblxuRnVsbCBDSEFOR0VMT0cgY2FuIGJlIGZvdW5kIG9uIGdpdGh1YiByZWxlYXNlcyBwYWdlIFxuXG5GZWF0dXJlcyBcbjEuIENsZWFuIFVJIFxuMi4gQWRqdXN0YWJsZSBSZWZyZXNoIHJhdGUgXG4zLiBQcmVmZXJlbmNlcyB0byBtYW5hZ2UgZXh0ZW5zaW9uIFxuNC4gVmVydGljYWwgQWxpZ25tZW50IFN1cHBvcnQgXG41LiBUd28gSWNvbiBzZXRzIGZvciBJbmRpY2F0b3JzIFxuXG5GZWF0dXJlIEhpZ2hsaWdodHMgZm9yIFByZWZlcmVuY2VzIFxuMS4gTG9jayBNb3VzZSBBY3Rpb25zIG9wdGlvbiBcbjIuIEFkdmFuY2UgUG9zaXRpb24gb3B0aW9ucyB0byBwaW5wb2ludCB3aGVyZSB0byBwbGFjZSB0aGUgaW5kaWNhdG9yIG9uIHRoZSBQYW5lbC4gXG4zLiBSZWZyZXNoIHRpbWUgb3B0aW9uIGJ5IHdoaWNoIHlvdSBjYW4gY2hhbmdlIHJlZnJlc2ggcmF0ZSB2YWx1ZSBiZXR3ZWVuIDEuMCBzZWMgdG8gMTAuMCBzZWMuIFxuNC4gU2hvdyBVcGxvYWQgRmlyc3Qgb3B0aW9uIHRvIHNob3cgdXBsb2FkIHNwZWVkIGZpcnN0IFxuNS4gQ29sb3IgQ3VzdG9taXphdGlvbnMgZm9yIHNwZWVkIGluZGljYXRvcnMgXG42LiBIaWRlIHdoZW4gRGlzY29ubmVjdGVkIG9wdGlvbiBcbjcuIFVzZSBTaG9ydGVuIFVuaXRzIG9wdGlvbiBcbjguIExpbWl0IFVuaXQgb3B0aW9uIGFuZCBtb3JlLi4uIFxuXG5Nb2RlcyBcbi0gVG90YWwgbmV0IHNwZWVkIGluIGIvcywga2IvcywgLi4uIFxuLSBUb3RhbCBuZXQgc3BlZWQgaW4gQi9zLCBLQi9zLCAuLi4gXG4tIFVwICYgZG93biBzcGVlZCBpbiBiL3MsIGtiL3MsIC4uLiBcbi0gVXAgJiBkb3duIHNwZWVkIGluIEIvcywgS0IvcywgLi4uIFxuLSBUb3RhbCBkb3dubG9hZHMgaW4gQiwgS0IsIC4uLiAoUmlnaHQgY2xpY2sgdG8gcmVzZXQgY291bnRlcikgXG5cbk1vdXNlIEV2ZW50cyBcbi0gTGVmdCBjbGljayB0byBjaGFuZ2UgbW9kZXMgXG4tIFJpZ2h0IGNsaWNrKGluIDEtNCBtb2Rlcyk6IFRvZ2dsZSB0aGUgdmlzaWJpbGl0eSBvZiB0b3RhbCBsb2FkZWQuIFxuLSBSaWdodCBjbGljayhpbiA1dGggbW9kZSk6IFJlc2V0IHRvdGFsIGRvd25sb2FkZWQuIFxuLSBSaWdodCBDbGljayhGb3VyIGNvbnNlY3V0aXZlIHRpbWVzKTogVG9nZ2xlIHRocm91Z2ggaG9yaXpvbnRhbC92ZXJ0aWNhbCBhbGlnbm1lbnQuIFxuLSBNaWRkbGUgY2xpY2s6IEN5Y2xlIHRocm91Z2ggdGhlIGZvbnQgc2l6ZXMuIiwKICAibmFtZSI6ICJOZXQgc3BlZWQgU2ltcGxpZmllZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcHJhdGVla21lZGlhL25ldHNwZWVkc2ltcGxpZmllZCIsCiAgInV1aWQiOiAibmV0c3BlZWRzaW1wbGlmaWVkQHByYXRlZWttZWRpYS5leHRlbnNpb24iLAogICJ2ZXJzaW9uIjogMzIKfQ=="}, "40": {"version": "32", "sha256": "0b9g0p93pp6pnrvmz6r2hga3w8i2p6ld26f377baabzw4xsc4ad5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTmV0IFNwZWVkIGV4dGVuc2lvbiBXaXRoIExvYWRzIG9mIEN1c3RvbWl6YXRpb24uIEZvcmsgb2Ygc2ltcGxlbmV0c3BlZWQgXG4gXG5XaGF0J3MgbmV3XG5cdTI2MWUgQWRkIFVzZSBTeXN0ZW0gQ29sb3IgU2NoZW1lIG9wdGlvbiBcblx1MjYxZSBVcGRhdGUgUHJlZmVyZW5jZXMgbG9naWMgXG5cdTI2MWUgRmlsdGVyIG1vcmUgZGV2aWNlcyBmb3IgbmV0IHNwZWVkIGluZGljYXRvciBcblxuRnVsbCBDSEFOR0VMT0cgY2FuIGJlIGZvdW5kIG9uIGdpdGh1YiByZWxlYXNlcyBwYWdlIFxuXG5GZWF0dXJlcyBcbjEuIENsZWFuIFVJIFxuMi4gQWRqdXN0YWJsZSBSZWZyZXNoIHJhdGUgXG4zLiBQcmVmZXJlbmNlcyB0byBtYW5hZ2UgZXh0ZW5zaW9uIFxuNC4gVmVydGljYWwgQWxpZ25tZW50IFN1cHBvcnQgXG41LiBUd28gSWNvbiBzZXRzIGZvciBJbmRpY2F0b3JzIFxuXG5GZWF0dXJlIEhpZ2hsaWdodHMgZm9yIFByZWZlcmVuY2VzIFxuMS4gTG9jayBNb3VzZSBBY3Rpb25zIG9wdGlvbiBcbjIuIEFkdmFuY2UgUG9zaXRpb24gb3B0aW9ucyB0byBwaW5wb2ludCB3aGVyZSB0byBwbGFjZSB0aGUgaW5kaWNhdG9yIG9uIHRoZSBQYW5lbC4gXG4zLiBSZWZyZXNoIHRpbWUgb3B0aW9uIGJ5IHdoaWNoIHlvdSBjYW4gY2hhbmdlIHJlZnJlc2ggcmF0ZSB2YWx1ZSBiZXR3ZWVuIDEuMCBzZWMgdG8gMTAuMCBzZWMuIFxuNC4gU2hvdyBVcGxvYWQgRmlyc3Qgb3B0aW9uIHRvIHNob3cgdXBsb2FkIHNwZWVkIGZpcnN0IFxuNS4gQ29sb3IgQ3VzdG9taXphdGlvbnMgZm9yIHNwZWVkIGluZGljYXRvcnMgXG42LiBIaWRlIHdoZW4gRGlzY29ubmVjdGVkIG9wdGlvbiBcbjcuIFVzZSBTaG9ydGVuIFVuaXRzIG9wdGlvbiBcbjguIExpbWl0IFVuaXQgb3B0aW9uIGFuZCBtb3JlLi4uIFxuXG5Nb2RlcyBcbi0gVG90YWwgbmV0IHNwZWVkIGluIGIvcywga2IvcywgLi4uIFxuLSBUb3RhbCBuZXQgc3BlZWQgaW4gQi9zLCBLQi9zLCAuLi4gXG4tIFVwICYgZG93biBzcGVlZCBpbiBiL3MsIGtiL3MsIC4uLiBcbi0gVXAgJiBkb3duIHNwZWVkIGluIEIvcywgS0IvcywgLi4uIFxuLSBUb3RhbCBkb3dubG9hZHMgaW4gQiwgS0IsIC4uLiAoUmlnaHQgY2xpY2sgdG8gcmVzZXQgY291bnRlcikgXG5cbk1vdXNlIEV2ZW50cyBcbi0gTGVmdCBjbGljayB0byBjaGFuZ2UgbW9kZXMgXG4tIFJpZ2h0IGNsaWNrKGluIDEtNCBtb2Rlcyk6IFRvZ2dsZSB0aGUgdmlzaWJpbGl0eSBvZiB0b3RhbCBsb2FkZWQuIFxuLSBSaWdodCBjbGljayhpbiA1dGggbW9kZSk6IFJlc2V0IHRvdGFsIGRvd25sb2FkZWQuIFxuLSBSaWdodCBDbGljayhGb3VyIGNvbnNlY3V0aXZlIHRpbWVzKTogVG9nZ2xlIHRocm91Z2ggaG9yaXpvbnRhbC92ZXJ0aWNhbCBhbGlnbm1lbnQuIFxuLSBNaWRkbGUgY2xpY2s6IEN5Y2xlIHRocm91Z2ggdGhlIGZvbnQgc2l6ZXMuIiwKICAibmFtZSI6ICJOZXQgc3BlZWQgU2ltcGxpZmllZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcHJhdGVla21lZGlhL25ldHNwZWVkc2ltcGxpZmllZCIsCiAgInV1aWQiOiAibmV0c3BlZWRzaW1wbGlmaWVkQHByYXRlZWttZWRpYS5leHRlbnNpb24iLAogICJ2ZXJzaW9uIjogMzIKfQ=="}}}
 , {"uuid": "cpupower-governors@icar.github.com", "name": "CPU Power Governor", "pname": "cpu-power-governor", "description": "Enables the ability to swap between kernel governors for the CPU useful for laptops.\n\nRequires: polkit, cpupower\nGithub: https://github.com/juxuanu/cpupower-governors", "link": "https://extensions.gnome.org/extension/3727/cpu-power-governor/", "shell_version_map": {"38": {"version": "2", "sha256": "1hb239w4cpz6yzs3pzd3hhrwswh6w5c5xw6dqn57m26cazh843qk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgdGhlIGFiaWxpdHkgdG8gc3dhcCBiZXR3ZWVuIGtlcm5lbCBnb3Zlcm5vcnMgZm9yIHRoZSBDUFUgdXNlZnVsIGZvciBsYXB0b3BzLlxuXG5SZXF1aXJlczogcG9sa2l0LCBjcHVwb3dlclxuR2l0aHViOiBodHRwczovL2dpdGh1Yi5jb20vanV4dWFudS9jcHVwb3dlci1nb3Zlcm5vcnMiLAogICJuYW1lIjogIkNQVSBQb3dlciBHb3Zlcm5vciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJjcHVwb3dlci1nb3Zlcm5vcnNAaWNhci5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "floating-dock@nandoferreira_prof@hotmail.com", "name": "Floating Dock", "pname": "floating-dock", "description": "A Custom dash to 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": "1fsbj9v1j483x1dl40bbrfl88d2m00mryrl05s67cjd4mak5dm8z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgQ3VzdG9tIGRhc2ggdG8gZG9jayBmb3JrLCBub3cgeW91IGNhbiBjaGFuZ2UgdGhlIG1hcmdpbiBhbmQgYm9yZGVyIHJhZGl1cyBvZiB0aGUgZG9jay4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmbG9hdGluZ2RvY2siLAogICJuYW1lIjogIkZsb2F0aW5nIERvY2siLAogICJvcmlnaW5hbC1hdXRob3IiOiAibmFuZG9mZXJyZWlyYV9wcm9mQGhvdG1haWwuY29tIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZmVyLW1vcmVpcmEvZmxvYXRpbmctZG9jayIsCiAgInV1aWQiOiAiZmxvYXRpbmctZG9ja0BuYW5kb2ZlcnJlaXJhX3Byb2ZAaG90bWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
-, {"uuid": "tiling-assistant@leleat-on-github", "name": "Tiling Assistant", "pname": "tiling-assistant", "description": "An extension which adds a Windows-like snap assist to GNOME. It also expands GNOME's 2 column tiling design and adds more features. Check out the settings on how use this extension or on how to get help.", "link": "https://extensions.gnome.org/extension/3733/tiling-assistant/", "shell_version_map": {"38": {"version": "20", "sha256": "09l1qhzqndjfaq8j5028pisw7qkhqv2f4qbz579q3s2snsknixxq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGV4dGVuc2lvbiB3aGljaCBhZGRzIGEgV2luZG93cy1saWtlIHNuYXAgYXNzaXN0IHRvIEdOT01FLiBJdCBhbHNvIGV4cGFuZHMgR05PTUUncyAyIGNvbHVtbiB0aWxpbmcgZGVzaWduIGFuZCBhZGRzIG1vcmUgZmVhdHVyZXMuIENoZWNrIG91dCB0aGUgc2V0dGluZ3Mgb24gaG93IHVzZSB0aGlzIGV4dGVuc2lvbiBvciBvbiBob3cgdG8gZ2V0IGhlbHAuIiwKICAibmFtZSI6ICJUaWxpbmcgQXNzaXN0YW50IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0xlbGVhdC9UaWxpbmctQXNzaXN0YW50IiwKICAidXVpZCI6ICJ0aWxpbmctYXNzaXN0YW50QGxlbGVhdC1vbi1naXRodWIiLAogICJ2ZXJzaW9uIjogMjAKfQ=="}, "40": {"version": "20", "sha256": "09l1qhzqndjfaq8j5028pisw7qkhqv2f4qbz579q3s2snsknixxq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGV4dGVuc2lvbiB3aGljaCBhZGRzIGEgV2luZG93cy1saWtlIHNuYXAgYXNzaXN0IHRvIEdOT01FLiBJdCBhbHNvIGV4cGFuZHMgR05PTUUncyAyIGNvbHVtbiB0aWxpbmcgZGVzaWduIGFuZCBhZGRzIG1vcmUgZmVhdHVyZXMuIENoZWNrIG91dCB0aGUgc2V0dGluZ3Mgb24gaG93IHVzZSB0aGlzIGV4dGVuc2lvbiBvciBvbiBob3cgdG8gZ2V0IGhlbHAuIiwKICAibmFtZSI6ICJUaWxpbmcgQXNzaXN0YW50IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0xlbGVhdC9UaWxpbmctQXNzaXN0YW50IiwKICAidXVpZCI6ICJ0aWxpbmctYXNzaXN0YW50QGxlbGVhdC1vbi1naXRodWIiLAogICJ2ZXJzaW9uIjogMjAKfQ=="}}}
+, {"uuid": "tiling-assistant@leleat-on-github", "name": "Tiling Assistant", "pname": "tiling-assistant", "description": "An extension which adds a Windows-like snap assist to GNOME. It also expands GNOME's 2 column tiling design and adds more features. Check out the settings on how use this extension or on how to get help.", "link": "https://extensions.gnome.org/extension/3733/tiling-assistant/", "shell_version_map": {"38": {"version": "23", "sha256": "04w9qgmldnlimf2975fkxlz8y23gw0l59ja7ymmbiqd57p7ncy1k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGV4dGVuc2lvbiB3aGljaCBhZGRzIGEgV2luZG93cy1saWtlIHNuYXAgYXNzaXN0IHRvIEdOT01FLiBJdCBhbHNvIGV4cGFuZHMgR05PTUUncyAyIGNvbHVtbiB0aWxpbmcgZGVzaWduIGFuZCBhZGRzIG1vcmUgZmVhdHVyZXMuIENoZWNrIG91dCB0aGUgc2V0dGluZ3Mgb24gaG93IHVzZSB0aGlzIGV4dGVuc2lvbiBvciBvbiBob3cgdG8gZ2V0IGhlbHAuIiwKICAibmFtZSI6ICJUaWxpbmcgQXNzaXN0YW50IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9MZWxlYXQvVGlsaW5nLUFzc2lzdGFudCIsCiAgInV1aWQiOiAidGlsaW5nLWFzc2lzdGFudEBsZWxlYXQtb24tZ2l0aHViIiwKICAidmVyc2lvbiI6IDIzCn0="}, "40": {"version": "23", "sha256": "04w9qgmldnlimf2975fkxlz8y23gw0l59ja7ymmbiqd57p7ncy1k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGV4dGVuc2lvbiB3aGljaCBhZGRzIGEgV2luZG93cy1saWtlIHNuYXAgYXNzaXN0IHRvIEdOT01FLiBJdCBhbHNvIGV4cGFuZHMgR05PTUUncyAyIGNvbHVtbiB0aWxpbmcgZGVzaWduIGFuZCBhZGRzIG1vcmUgZmVhdHVyZXMuIENoZWNrIG91dCB0aGUgc2V0dGluZ3Mgb24gaG93IHVzZSB0aGlzIGV4dGVuc2lvbiBvciBvbiBob3cgdG8gZ2V0IGhlbHAuIiwKICAibmFtZSI6ICJUaWxpbmcgQXNzaXN0YW50IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9MZWxlYXQvVGlsaW5nLUFzc2lzdGFudCIsCiAgInV1aWQiOiAidGlsaW5nLWFzc2lzdGFudEBsZWxlYXQtb24tZ2l0aHViIiwKICAidmVyc2lvbiI6IDIzCn0="}}}
 , {"uuid": "airpods-battery-status@ju.wtf", "name": "Airpods Battery status", "pname": "airpods-battery-status", "description": "Show Airpods battery level in top bar\n\n/!\\ See requirements on repository page", "link": "https://extensions.gnome.org/extension/3736/airpods-battery-status/", "shell_version_map": {"38": {"version": "5", "sha256": "0m68va2yh1cs91wb9c1yzdxj9pr3abj5jsx9q05cyiibd2zmbl92", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgQWlycG9kcyBiYXR0ZXJ5IGxldmVsIGluIHRvcCBiYXJcblxuLyFcXCBTZWUgcmVxdWlyZW1lbnRzIG9uIHJlcG9zaXRvcnkgcGFnZSIsCiAgIm5hbWUiOiAiQWlycG9kcyBCYXR0ZXJ5IHN0YXR1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RlbHBoaWtpL2dub21lLWFpcnBvZHMtYmF0dGVyeS1zdGF0dXMiLAogICJ1dWlkIjogImFpcnBvZHMtYmF0dGVyeS1zdGF0dXNAanUud3RmIiwKICAidmVyc2lvbiI6IDUKfQ=="}, "40": {"version": "5", "sha256": "0m68va2yh1cs91wb9c1yzdxj9pr3abj5jsx9q05cyiibd2zmbl92", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgQWlycG9kcyBiYXR0ZXJ5IGxldmVsIGluIHRvcCBiYXJcblxuLyFcXCBTZWUgcmVxdWlyZW1lbnRzIG9uIHJlcG9zaXRvcnkgcGFnZSIsCiAgIm5hbWUiOiAiQWlycG9kcyBCYXR0ZXJ5IHN0YXR1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RlbHBoaWtpL2dub21lLWFpcnBvZHMtYmF0dGVyeS1zdGF0dXMiLAogICJ1dWlkIjogImFpcnBvZHMtYmF0dGVyeS1zdGF0dXNAanUud3RmIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
-, {"uuid": "hue-lights@chlumskyvaclav.gmail.com", "name": "Hue Lights", "pname": "hue-lights", "description": "This extension controls Philips Hue compatible lights using Philips Hue Bridge on your local network.\nIf you 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": "12", "sha256": "16wklxqmc85x9il9ry8p4pwi6cl09k3ssv1pbdzryqr8didh21gk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNvbnRyb2xzIFBoaWxpcHMgSHVlIGNvbXBhdGlibGUgbGlnaHRzIHVzaW5nIFBoaWxpcHMgSHVlIEJyaWRnZSBvbiB5b3VyIGxvY2FsIG5ldHdvcmsuXG5JZiB5b3UgZXhwZXJpZW5jaW5nIGFuIGVycm9yIG9uIHRoZSB1cGdyYWRlLCBwbGVhc2UgbG9nIG91dCBhbmQgbG9nIGluIGFnYWluLiIsCiAgImdldHRleHQtZG9tYWluIjogImh1ZS1saWdodHMiLAogICJuYW1lIjogIkh1ZSBMaWdodHMiLAogICJvcmlnaW5hbC1hdXRob3IiOiAiY2hsdW1za3l2YWNsYXZAZ21haWwuY29tIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ZjaGx1bS9odWUtbGlnaHRzIiwKICAidXVpZCI6ICJodWUtbGlnaHRzQGNobHVtc2t5dmFjbGF2LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "40": {"version": "12", "sha256": "16wklxqmc85x9il9ry8p4pwi6cl09k3ssv1pbdzryqr8didh21gk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNvbnRyb2xzIFBoaWxpcHMgSHVlIGNvbXBhdGlibGUgbGlnaHRzIHVzaW5nIFBoaWxpcHMgSHVlIEJyaWRnZSBvbiB5b3VyIGxvY2FsIG5ldHdvcmsuXG5JZiB5b3UgZXhwZXJpZW5jaW5nIGFuIGVycm9yIG9uIHRoZSB1cGdyYWRlLCBwbGVhc2UgbG9nIG91dCBhbmQgbG9nIGluIGFnYWluLiIsCiAgImdldHRleHQtZG9tYWluIjogImh1ZS1saWdodHMiLAogICJuYW1lIjogIkh1ZSBMaWdodHMiLAogICJvcmlnaW5hbC1hdXRob3IiOiAiY2hsdW1za3l2YWNsYXZAZ21haWwuY29tIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ZjaGx1bS9odWUtbGlnaHRzIiwKICAidXVpZCI6ICJodWUtbGlnaHRzQGNobHVtc2t5dmFjbGF2LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}}}
+, {"uuid": "hue-lights@chlumskyvaclav.gmail.com", "name": "Hue Lights", "pname": "hue-lights", "description": "This extension controls Philips Hue compatible lights using Philips Hue Bridge on your local network. 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": "13", "sha256": "0iwg3nbgnd7zzaa464l01bi40gqh4s725c882ica76qp0gj3ki8x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNvbnRyb2xzIFBoaWxpcHMgSHVlIGNvbXBhdGlibGUgbGlnaHRzIHVzaW5nIFBoaWxpcHMgSHVlIEJyaWRnZSBvbiB5b3VyIGxvY2FsIG5ldHdvcmsuIElmIHlvdSBhcmUgZXhwZXJpZW5jaW5nIGFuIGVycm9yIG9uIHRoZSB1cGdyYWRlLCBwbGVhc2UgbG9nIG91dCBhbmQgbG9nIGluIGFnYWluLiIsCiAgImdldHRleHQtZG9tYWluIjogImh1ZS1saWdodHMiLAogICJuYW1lIjogIkh1ZSBMaWdodHMiLAogICJvcmlnaW5hbC1hdXRob3IiOiAiY2hsdW1za3l2YWNsYXZAZ21haWwuY29tIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ZjaGx1bS9odWUtbGlnaHRzIiwKICAidXVpZCI6ICJodWUtbGlnaHRzQGNobHVtc2t5dmFjbGF2LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMwp9"}, "40": {"version": "13", "sha256": "0iwg3nbgnd7zzaa464l01bi40gqh4s725c882ica76qp0gj3ki8x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNvbnRyb2xzIFBoaWxpcHMgSHVlIGNvbXBhdGlibGUgbGlnaHRzIHVzaW5nIFBoaWxpcHMgSHVlIEJyaWRnZSBvbiB5b3VyIGxvY2FsIG5ldHdvcmsuIElmIHlvdSBhcmUgZXhwZXJpZW5jaW5nIGFuIGVycm9yIG9uIHRoZSB1cGdyYWRlLCBwbGVhc2UgbG9nIG91dCBhbmQgbG9nIGluIGFnYWluLiIsCiAgImdldHRleHQtZG9tYWluIjogImh1ZS1saWdodHMiLAogICJuYW1lIjogIkh1ZSBMaWdodHMiLAogICJvcmlnaW5hbC1hdXRob3IiOiAiY2hsdW1za3l2YWNsYXZAZ21haWwuY29tIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ZjaGx1bS9odWUtbGlnaHRzIiwKICAidXVpZCI6ICJodWUtbGlnaHRzQGNobHVtc2t5dmFjbGF2LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMwp9"}}}
 , {"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": "9", "sha256": "1nw527afjrw8bqjrgbj99klcq9x6755iz2frkzsc5mn8pmcd3y73", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hZ2ljIGxhbXAgZWZmZWN0IGluc3BpcmVkIGJ5IHRoZSBDb21waXogb25lc1xuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKSIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIG1hZ2ljIGxhbXAgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hlcm1lczgzL2NvbXBpei1hbGlrZS1tYWdpYy1sYW1wLWVmZmVjdCIsCiAgInV1aWQiOiAiY29tcGl6LWFsaWtlLW1hZ2ljLWxhbXAtZWZmZWN0QGhlcm1lczgzLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogOQp9"}, "40": {"version": "9", "sha256": "1nw527afjrw8bqjrgbj99klcq9x6755iz2frkzsc5mn8pmcd3y73", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hZ2ljIGxhbXAgZWZmZWN0IGluc3BpcmVkIGJ5IHRoZSBDb21waXogb25lc1xuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKSIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIG1hZ2ljIGxhbXAgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hlcm1lczgzL2NvbXBpei1hbGlrZS1tYWdpYy1sYW1wLWVmZmVjdCIsCiAgInV1aWQiOiAiY29tcGl6LWFsaWtlLW1hZ2ljLWxhbXAtZWZmZWN0QGhlcm1lczgzLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogOQp9"}}}
 , {"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": "2", "sha256": "0k1q3b0x83ygjlysp39pv2i076zrhsxdlzf7yg3dq76nk98q3l2n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIGFsbCB0aGUgd2luZG93cyBpbiB0aGUgb3ZlcnZpZXcgdGhlIHNhbWUgaGVpZ2h0IGFuZCBvcmRlcnMgdGhlbSBieSBsYXN0IHJlY2VudCB1c2VkLiIsCiAgIm5hbWUiOiAiQ2xlYW5lciBPdmVydmlldyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nb256YWFyY3IvdG91Y2hwYWQtd2luZG93LXN3aXRjaGVyLWdub21lLWV4dC9ibG9iL21hc3Rlci90b3VjaHBhZF93aW5kb3dfc3dpdGNoZXIlNDBnb256YS5jb20vb3ZlcnZpZXdDbGVhbmVyLmpzIiwKICAidXVpZCI6ICJvdmVydmlld19jbGVhbmVyQGdvbnphLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "0k1q3b0x83ygjlysp39pv2i076zrhsxdlzf7yg3dq76nk98q3l2n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIGFsbCB0aGUgd2luZG93cyBpbiB0aGUgb3ZlcnZpZXcgdGhlIHNhbWUgaGVpZ2h0IGFuZCBvcmRlcnMgdGhlbSBieSBsYXN0IHJlY2VudCB1c2VkLiIsCiAgIm5hbWUiOiAiQ2xlYW5lciBPdmVydmlldyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nb256YWFyY3IvdG91Y2hwYWQtd2luZG93LXN3aXRjaGVyLWdub21lLWV4dC9ibG9iL21hc3Rlci90b3VjaHBhZF93aW5kb3dfc3dpdGNoZXIlNDBnb256YS5jb20vb3ZlcnZpZXdDbGVhbmVyLmpzIiwKICAidXVpZCI6ICJvdmVydmlld19jbGVhbmVyQGdvbnphLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "distinct@sireliah.com", "name": "Distinct Windows", "pname": "distinct-windows", "description": "Visually differentiate windows with colors and symbols", "link": "https://extensions.gnome.org/extension/3769/distinct-windows/", "shell_version_map": {"38": {"version": "4", "sha256": "1iqga92l9mk3ykf8bdy9igvqfx9k78jasdmqsrrz9zcz33d7k4h7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZpc3VhbGx5IGRpZmZlcmVudGlhdGUgd2luZG93cyB3aXRoIGNvbG9ycyBhbmQgc3ltYm9scyIsCiAgIm5hbWUiOiAiRGlzdGluY3QgV2luZG93cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NpcmVsaWFoL2Rpc3RpbmN0LXdpbmRvd3MiLAogICJ1dWlkIjogImRpc3RpbmN0QHNpcmVsaWFoLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "miniCal2@breiq", "name": "Minimalist Calendar 2", "pname": "minimalist-calendar-2", "description": "Remove event list and clock/calendar app buttons from the calendar window.", "link": "https://extensions.gnome.org/extension/3775/minimalist-calendar-2/", "shell_version_map": {"38": {"version": "1", "sha256": "1nh10ik3zk3r4jr31mr8nw8nnamgj3mk1f3im06657wv18x9wvam", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSBldmVudCBsaXN0IGFuZCBjbG9jay9jYWxlbmRhciBhcHAgYnV0dG9ucyBmcm9tIHRoZSBjYWxlbmRhciB3aW5kb3cuIiwKICAibmFtZSI6ICJNaW5pbWFsaXN0IENhbGVuZGFyIDIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAibWluaUNhbDJAYnJlaXEiLAogICJ2ZXJzaW9uIjogMQp9"}}}
-, {"uuid": "ddterm@amezin.github.com", "name": "ddterm", "pname": "ddterm", "description": "Another drop down terminal extension for GNOME Shell. With tabs. Works on Wayland natively.\n\nPlease use GitHub (\"Extension Homepage\") to report issues or request features.", "link": "https://extensions.gnome.org/extension/3780/ddterm/", "shell_version_map": {"38": {"version": "16", "sha256": "1csn3x3ffm828469lgnm7imxa70zhjhndqmvvchjkx6iyjx4kjkc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZHJvcCBkb3duIHRlcm1pbmFsIGV4dGVuc2lvbiBmb3IgR05PTUUgU2hlbGwuIFdpdGggdGFicy4gV29ya3Mgb24gV2F5bGFuZCBuYXRpdmVseS5cblxuUGxlYXNlIHVzZSBHaXRIdWIgKFwiRXh0ZW5zaW9uIEhvbWVwYWdlXCIpIHRvIHJlcG9ydCBpc3N1ZXMgb3IgcmVxdWVzdCBmZWF0dXJlcy4iLAogICJuYW1lIjogImRkdGVybSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJjb20uZ2l0aHViLmFtZXppbi5kZHRlcm0iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYW1lemluL2dub21lLXNoZWxsLWV4dGVuc2lvbi1kZHRlcm0iLAogICJ1dWlkIjogImRkdGVybUBhbWV6aW4uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxNgp9"}, "40": {"version": "16", "sha256": "1csn3x3ffm828469lgnm7imxa70zhjhndqmvvchjkx6iyjx4kjkc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZHJvcCBkb3duIHRlcm1pbmFsIGV4dGVuc2lvbiBmb3IgR05PTUUgU2hlbGwuIFdpdGggdGFicy4gV29ya3Mgb24gV2F5bGFuZCBuYXRpdmVseS5cblxuUGxlYXNlIHVzZSBHaXRIdWIgKFwiRXh0ZW5zaW9uIEhvbWVwYWdlXCIpIHRvIHJlcG9ydCBpc3N1ZXMgb3IgcmVxdWVzdCBmZWF0dXJlcy4iLAogICJuYW1lIjogImRkdGVybSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJjb20uZ2l0aHViLmFtZXppbi5kZHRlcm0iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYW1lemluL2dub21lLXNoZWxsLWV4dGVuc2lvbi1kZHRlcm0iLAogICJ1dWlkIjogImRkdGVybUBhbWV6aW4uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxNgp9"}}}
+, {"uuid": "ddterm@amezin.github.com", "name": "ddterm", "pname": "ddterm", "description": "Another drop down terminal extension for GNOME Shell. With tabs. Works on Wayland natively", "link": "https://extensions.gnome.org/extension/3780/ddterm/", "shell_version_map": {"38": {"version": "20", "sha256": "0n12069m1aza96i0k4i0n6k7pwqsz794wl8f9f0xxgs8v1r5yh6v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZHJvcCBkb3duIHRlcm1pbmFsIGV4dGVuc2lvbiBmb3IgR05PTUUgU2hlbGwuIFdpdGggdGFicy4gV29ya3Mgb24gV2F5bGFuZCBuYXRpdmVseSIsCiAgIm5hbWUiOiAiZGR0ZXJtIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogImNvbS5naXRodWIuYW1lemluLmRkdGVybSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbWV6aW4vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWRkdGVybSIsCiAgInV1aWQiOiAiZGR0ZXJtQGFtZXppbi5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIwCn0="}, "40": {"version": "20", "sha256": "0n12069m1aza96i0k4i0n6k7pwqsz794wl8f9f0xxgs8v1r5yh6v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZHJvcCBkb3duIHRlcm1pbmFsIGV4dGVuc2lvbiBmb3IgR05PTUUgU2hlbGwuIFdpdGggdGFicy4gV29ya3Mgb24gV2F5bGFuZCBuYXRpdmVseSIsCiAgIm5hbWUiOiAiZGR0ZXJtIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogImNvbS5naXRodWIuYW1lemluLmRkdGVybSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbWV6aW4vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWRkdGVybSIsCiAgInV1aWQiOiAiZGR0ZXJtQGFtZXppbi5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIwCn0="}}}
 , {"uuid": "favorites-only-dash@nahuelwexd.github.io", "name": "Favorites-only Dash", "pname": "favorites-only-dash", "description": "Show only favorite apps on Dash", "link": "https://extensions.gnome.org/extension/3789/favorites-only-dash/", "shell_version_map": {"38": {"version": "1", "sha256": "110h019563j33gksaq5fs0z71sz1mslq1sbsmhk9mj3qggd9vs65", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgb25seSBmYXZvcml0ZSBhcHBzIG9uIERhc2giLAogICJuYW1lIjogIkZhdm9yaXRlcy1vbmx5IERhc2giLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiZmF2b3JpdGVzLW9ubHktZGFzaEBuYWh1ZWx3ZXhkLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxCn0="}}}
-, {"uuid": "notification-timeout@chlumskyvaclav.gmail.com", "name": "Notification Timeout", "pname": "notification-timeout", "description": "This extension allows configuring the same timeout for all notifications. It also allows ignoring the idle state.", "link": "https://extensions.gnome.org/extension/3795/notification-timeout/", "shell_version_map": {"38": {"version": "2", "sha256": "160cavym08xkvyvfgmch56pckd6h6lv9pf2lnm40xw0mgj0a8ad7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGFsbG93cyBjb25maWd1cmluZyB0aGUgc2FtZSB0aW1lb3V0IGZvciBhbGwgbm90aWZpY2F0aW9ucy4gSXQgYWxzbyBhbGxvd3MgaWdub3JpbmcgdGhlIGlkbGUgc3RhdGUuIiwKICAibmFtZSI6ICJOb3RpZmljYXRpb24gVGltZW91dCIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJjaGx1bXNreXZhY2xhdkBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vbm90aWZpY2F0aW9uLXRpbWVvdXQiLAogICJ1dWlkIjogIm5vdGlmaWNhdGlvbi10aW1lb3V0QGNobHVtc2t5dmFjbGF2LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}}}
+, {"uuid": "notification-timeout@chlumskyvaclav.gmail.com", "name": "Notification Timeout", "pname": "notification-timeout", "description": "This extension allows configuring the same timeout for all notifications. It also allows ignoring the idle state.", "link": "https://extensions.gnome.org/extension/3795/notification-timeout/", "shell_version_map": {"38": {"version": "3", "sha256": "16cpl12jk90pw8nyvzara6fhb3jfiivf2qnvnsnrd237sjz344yw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGFsbG93cyBjb25maWd1cmluZyB0aGUgc2FtZSB0aW1lb3V0IGZvciBhbGwgbm90aWZpY2F0aW9ucy4gSXQgYWxzbyBhbGxvd3MgaWdub3JpbmcgdGhlIGlkbGUgc3RhdGUuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibm90aWZpY2F0aW9uLXRpbWVvdXQiLAogICJuYW1lIjogIk5vdGlmaWNhdGlvbiBUaW1lb3V0IiwKICAib3JpZ2luYWwtYXV0aG9yIjogImNobHVtc2t5dmFjbGF2QGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vbm90aWZpY2F0aW9uLXRpbWVvdXQiLAogICJ1dWlkIjogIm5vdGlmaWNhdGlvbi10aW1lb3V0QGNobHVtc2t5dmFjbGF2LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "3", "sha256": "16cpl12jk90pw8nyvzara6fhb3jfiivf2qnvnsnrd237sjz344yw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGFsbG93cyBjb25maWd1cmluZyB0aGUgc2FtZSB0aW1lb3V0IGZvciBhbGwgbm90aWZpY2F0aW9ucy4gSXQgYWxzbyBhbGxvd3MgaWdub3JpbmcgdGhlIGlkbGUgc3RhdGUuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibm90aWZpY2F0aW9uLXRpbWVvdXQiLAogICJuYW1lIjogIk5vdGlmaWNhdGlvbiBUaW1lb3V0IiwKICAib3JpZ2luYWwtYXV0aG9yIjogImNobHVtc2t5dmFjbGF2QGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vbm90aWZpY2F0aW9uLXRpbWVvdXQiLAogICJ1dWlkIjogIm5vdGlmaWNhdGlvbi10aW1lb3V0QGNobHVtc2t5dmFjbGF2LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"uuid": "podman-as-docker@alberto.yomerengues.xyz", "name": "Podman and Docker", "pname": "podman-as-docker", "description": "podman extension as docker\nIn order to get it work on podman, you just need to create an alias\nSimply put: alias docker=podman\nand install podman-docker", "link": "https://extensions.gnome.org/extension/3799/podman-as-docker/", "shell_version_map": {"38": {"version": "1", "sha256": "18bkd6z5hm6zidh7xv8v3jvj36lmxzx4dar7nwa7nq3p51km6crz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInBvZG1hbiBleHRlbnNpb24gYXMgZG9ja2VyXG5JbiBvcmRlciB0byBnZXQgaXQgd29yayBvbiBwb2RtYW4sIHlvdSBqdXN0IG5lZWQgdG8gY3JlYXRlIGFuIGFsaWFzXG5TaW1wbHkgcHV0OiBhbGlhcyBkb2NrZXI9cG9kbWFuXG5hbmQgaW5zdGFsbCBwb2RtYW4tZG9ja2VyIiwKICAibmFtZSI6ICJQb2RtYW4gYW5kIERvY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJwb2RtYW4tYXMtZG9ja2VyQGFsYmVydG8ueW9tZXJlbmd1ZXMueHl6IiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
 , {"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": "6", "sha256": "0j7xrkw830h34i6v5yxayk94nrfca3wvcm84z7l6jcfzsqp8d8qs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgZXh0ZW5zaW9uIHRoYXQgYWRkcyB0aGUgb3B0aW9uIHRvIGhpYmVybmF0ZSBhbW9uZ3N0IG90aGVyIHN5c3RlbSBhY3Rpb25zIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGliZXJuYXRlQGRhZm5lLnJvY2tzIiwKICAibmFtZSI6ICJTeXN0ZW0gQWN0aW9uIC0gSGliZXJuYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2NvZGViZXJnLm9yZy9raXl1aS9nbm9tZS1zaGVsbC1oaWJlcm5hdGUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJoaWJlcm5hdGVAZGFmbmUucm9ja3MiLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "6", "sha256": "0j7xrkw830h34i6v5yxayk94nrfca3wvcm84z7l6jcfzsqp8d8qs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgZXh0ZW5zaW9uIHRoYXQgYWRkcyB0aGUgb3B0aW9uIHRvIGhpYmVybmF0ZSBhbW9uZ3N0IG90aGVyIHN5c3RlbSBhY3Rpb25zIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGliZXJuYXRlQGRhZm5lLnJvY2tzIiwKICAibmFtZSI6ICJTeXN0ZW0gQWN0aW9uIC0gSGliZXJuYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2NvZGViZXJnLm9yZy9raXl1aS9nbm9tZS1zaGVsbC1oaWJlcm5hdGUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJoaWJlcm5hdGVAZGFmbmUucm9ja3MiLAogICJ2ZXJzaW9uIjogNgp9"}}}
+, {"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": "7", "sha256": "0z5mwqnlm77jl2r8p0884bm9w57m7ynzvr7w1vwv6rs2gn70wgyj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgZXh0ZW5zaW9uIHRoYXQgYWRkcyB0aGUgb3B0aW9uIHRvIGhpYmVybmF0ZSBhbW9uZ3N0IG90aGVyIHN5c3RlbSBhY3Rpb25zIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGliZXJuYXRlQGRhZm5lLnJvY2tzIiwKICAibmFtZSI6ICJTeXN0ZW0gQWN0aW9uIC0gSGliZXJuYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2NvZGViZXJnLm9yZy9raXl1aS9nbm9tZS1zaGVsbC1oaWJlcm5hdGUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJoaWJlcm5hdGVAZGFmbmUucm9ja3MiLAogICJ2ZXJzaW9uIjogNwp9"}, "40": {"version": "7", "sha256": "0z5mwqnlm77jl2r8p0884bm9w57m7ynzvr7w1vwv6rs2gn70wgyj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgZXh0ZW5zaW9uIHRoYXQgYWRkcyB0aGUgb3B0aW9uIHRvIGhpYmVybmF0ZSBhbW9uZ3N0IG90aGVyIHN5c3RlbSBhY3Rpb25zIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGliZXJuYXRlQGRhZm5lLnJvY2tzIiwKICAibmFtZSI6ICJTeXN0ZW0gQWN0aW9uIC0gSGliZXJuYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2NvZGViZXJnLm9yZy9raXl1aS9nbm9tZS1zaGVsbC1oaWJlcm5hdGUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJoaWJlcm5hdGVAZGFmbmUucm9ja3MiLAogICJ2ZXJzaW9uIjogNwp9"}}}
 , {"uuid": "click-to-close-overview@l3nn4rt.github.io", "name": "Click to close overview", "pname": "click-to-close-overview", "description": "Allow to close the overview by clicking empty space.\n\nIf you have any problem, please open an issue on the extension web page.", "link": "https://extensions.gnome.org/extension/3826/click-to-close-overview/", "shell_version_map": {"38": {"version": "3", "sha256": "0y9xq7frbydjabw8y49nrj0r04z9rkd11xmsvj143sn82vq6vgcv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHRvIGNsb3NlIHRoZSBvdmVydmlldyBieSBjbGlja2luZyBlbXB0eSBzcGFjZS5cblxuSWYgeW91IGhhdmUgYW55IHByb2JsZW0sIHBsZWFzZSBvcGVuIGFuIGlzc3VlIG9uIHRoZSBleHRlbnNpb24gd2ViIHBhZ2UuIiwKICAibmFtZSI6ICJDbGljayB0byBjbG9zZSBvdmVydmlldyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2wzbm40cnQvY2xpY2stdG8tY2xvc2Utb3ZlcnZpZXciLAogICJ1dWlkIjogImNsaWNrLXRvLWNsb3NlLW92ZXJ2aWV3QGwzbm40cnQuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
-, {"uuid": "just-perfection-desktop@just-perfection", "name": "Just Perfection", "pname": "just-perfection", "description": "Tweak GNOME Shell and Disable UI Elements\n\nThis extension allows you to do the following:\n\n# Visibility\n\n- OSD\n- Search\n- Dash\n- Workspace Switcher\n- Workspace Popup\n- Panel\n- Background Menu\n- Activities button\n- App Menu\n- Clock Menu\n- Keyboard Layout\n- Accessibility Menu\n- System Menu (Aggregate Menu)\n- Applications Button\n\n# Icons Visibility\n\n- App Menu Icon\n- Power Icon\n- Panel Notification icon\n- Window Picker Icon (Only GNOME 40.0)\n- Panel Arrow (Only GNOME 3.36 and 3.38)\n- Activities Button Icon\n\n# Behavior\n\n- Disable Type to Search\n- Hot Corner\n- App Gesture (Only GNOME 3.36 and 3.38)\n- Window Demands Attention Focus\n\n# Customize\n\n- Panel Position\n- Panel Round Corner Size\n- Clock Menu Position\n- Workspace Switcher Size (Only GNOME 40.0)\n- Animation Speed or Disable it\n- Dash Icon Size\n\n# Override\n\n- GNOME shell theme (You don't need to have user-theme-extension)", "link": "https://extensions.gnome.org/extension/3843/just-perfection/", "shell_version_map": {"38": {"version": "11", "sha256": "0qcs3g138ic756fddla5icgkhdn16sf6pz2z3hcqk5xr930464bm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrIEdOT01FIFNoZWxsIGFuZCBEaXNhYmxlIFVJIEVsZW1lbnRzXG5cblRoaXMgZXh0ZW5zaW9uIGFsbG93cyB5b3UgdG8gZG8gdGhlIGZvbGxvd2luZzpcblxuIyBWaXNpYmlsaXR5XG5cbi0gT1NEXG4tIFNlYXJjaFxuLSBEYXNoXG4tIFdvcmtzcGFjZSBTd2l0Y2hlclxuLSBXb3Jrc3BhY2UgUG9wdXBcbi0gUGFuZWxcbi0gQmFja2dyb3VuZCBNZW51XG4tIEFjdGl2aXRpZXMgYnV0dG9uXG4tIEFwcCBNZW51XG4tIENsb2NrIE1lbnVcbi0gS2V5Ym9hcmQgTGF5b3V0XG4tIEFjY2Vzc2liaWxpdHkgTWVudVxuLSBTeXN0ZW0gTWVudSAoQWdncmVnYXRlIE1lbnUpXG4tIEFwcGxpY2F0aW9ucyBCdXR0b25cblxuIyBJY29ucyBWaXNpYmlsaXR5XG5cbi0gQXBwIE1lbnUgSWNvblxuLSBQb3dlciBJY29uXG4tIFBhbmVsIE5vdGlmaWNhdGlvbiBpY29uXG4tIFdpbmRvdyBQaWNrZXIgSWNvbiAoT25seSBHTk9NRSA0MC4wKVxuLSBQYW5lbCBBcnJvdyAoT25seSBHTk9NRSAzLjM2IGFuZCAzLjM4KVxuLSBBY3Rpdml0aWVzIEJ1dHRvbiBJY29uXG5cbiMgQmVoYXZpb3JcblxuLSBEaXNhYmxlIFR5cGUgdG8gU2VhcmNoXG4tIEhvdCBDb3JuZXJcbi0gQXBwIEdlc3R1cmUgKE9ubHkgR05PTUUgMy4zNiBhbmQgMy4zOClcbi0gV2luZG93IERlbWFuZHMgQXR0ZW50aW9uIEZvY3VzXG5cbiMgQ3VzdG9taXplXG5cbi0gUGFuZWwgUG9zaXRpb25cbi0gUGFuZWwgUm91bmQgQ29ybmVyIFNpemVcbi0gQ2xvY2sgTWVudSBQb3NpdGlvblxuLSBXb3Jrc3BhY2UgU3dpdGNoZXIgU2l6ZSAoT25seSBHTk9NRSA0MC4wKVxuLSBBbmltYXRpb24gU3BlZWQgb3IgRGlzYWJsZSBpdFxuLSBEYXNoIEljb24gU2l6ZVxuXG4jIE92ZXJyaWRlXG5cbi0gR05PTUUgc2hlbGwgdGhlbWUgKFlvdSBkb24ndCBuZWVkIHRvIGhhdmUgdXNlci10aGVtZS1leHRlbnNpb24pIiwKICAiZ2V0dGV4dC1kb21haW4iOiAianVzdC1wZXJmZWN0aW9uIiwKICAibmFtZSI6ICJKdXN0IFBlcmZlY3Rpb24iLAogICJzY2hlbWEtaWQiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuanVzdC1wZXJmZWN0aW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL2pyYWhtYXR6YWRlaC9qdXN0LXBlcmZlY3Rpb24iLAogICJ1dWlkIjogImp1c3QtcGVyZmVjdGlvbi1kZXNrdG9wQGp1c3QtcGVyZmVjdGlvbiIsCiAgInZlcnNpb24iOiAxMQp9"}, "40": {"version": "11", "sha256": "0qcs3g138ic756fddla5icgkhdn16sf6pz2z3hcqk5xr930464bm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrIEdOT01FIFNoZWxsIGFuZCBEaXNhYmxlIFVJIEVsZW1lbnRzXG5cblRoaXMgZXh0ZW5zaW9uIGFsbG93cyB5b3UgdG8gZG8gdGhlIGZvbGxvd2luZzpcblxuIyBWaXNpYmlsaXR5XG5cbi0gT1NEXG4tIFNlYXJjaFxuLSBEYXNoXG4tIFdvcmtzcGFjZSBTd2l0Y2hlclxuLSBXb3Jrc3BhY2UgUG9wdXBcbi0gUGFuZWxcbi0gQmFja2dyb3VuZCBNZW51XG4tIEFjdGl2aXRpZXMgYnV0dG9uXG4tIEFwcCBNZW51XG4tIENsb2NrIE1lbnVcbi0gS2V5Ym9hcmQgTGF5b3V0XG4tIEFjY2Vzc2liaWxpdHkgTWVudVxuLSBTeXN0ZW0gTWVudSAoQWdncmVnYXRlIE1lbnUpXG4tIEFwcGxpY2F0aW9ucyBCdXR0b25cblxuIyBJY29ucyBWaXNpYmlsaXR5XG5cbi0gQXBwIE1lbnUgSWNvblxuLSBQb3dlciBJY29uXG4tIFBhbmVsIE5vdGlmaWNhdGlvbiBpY29uXG4tIFdpbmRvdyBQaWNrZXIgSWNvbiAoT25seSBHTk9NRSA0MC4wKVxuLSBQYW5lbCBBcnJvdyAoT25seSBHTk9NRSAzLjM2IGFuZCAzLjM4KVxuLSBBY3Rpdml0aWVzIEJ1dHRvbiBJY29uXG5cbiMgQmVoYXZpb3JcblxuLSBEaXNhYmxlIFR5cGUgdG8gU2VhcmNoXG4tIEhvdCBDb3JuZXJcbi0gQXBwIEdlc3R1cmUgKE9ubHkgR05PTUUgMy4zNiBhbmQgMy4zOClcbi0gV2luZG93IERlbWFuZHMgQXR0ZW50aW9uIEZvY3VzXG5cbiMgQ3VzdG9taXplXG5cbi0gUGFuZWwgUG9zaXRpb25cbi0gUGFuZWwgUm91bmQgQ29ybmVyIFNpemVcbi0gQ2xvY2sgTWVudSBQb3NpdGlvblxuLSBXb3Jrc3BhY2UgU3dpdGNoZXIgU2l6ZSAoT25seSBHTk9NRSA0MC4wKVxuLSBBbmltYXRpb24gU3BlZWQgb3IgRGlzYWJsZSBpdFxuLSBEYXNoIEljb24gU2l6ZVxuXG4jIE92ZXJyaWRlXG5cbi0gR05PTUUgc2hlbGwgdGhlbWUgKFlvdSBkb24ndCBuZWVkIHRvIGhhdmUgdXNlci10aGVtZS1leHRlbnNpb24pIiwKICAiZ2V0dGV4dC1kb21haW4iOiAianVzdC1wZXJmZWN0aW9uIiwKICAibmFtZSI6ICJKdXN0IFBlcmZlY3Rpb24iLAogICJzY2hlbWEtaWQiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuanVzdC1wZXJmZWN0aW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL2pyYWhtYXR6YWRlaC9qdXN0LXBlcmZlY3Rpb24iLAogICJ1dWlkIjogImp1c3QtcGVyZmVjdGlvbi1kZXNrdG9wQGp1c3QtcGVyZmVjdGlvbiIsCiAgInZlcnNpb24iOiAxMQp9"}}}
-, {"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": "7", "sha256": "0h02ykcq1v33whrnhf8z15pql5qx8f072shv14md9ff30q4aw13q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgJ0FjdGl2aXRpZXMnIGJ1dHRvbiBieSBhbGwgY3VycmVudCB3b3Jrc3BhY2VzIGJ1dHRvbnMuIFN3aXRjaCB3b3Jrc3BhY2Ugb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuIiwKICAibmFtZSI6ICJXb3Jrc3BhY2VzIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L3dvcmtzcGFjZXMtYmFyIiwKICAidXVpZCI6ICJ3b3Jrc3BhY2VzLWJhckBmdGh4IiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "0h02ykcq1v33whrnhf8z15pql5qx8f072shv14md9ff30q4aw13q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgJ0FjdGl2aXRpZXMnIGJ1dHRvbiBieSBhbGwgY3VycmVudCB3b3Jrc3BhY2VzIGJ1dHRvbnMuIFN3aXRjaCB3b3Jrc3BhY2Ugb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuIiwKICAibmFtZSI6ICJXb3Jrc3BhY2VzIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L3dvcmtzcGFjZXMtYmFyIiwKICAidXVpZCI6ICJ3b3Jrc3BhY2VzLWJhckBmdGh4IiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
+, {"uuid": "just-perfection-desktop@just-perfection", "name": "Just Perfection", "pname": "just-perfection", "description": "Disable and Customize GNOME shell UI Elements\n\nThis extension allows you to do the following:\n\n## Visibility\n\n- OSD\n- Search\n- Dash\n- Workspace Switcher\n- Workspace Popup\n- Panel\n- Background Menu\n- Activities button\n- App Menu\n- Clock Menu\n- Keyboard Layout\n- Accessibility Menu\n- System Menu (Aggregate Menu)\n- Applications Button\n- Workspaces in app grid (Only GNOME Shell 40)\n- Window Picker Caption\n\n## Icons Visibility\n\n- App Menu Icon\n- Power Icon\n- Panel Notification icon\n- Window Picker Icon (Only GNOME Shell 40)\n- Panel Arrow (Only GNOME Shell 3.36 and 3.38)\n- Activities Button Icon\n\n## Behavior\n\n- Disable Type to Search\n- Hot Corner\n- App Gesture (Only GNOME Shell 3.36 and 3.38)\n- Window Demands Attention Focus\n- Always Show Workspace Switcher on Dynamic Workspaces (Only GNOME Shell 40)\n- Startup status (Only GNOME Shell 40)\n- Workspace Wraparound\n\n## Customize\n\n- Panel Height\n- Panel Position\n- Panel Button Padding Size\n- Panel Round Corner Size\n- Workspace Background Corner Size in Overview (Only GNOME Shell 40)\n- Clock Menu Position\n- Workspace Switcher Size (Only GNOME Shell 40)\n- Animation Speed or Disable it\n- Dash Icon Size\n- Notification Banner Position\n\n## Override\n\n- GNOME shell theme (You don't need to have user-theme-extension)", "link": "https://extensions.gnome.org/extension/3843/just-perfection/", "shell_version_map": {"38": {"version": "13", "sha256": "0j6d537gpg6dvq10lr97559xxaj7sgfzd8g72a680h7bvgld6hcg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGUgYW5kIEN1c3RvbWl6ZSBHTk9NRSBzaGVsbCBVSSBFbGVtZW50c1xuXG5UaGlzIGV4dGVuc2lvbiBhbGxvd3MgeW91IHRvIGRvIHRoZSBmb2xsb3dpbmc6XG5cbiMjIFZpc2liaWxpdHlcblxuLSBPU0Rcbi0gU2VhcmNoXG4tIERhc2hcbi0gV29ya3NwYWNlIFN3aXRjaGVyXG4tIFdvcmtzcGFjZSBQb3B1cFxuLSBQYW5lbFxuLSBCYWNrZ3JvdW5kIE1lbnVcbi0gQWN0aXZpdGllcyBidXR0b25cbi0gQXBwIE1lbnVcbi0gQ2xvY2sgTWVudVxuLSBLZXlib2FyZCBMYXlvdXRcbi0gQWNjZXNzaWJpbGl0eSBNZW51XG4tIFN5c3RlbSBNZW51IChBZ2dyZWdhdGUgTWVudSlcbi0gQXBwbGljYXRpb25zIEJ1dHRvblxuLSBXb3Jrc3BhY2VzIGluIGFwcCBncmlkIChPbmx5IEdOT01FIFNoZWxsIDQwKVxuLSBXaW5kb3cgUGlja2VyIENhcHRpb25cblxuIyMgSWNvbnMgVmlzaWJpbGl0eVxuXG4tIEFwcCBNZW51IEljb25cbi0gUG93ZXIgSWNvblxuLSBQYW5lbCBOb3RpZmljYXRpb24gaWNvblxuLSBXaW5kb3cgUGlja2VyIEljb24gKE9ubHkgR05PTUUgU2hlbGwgNDApXG4tIFBhbmVsIEFycm93IChPbmx5IEdOT01FIFNoZWxsIDMuMzYgYW5kIDMuMzgpXG4tIEFjdGl2aXRpZXMgQnV0dG9uIEljb25cblxuIyMgQmVoYXZpb3JcblxuLSBEaXNhYmxlIFR5cGUgdG8gU2VhcmNoXG4tIEhvdCBDb3JuZXJcbi0gQXBwIEdlc3R1cmUgKE9ubHkgR05PTUUgU2hlbGwgMy4zNiBhbmQgMy4zOClcbi0gV2luZG93IERlbWFuZHMgQXR0ZW50aW9uIEZvY3VzXG4tIEFsd2F5cyBTaG93IFdvcmtzcGFjZSBTd2l0Y2hlciBvbiBEeW5hbWljIFdvcmtzcGFjZXMgKE9ubHkgR05PTUUgU2hlbGwgNDApXG4tIFN0YXJ0dXAgc3RhdHVzIChPbmx5IEdOT01FIFNoZWxsIDQwKVxuLSBXb3Jrc3BhY2UgV3JhcGFyb3VuZFxuXG4jIyBDdXN0b21pemVcblxuLSBQYW5lbCBIZWlnaHRcbi0gUGFuZWwgUG9zaXRpb25cbi0gUGFuZWwgQnV0dG9uIFBhZGRpbmcgU2l6ZVxuLSBQYW5lbCBSb3VuZCBDb3JuZXIgU2l6ZVxuLSBXb3Jrc3BhY2UgQmFja2dyb3VuZCBDb3JuZXIgU2l6ZSBpbiBPdmVydmlldyAoT25seSBHTk9NRSBTaGVsbCA0MClcbi0gQ2xvY2sgTWVudSBQb3NpdGlvblxuLSBXb3Jrc3BhY2UgU3dpdGNoZXIgU2l6ZSAoT25seSBHTk9NRSBTaGVsbCA0MClcbi0gQW5pbWF0aW9uIFNwZWVkIG9yIERpc2FibGUgaXRcbi0gRGFzaCBJY29uIFNpemVcbi0gTm90aWZpY2F0aW9uIEJhbm5lciBQb3NpdGlvblxuXG4jIyBPdmVycmlkZVxuXG4tIEdOT01FIHNoZWxsIHRoZW1lIChZb3UgZG9uJ3QgbmVlZCB0byBoYXZlIHVzZXItdGhlbWUtZXh0ZW5zaW9uKSIsCiAgImdldHRleHQtZG9tYWluIjogImp1c3QtcGVyZmVjdGlvbiIsCiAgIm5hbWUiOiAiSnVzdCBQZXJmZWN0aW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmp1c3QtcGVyZmVjdGlvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9qcmFobWF0emFkZWgvanVzdC1wZXJmZWN0aW9uIiwKICAidXVpZCI6ICJqdXN0LXBlcmZlY3Rpb24tZGVza3RvcEBqdXN0LXBlcmZlY3Rpb24iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "40": {"version": "13", "sha256": "0j6d537gpg6dvq10lr97559xxaj7sgfzd8g72a680h7bvgld6hcg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGUgYW5kIEN1c3RvbWl6ZSBHTk9NRSBzaGVsbCBVSSBFbGVtZW50c1xuXG5UaGlzIGV4dGVuc2lvbiBhbGxvd3MgeW91IHRvIGRvIHRoZSBmb2xsb3dpbmc6XG5cbiMjIFZpc2liaWxpdHlcblxuLSBPU0Rcbi0gU2VhcmNoXG4tIERhc2hcbi0gV29ya3NwYWNlIFN3aXRjaGVyXG4tIFdvcmtzcGFjZSBQb3B1cFxuLSBQYW5lbFxuLSBCYWNrZ3JvdW5kIE1lbnVcbi0gQWN0aXZpdGllcyBidXR0b25cbi0gQXBwIE1lbnVcbi0gQ2xvY2sgTWVudVxuLSBLZXlib2FyZCBMYXlvdXRcbi0gQWNjZXNzaWJpbGl0eSBNZW51XG4tIFN5c3RlbSBNZW51IChBZ2dyZWdhdGUgTWVudSlcbi0gQXBwbGljYXRpb25zIEJ1dHRvblxuLSBXb3Jrc3BhY2VzIGluIGFwcCBncmlkIChPbmx5IEdOT01FIFNoZWxsIDQwKVxuLSBXaW5kb3cgUGlja2VyIENhcHRpb25cblxuIyMgSWNvbnMgVmlzaWJpbGl0eVxuXG4tIEFwcCBNZW51IEljb25cbi0gUG93ZXIgSWNvblxuLSBQYW5lbCBOb3RpZmljYXRpb24gaWNvblxuLSBXaW5kb3cgUGlja2VyIEljb24gKE9ubHkgR05PTUUgU2hlbGwgNDApXG4tIFBhbmVsIEFycm93IChPbmx5IEdOT01FIFNoZWxsIDMuMzYgYW5kIDMuMzgpXG4tIEFjdGl2aXRpZXMgQnV0dG9uIEljb25cblxuIyMgQmVoYXZpb3JcblxuLSBEaXNhYmxlIFR5cGUgdG8gU2VhcmNoXG4tIEhvdCBDb3JuZXJcbi0gQXBwIEdlc3R1cmUgKE9ubHkgR05PTUUgU2hlbGwgMy4zNiBhbmQgMy4zOClcbi0gV2luZG93IERlbWFuZHMgQXR0ZW50aW9uIEZvY3VzXG4tIEFsd2F5cyBTaG93IFdvcmtzcGFjZSBTd2l0Y2hlciBvbiBEeW5hbWljIFdvcmtzcGFjZXMgKE9ubHkgR05PTUUgU2hlbGwgNDApXG4tIFN0YXJ0dXAgc3RhdHVzIChPbmx5IEdOT01FIFNoZWxsIDQwKVxuLSBXb3Jrc3BhY2UgV3JhcGFyb3VuZFxuXG4jIyBDdXN0b21pemVcblxuLSBQYW5lbCBIZWlnaHRcbi0gUGFuZWwgUG9zaXRpb25cbi0gUGFuZWwgQnV0dG9uIFBhZGRpbmcgU2l6ZVxuLSBQYW5lbCBSb3VuZCBDb3JuZXIgU2l6ZVxuLSBXb3Jrc3BhY2UgQmFja2dyb3VuZCBDb3JuZXIgU2l6ZSBpbiBPdmVydmlldyAoT25seSBHTk9NRSBTaGVsbCA0MClcbi0gQ2xvY2sgTWVudSBQb3NpdGlvblxuLSBXb3Jrc3BhY2UgU3dpdGNoZXIgU2l6ZSAoT25seSBHTk9NRSBTaGVsbCA0MClcbi0gQW5pbWF0aW9uIFNwZWVkIG9yIERpc2FibGUgaXRcbi0gRGFzaCBJY29uIFNpemVcbi0gTm90aWZpY2F0aW9uIEJhbm5lciBQb3NpdGlvblxuXG4jIyBPdmVycmlkZVxuXG4tIEdOT01FIHNoZWxsIHRoZW1lIChZb3UgZG9uJ3QgbmVlZCB0byBoYXZlIHVzZXItdGhlbWUtZXh0ZW5zaW9uKSIsCiAgImdldHRleHQtZG9tYWluIjogImp1c3QtcGVyZmVjdGlvbiIsCiAgIm5hbWUiOiAiSnVzdCBQZXJmZWN0aW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmp1c3QtcGVyZmVjdGlvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9qcmFobWF0emFkZWgvanVzdC1wZXJmZWN0aW9uIiwKICAidXVpZCI6ICJqdXN0LXBlcmZlY3Rpb24tZGVza3RvcEBqdXN0LXBlcmZlY3Rpb24iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}}}
+, {"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": "11", "sha256": "04lp3d2xfl024nrvnqwb4vv2qd7fbwhfq3gbaz1j0ds7dhq7bhir", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgJ0FjdGl2aXRpZXMnIGJ1dHRvbiBieSBhbGwgY3VycmVudCB3b3Jrc3BhY2VzIGJ1dHRvbnMuIFN3aXRjaCB3b3Jrc3BhY2Ugb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuIiwKICAibmFtZSI6ICJXb3Jrc3BhY2VzIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L3dvcmtzcGFjZXMtYmFyIiwKICAidXVpZCI6ICJ3b3Jrc3BhY2VzLWJhckBmdGh4IiwKICAidmVyc2lvbiI6IDExCn0="}, "40": {"version": "11", "sha256": "04lp3d2xfl024nrvnqwb4vv2qd7fbwhfq3gbaz1j0ds7dhq7bhir", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgJ0FjdGl2aXRpZXMnIGJ1dHRvbiBieSBhbGwgY3VycmVudCB3b3Jrc3BhY2VzIGJ1dHRvbnMuIFN3aXRjaCB3b3Jrc3BhY2Ugb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuIiwKICAibmFtZSI6ICJXb3Jrc3BhY2VzIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L3dvcmtzcGFjZXMtYmFyIiwKICAidXVpZCI6ICJ3b3Jrc3BhY2VzLWJhckBmdGh4IiwKICAidmVyc2lvbiI6IDExCn0="}}}
 , {"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": "A 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": "0qhicn9is6b5g8xc8n4dvxxmzmlhzb9w9wrn6rf1jv8q5igyacs3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIHBhbmVsIGJ1dHRvbiB0aGF0IHNob3dzIENQVSBhbmQgUkFNIG1lbW9yeSB1c2FnZS4gQ2xpY2tpbmcgc2hvd3MgdGhlIHRvcCAxMCBwcm9jZXNzZXMgdXNpbmcgQ1BVIGFuZCBtZW1vcnkuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZXhhbXBsZSIsCiAgIm5hbWUiOiAiU2ltcGxlIG1vbml0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc21vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic2ltcGxlLW1vbml0b3JAZmNhYmFsbGVyb3AuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
 , {"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": "6", "sha256": "0373ghnm1r0f4igxqj3bgsl41gil2c5xzbcqjgiym7qmbsi8rf7n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSB0aGUgYXBwbGljYXRpb24gbWVudSBmcm9tIHRoZSB0b3AgYmFyIiwKICAibmFtZSI6ICJSZW1vdmUgQXBwIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3R1YXJ0aGF5aHVyc3QvcmVtb3ZlLWFwcC1tZW51LWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiUmVtb3ZlQXBwTWVudUBEcmFnb244b3kuY29tIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "6", "sha256": "0373ghnm1r0f4igxqj3bgsl41gil2c5xzbcqjgiym7qmbsi8rf7n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSB0aGUgYXBwbGljYXRpb24gbWVudSBmcm9tIHRoZSB0b3AgYmFyIiwKICAibmFtZSI6ICJSZW1vdmUgQXBwIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3R1YXJ0aGF5aHVyc3QvcmVtb3ZlLWFwcC1tZW51LWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiUmVtb3ZlQXBwTWVudUBEcmFnb244b3kuY29tIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
+, {"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": "7", "sha256": "0zg6znwpz57pv5nz4iw5s8w6l7rc3c11cmga71fgbfx0w83rnmf0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSB0aGUgYXBwbGljYXRpb24gbWVudSBmcm9tIHRoZSB0b3AgYmFyIiwKICAibmFtZSI6ICJSZW1vdmUgQXBwIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3R1YXJ0aGF5aHVyc3QvcmVtb3ZlLWFwcC1tZW51LWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiUmVtb3ZlQXBwTWVudUBEcmFnb244b3kuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "0zg6znwpz57pv5nz4iw5s8w6l7rc3c11cmga71fgbfx0w83rnmf0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSB0aGUgYXBwbGljYXRpb24gbWVudSBmcm9tIHRoZSB0b3AgYmFyIiwKICAibmFtZSI6ICJSZW1vdmUgQXBwIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3R1YXJ0aGF5aHVyc3QvcmVtb3ZlLWFwcC1tZW51LWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiUmVtb3ZlQXBwTWVudUBEcmFnb244b3kuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"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": "3", "sha256": "1a6qkxm0s9cd8brha1zdpmrilv32h8bfkx0gnyx1zzxprmw04nmp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxldCBpdCBzbm93IiwKICAibmFtZSI6ICJTbm93IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInNub3dAZW5kbGVzc29zLm9yZyIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"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"}}}
@@ -346,105 +377,153 @@
 , {"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": "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": "3", "sha256": "1shlfdmwnz6cxivhcd8gijhrnlcdyk1l9ypj8xx14lpzwzx50c5g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGxldHMgeW91IHRvZ2dsZSBuaWdodC1saWdodCBmcm9tIHRoZSB0b3AtYmFyIGJ5IGNsaWNraW5nIGl0LiIsCiAgIm5hbWUiOiAiVG9nZ2xlIE5pZ2h0IExpZ2h0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NhbnNvemJpci9nbm9tZS1zaGVsbC10b2dnbGUtbmlnaHQtbGlnaHQtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJ0b2dnbGUtbmlnaHQtbGlnaHRAY2Fuc296YmlyLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "3", "sha256": "1shlfdmwnz6cxivhcd8gijhrnlcdyk1l9ypj8xx14lpzwzx50c5g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGxldHMgeW91IHRvZ2dsZSBuaWdodC1saWdodCBmcm9tIHRoZSB0b3AtYmFyIGJ5IGNsaWNraW5nIGl0LiIsCiAgIm5hbWUiOiAiVG9nZ2xlIE5pZ2h0IExpZ2h0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NhbnNvemJpci9nbm9tZS1zaGVsbC10b2dnbGUtbmlnaHQtbGlnaHQtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJ0b2dnbGUtbmlnaHQtbGlnaHRAY2Fuc296YmlyLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"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": "2", "sha256": "1rdmyf8wr3f1kizsirpjs61bdll507knls50c5ximjq14mk92b3q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJ1dHRvbiBpbiBwYW5lbDogc3dpdGNoIGJldHdlZW4gQWR3YWl0YSBkYXJrIGFuZCBsaWdodCB0aGVtZXMuIiwKICAibmFtZSI6ICJBZHdhaXRhIFRoZW1lIFN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvYWR3YWl0YS10aGVtZS1zd2l0Y2hlciIsCiAgInV1aWQiOiAiYWR3YWl0YS10aGVtZS1zd2l0Y2hlckBmdGh4IiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "1rdmyf8wr3f1kizsirpjs61bdll507knls50c5ximjq14mk92b3q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJ1dHRvbiBpbiBwYW5lbDogc3dpdGNoIGJldHdlZW4gQWR3YWl0YSBkYXJrIGFuZCBsaWdodCB0aGVtZXMuIiwKICAibmFtZSI6ICJBZHdhaXRhIFRoZW1lIFN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvYWR3YWl0YS10aGVtZS1zd2l0Y2hlciIsCiAgInV1aWQiOiAiYWR3YWl0YS10aGVtZS1zd2l0Y2hlckBmdGh4IiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
-, {"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": "2", "sha256": "063sr180ppam2q43ky19xc9lizqk7vbkn9gkcl5krhjcr5c0arrm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZuTG9jayBzd2l0Y2ggZm9yIExlbm92byBUaGlua1BhZCBDb21wYWN0IFVTQiBLZXlib2FyZCAiLAogICJuYW1lIjogIkZuTG9jayBzd2l0Y2ggKFRoaW5rUGFkIENvbXBhY3QgVVNCIEtleWJvYXJkKSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dvbG9zaHVib3YvZm5sb2NrLXN3aXRjaC10cC1jb21wLXVzYi1rYiIsCiAgInV1aWQiOiAiZm5sb2NrLXN3aXRjaC10cC1jb21wLXVzYi1rYkBnb2xvc2h1Ym92LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAyCn0="}}}
+, {"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": "3", "sha256": "09a0i4zdf98j5cr7c8x79sk8yf2n35skkkz3chi6cc7q3va9ylg8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZuTG9jayBzd2l0Y2ggZm9yIExlbm92byBUaGlua1BhZCBDb21wYWN0IFVTQiBLZXlib2FyZCAiLAogICJuYW1lIjogIkZuTG9jayBzd2l0Y2ggKFRoaW5rUGFkIENvbXBhY3QgVVNCIEtleWJvYXJkKSAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ29sb3NodWJvdi9mbmxvY2stc3dpdGNoLXRwLWNvbXAtdXNiLWtiIiwKICAidXVpZCI6ICJmbmxvY2stc3dpdGNoLXRwLWNvbXAtdXNiLWtiQGdvbG9zaHVib3YuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "40": {"version": "3", "sha256": "09a0i4zdf98j5cr7c8x79sk8yf2n35skkkz3chi6cc7q3va9ylg8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZuTG9jayBzd2l0Y2ggZm9yIExlbm92byBUaGlua1BhZCBDb21wYWN0IFVTQiBLZXlib2FyZCAiLAogICJuYW1lIjogIkZuTG9jayBzd2l0Y2ggKFRoaW5rUGFkIENvbXBhY3QgVVNCIEtleWJvYXJkKSAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ29sb3NodWJvdi9mbmxvY2stc3dpdGNoLXRwLWNvbXAtdXNiLWtiIiwKICAidXVpZCI6ICJmbmxvY2stc3dpdGNoLXRwLWNvbXAtdXNiLWtiQGdvbG9zaHVib3YuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
 , {"uuid": "toggle-alacritty@itstime.tech", "name": "Toggle Alacritty", "pname": "toggle-alacritty", "description": "Toggles Alacritty window via hotkey: Alt+z\n\nIf Alacritty is not launched, attempts to start it (/usr/bin/alacritty)\n\nWorks under both Wayland and X11\n\nTo change hotkey please follow instruction in the README.md:\nhttps://github.com/axxapy/gnome-alacritty-toggle", "link": "https://extensions.gnome.org/extension/3942/toggle-alacritty/", "shell_version_map": {"38": {"version": "2", "sha256": "1y3f5cypx78f29pb1acq9ql42j8r20ikd4cl5bbxsmmvzzdrf3ri", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZXMgQWxhY3JpdHR5IHdpbmRvdyB2aWEgaG90a2V5OiBBbHQrelxuXG5JZiBBbGFjcml0dHkgaXMgbm90IGxhdW5jaGVkLCBhdHRlbXB0cyB0byBzdGFydCBpdCAoL3Vzci9iaW4vYWxhY3JpdHR5KVxuXG5Xb3JrcyB1bmRlciBib3RoIFdheWxhbmQgYW5kIFgxMVxuXG5UbyBjaGFuZ2UgaG90a2V5IHBsZWFzZSBmb2xsb3cgaW5zdHJ1Y3Rpb24gaW4gdGhlIFJFQURNRS5tZDpcbmh0dHBzOi8vZ2l0aHViLmNvbS9heHhhcHkvZ25vbWUtYWxhY3JpdHR5LXRvZ2dsZSIsCiAgIm5hbWUiOiAiVG9nZ2xlIEFsYWNyaXR0eSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50b2dnbGUtYWxhY3JpdHR5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ0b2dnbGUtYWxhY3JpdHR5QGl0c3RpbWUudGVjaCIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "1y3f5cypx78f29pb1acq9ql42j8r20ikd4cl5bbxsmmvzzdrf3ri", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZXMgQWxhY3JpdHR5IHdpbmRvdyB2aWEgaG90a2V5OiBBbHQrelxuXG5JZiBBbGFjcml0dHkgaXMgbm90IGxhdW5jaGVkLCBhdHRlbXB0cyB0byBzdGFydCBpdCAoL3Vzci9iaW4vYWxhY3JpdHR5KVxuXG5Xb3JrcyB1bmRlciBib3RoIFdheWxhbmQgYW5kIFgxMVxuXG5UbyBjaGFuZ2UgaG90a2V5IHBsZWFzZSBmb2xsb3cgaW5zdHJ1Y3Rpb24gaW4gdGhlIFJFQURNRS5tZDpcbmh0dHBzOi8vZ2l0aHViLmNvbS9heHhhcHkvZ25vbWUtYWxhY3JpdHR5LXRvZ2dsZSIsCiAgIm5hbWUiOiAiVG9nZ2xlIEFsYWNyaXR0eSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50b2dnbGUtYWxhY3JpdHR5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ0b2dnbGUtYWxhY3JpdHR5QGl0c3RpbWUudGVjaCIsCiAgInZlcnNpb24iOiAyCn0="}}}
-, {"uuid": "hide-panel@fthx", "name": "Hide Panel", "pname": "hide-panel", "description": "Hide top panel except in overview. Switch button in panel.\n\nVery very light extension.", "link": "https://extensions.gnome.org/extension/3948/hide-panel/", "shell_version_map": {"38": {"version": "6", "sha256": "0rf8bixqmh3l76lk1n2ac00kxnbviinfqhm08xkdf3hxf7aym9hc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdG9wIHBhbmVsIGV4Y2VwdCBpbiBvdmVydmlldy4gU3dpdGNoIGJ1dHRvbiBpbiBwYW5lbC5cblxuVmVyeSB2ZXJ5IGxpZ2h0IGV4dGVuc2lvbi4iLAogICJuYW1lIjogIkhpZGUgUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2hpZGUtcGFuZWwiLAogICJ1dWlkIjogImhpZGUtcGFuZWxAZnRoeCIsCiAgInZlcnNpb24iOiA2Cn0="}, "40": {"version": "6", "sha256": "0rf8bixqmh3l76lk1n2ac00kxnbviinfqhm08xkdf3hxf7aym9hc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdG9wIHBhbmVsIGV4Y2VwdCBpbiBvdmVydmlldy4gU3dpdGNoIGJ1dHRvbiBpbiBwYW5lbC5cblxuVmVyeSB2ZXJ5IGxpZ2h0IGV4dGVuc2lvbi4iLAogICJuYW1lIjogIkhpZGUgUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2hpZGUtcGFuZWwiLAogICJ1dWlkIjogImhpZGUtcGFuZWxAZnRoeCIsCiAgInZlcnNpb24iOiA2Cn0="}}}
-, {"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. Please ask for another email client if needed.", "link": "https://extensions.gnome.org/extension/3951/persistent-email-notifications/", "shell_version_map": {"38": {"version": "2", "sha256": "0hz7kqpx5msld9jjp2d37yj5b58zblr8iichas4ynsd811z523li", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldmVyIGhpZGUgYSBuZXcgbWFpbCBub3RpZmljYXRpb24sIGV4Y2VwdCBpZiB5b3UgY2xvc2UgaXQuXG5cblZlcnkgdmVyeSBsaWdodCBleHRlbnNpb24uIEVtYWlsIGNsaWVudHMgc3VwcG9ydGVkOiBUaHVuZGVyYmlyZCwgRXZvbHV0aW9uLCBHZWFyeSwgTWFpbHNwcmluZywgVHlwZUFwcC4gUGxlYXNlIGFzayBmb3IgYW5vdGhlciBlbWFpbCBjbGllbnQgaWYgbmVlZGVkLiIsCiAgIm5hbWUiOiAiUGVyc2lzdGVudCBFbWFpbCBOb3RpZmljYXRpb25zIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvcGVyc2lzdGVudC1lbWFpbC1ub3RpZmljYXRpb25zIiwKICAidXVpZCI6ICJwZXJzaXN0ZW50LWVtYWlsLW5vdGlmaWNhdGlvbnNAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "0hz7kqpx5msld9jjp2d37yj5b58zblr8iichas4ynsd811z523li", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldmVyIGhpZGUgYSBuZXcgbWFpbCBub3RpZmljYXRpb24sIGV4Y2VwdCBpZiB5b3UgY2xvc2UgaXQuXG5cblZlcnkgdmVyeSBsaWdodCBleHRlbnNpb24uIEVtYWlsIGNsaWVudHMgc3VwcG9ydGVkOiBUaHVuZGVyYmlyZCwgRXZvbHV0aW9uLCBHZWFyeSwgTWFpbHNwcmluZywgVHlwZUFwcC4gUGxlYXNlIGFzayBmb3IgYW5vdGhlciBlbWFpbCBjbGllbnQgaWYgbmVlZGVkLiIsCiAgIm5hbWUiOiAiUGVyc2lzdGVudCBFbWFpbCBOb3RpZmljYXRpb25zIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvcGVyc2lzdGVudC1lbWFpbC1ub3RpZmljYXRpb25zIiwKICAidXVpZCI6ICJwZXJzaXN0ZW50LWVtYWlsLW5vdGlmaWNhdGlvbnNAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}}}
+, {"uuid": "hide-panel@fthx", "name": "Hide Panel", "pname": "hide-panel", "description": "Hide top panel except in overview. Switch button in panel.\n\nVery very light extension. There is a 1 pixel wide line at the top of the screen that allows to blindly use the panel menus. This is needed to keep the native hot corner active without having to recreate it.", "link": "https://extensions.gnome.org/extension/3948/hide-panel/", "shell_version_map": {"38": {"version": "8", "sha256": "0nrj0kxfdxx7nmw0zai070ca5lv5r43bpgm2binv31xjyh385849", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdG9wIHBhbmVsIGV4Y2VwdCBpbiBvdmVydmlldy4gU3dpdGNoIGJ1dHRvbiBpbiBwYW5lbC5cblxuVmVyeSB2ZXJ5IGxpZ2h0IGV4dGVuc2lvbi4gVGhlcmUgaXMgYSAxIHBpeGVsIHdpZGUgbGluZSBhdCB0aGUgdG9wIG9mIHRoZSBzY3JlZW4gdGhhdCBhbGxvd3MgdG8gYmxpbmRseSB1c2UgdGhlIHBhbmVsIG1lbnVzLiBUaGlzIGlzIG5lZWRlZCB0byBrZWVwIHRoZSBuYXRpdmUgaG90IGNvcm5lciBhY3RpdmUgd2l0aG91dCBoYXZpbmcgdG8gcmVjcmVhdGUgaXQuIiwKICAibmFtZSI6ICJIaWRlIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvaGlkZS1wYW5lbCIsCiAgInV1aWQiOiAiaGlkZS1wYW5lbEBmdGh4IiwKICAidmVyc2lvbiI6IDgKfQ=="}, "40": {"version": "8", "sha256": "0nrj0kxfdxx7nmw0zai070ca5lv5r43bpgm2binv31xjyh385849", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdG9wIHBhbmVsIGV4Y2VwdCBpbiBvdmVydmlldy4gU3dpdGNoIGJ1dHRvbiBpbiBwYW5lbC5cblxuVmVyeSB2ZXJ5IGxpZ2h0IGV4dGVuc2lvbi4gVGhlcmUgaXMgYSAxIHBpeGVsIHdpZGUgbGluZSBhdCB0aGUgdG9wIG9mIHRoZSBzY3JlZW4gdGhhdCBhbGxvd3MgdG8gYmxpbmRseSB1c2UgdGhlIHBhbmVsIG1lbnVzLiBUaGlzIGlzIG5lZWRlZCB0byBrZWVwIHRoZSBuYXRpdmUgaG90IGNvcm5lciBhY3RpdmUgd2l0aG91dCBoYXZpbmcgdG8gcmVjcmVhdGUgaXQuIiwKICAibmFtZSI6ICJIaWRlIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvaGlkZS1wYW5lbCIsCiAgInV1aWQiOiAiaGlkZS1wYW5lbEBmdGh4IiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
+, {"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\nPay attention:\n1) there could be an error with the extension after install or update. The solution is to logout and login again.\n2) there could be an error if you have another extension with the same name \"workspace indicator\" already installed. The solution is to remove the old one.", "link": "https://extensions.gnome.org/extension/3952/workspace-indicator/", "shell_version_map": {"38": {"version": "7", "sha256": "1hkpa86vfzdcy9plvggaa1vd4mkjsi6i71bfj5p2bblqh5h1dqrp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0b3Igc2hvd3MgdGhlIGFtb3VudCBvZiBvcGVuZWQgd29ya3NwYWNlcyBhbmQgaGlnaGxpZ2h0cyB0aGUgY3VycmVudCBvbmUgdXNpbmcgdW5pY29kZSBjaGFyYWN0ZXJzLlxuXG5Zb3UgY2FuIHVzZSBpdCBhcyBhbiBpbmRpY2F0b3Igb25seSBidXQgd2lkZ2V0IGlzIGNsaWNrYWJsZS4gTGVmdCBidXR0b24gY2xpY2s6IG1vdmUgdG8gbGVmdCwgcmlnaHQgY2xpY2s6IG1vdmUgcmlnaHQuXG5cblBheSBhdHRlbnRpb246XG4xKSB0aGVyZSBjb3VsZCBiZSBhbiBlcnJvciB3aXRoIHRoZSBleHRlbnNpb24gYWZ0ZXIgaW5zdGFsbCBvciB1cGRhdGUuIFRoZSBzb2x1dGlvbiBpcyB0byBsb2dvdXQgYW5kIGxvZ2luIGFnYWluLlxuMikgdGhlcmUgY291bGQgYmUgYW4gZXJyb3IgaWYgeW91IGhhdmUgYW5vdGhlciBleHRlbnNpb24gd2l0aCB0aGUgc2FtZSBuYW1lIFwid29ya3NwYWNlIGluZGljYXRvclwiIGFscmVhZHkgaW5zdGFsbGVkLiBUaGUgc29sdXRpb24gaXMgdG8gcmVtb3ZlIHRoZSBvbGQgb25lLiIsCiAgIm5hbWUiOiAiV29ya3NwYWNlIGluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAuMCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dHkyL2hvcml6b250YWwtd29ya3NwYWNlLWluZGljYXRvciIsCiAgInV1aWQiOiAiaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yQHR0eTIuaW8iLAogICJ2ZXJzaW9uIjogNwp9"}, "40": {"version": "7", "sha256": "1hkpa86vfzdcy9plvggaa1vd4mkjsi6i71bfj5p2bblqh5h1dqrp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0b3Igc2hvd3MgdGhlIGFtb3VudCBvZiBvcGVuZWQgd29ya3NwYWNlcyBhbmQgaGlnaGxpZ2h0cyB0aGUgY3VycmVudCBvbmUgdXNpbmcgdW5pY29kZSBjaGFyYWN0ZXJzLlxuXG5Zb3UgY2FuIHVzZSBpdCBhcyBhbiBpbmRpY2F0b3Igb25seSBidXQgd2lkZ2V0IGlzIGNsaWNrYWJsZS4gTGVmdCBidXR0b24gY2xpY2s6IG1vdmUgdG8gbGVmdCwgcmlnaHQgY2xpY2s6IG1vdmUgcmlnaHQuXG5cblBheSBhdHRlbnRpb246XG4xKSB0aGVyZSBjb3VsZCBiZSBhbiBlcnJvciB3aXRoIHRoZSBleHRlbnNpb24gYWZ0ZXIgaW5zdGFsbCBvciB1cGRhdGUuIFRoZSBzb2x1dGlvbiBpcyB0byBsb2dvdXQgYW5kIGxvZ2luIGFnYWluLlxuMikgdGhlcmUgY291bGQgYmUgYW4gZXJyb3IgaWYgeW91IGhhdmUgYW5vdGhlciBleHRlbnNpb24gd2l0aCB0aGUgc2FtZSBuYW1lIFwid29ya3NwYWNlIGluZGljYXRvclwiIGFscmVhZHkgaW5zdGFsbGVkLiBUaGUgc29sdXRpb24gaXMgdG8gcmVtb3ZlIHRoZSBvbGQgb25lLiIsCiAgIm5hbWUiOiAiV29ya3NwYWNlIGluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAuMCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dHkyL2hvcml6b250YWwtd29ya3NwYWNlLWluZGljYXRvciIsCiAgInV1aWQiOiAiaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yQHR0eTIuaW8iLAogICJ2ZXJzaW9uIjogNwp9"}}}
-, {"uuid": "kitchentimer@blackjackshellac.ca", "name": "Kitchen Timer", "pname": "kitchen-timer", "description": "General purpose timer extension for Gnome Shell\n\nPlease report issues on github\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": "1i16v51jc09al8ggmajk8m7w4nvlynr60c8f7fvwj039baq5fr9h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdlbmVyYWwgcHVycG9zZSB0aW1lciBleHRlbnNpb24gZm9yIEdub21lIFNoZWxsXG5cblBsZWFzZSByZXBvcnQgaXNzdWVzIG9uIGdpdGh1YlxuSWYgdXBkYXRpbmcgdGhlIGV4dGVuc2lvbiByZXBvcnRzIGFuIEVSUk9SLCBpdCBzaG91bGQgd29yayBhZnRlciB0aGUgbmV4dCByZWJvb3Qgb3IgaWYgeW91IGxvZ291dCBhbmQgbG9naW4gYWdhaW4uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAia2l0Y2hlbi10aW1lci1ibGFja2phY2tzaGVsbGFjIiwKICAibmFtZSI6ICJLaXRjaGVuIFRpbWVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmtpdGNoZW4tdGltZXItYmxhY2tqYWNrc2hlbGxhYyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ibGFja2phY2tzaGVsbGFjL2tpdGNoZW5UaW1lciIsCiAgInV1aWQiOiAia2l0Y2hlbnRpbWVyQGJsYWNramFja3NoZWxsYWMuY2EiLAogICJ2ZXJzaW9uIjogMjgKfQ=="}, "40": {"version": "28", "sha256": "1i16v51jc09al8ggmajk8m7w4nvlynr60c8f7fvwj039baq5fr9h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdlbmVyYWwgcHVycG9zZSB0aW1lciBleHRlbnNpb24gZm9yIEdub21lIFNoZWxsXG5cblBsZWFzZSByZXBvcnQgaXNzdWVzIG9uIGdpdGh1YlxuSWYgdXBkYXRpbmcgdGhlIGV4dGVuc2lvbiByZXBvcnRzIGFuIEVSUk9SLCBpdCBzaG91bGQgd29yayBhZnRlciB0aGUgbmV4dCByZWJvb3Qgb3IgaWYgeW91IGxvZ291dCBhbmQgbG9naW4gYWdhaW4uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAia2l0Y2hlbi10aW1lci1ibGFja2phY2tzaGVsbGFjIiwKICAibmFtZSI6ICJLaXRjaGVuIFRpbWVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmtpdGNoZW4tdGltZXItYmxhY2tqYWNrc2hlbGxhYyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ibGFja2phY2tzaGVsbGFjL2tpdGNoZW5UaW1lciIsCiAgInV1aWQiOiAia2l0Y2hlbnRpbWVyQGJsYWNramFja3NoZWxsYWMuY2EiLAogICJ2ZXJzaW9uIjogMjgKfQ=="}}}
-, {"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": "2", "sha256": "0lsjcgj4jpjzgindssw9bkmvvg22l4dshqn4h41vnbm229zhvlgx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJDemFybGllIDxsZWVlNDlAZ21haWwuY29tPiIsCiAgImF1dGhvci1odG1sIjogIkN6YXJsaWUgJmx0OzxhIGhyZWY9XCJtYWlsdG86bGVlZTQ5Ljd4N0BnbWFpbC5jb21cIj5sZWVlNDkuN3g3QGdtYWlsLmNvbTwvYT4mZ3Q7IiwKICAiZGVzY3JpcHRpb24iOiAiRnV6enkgYXBwbGljYXRpb24gc2VhcmNoIHJlc3VsdHMgZm9yIEdub21lIFNlYXJjaCIsCiAgImRlc2NyaXB0aW9uLWh0bWwiOiAiPGEgaHJlZj1cImh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0FwcHJveGltYXRlX3N0cmluZ19tYXRjaGluZ1wiPkZ1enp5PC9hPiBhcHBsaWNhdGlvbiBzZWFyY2ggcmVzdWx0cyBmb3IgPGEgaHJlZj1cImh0dHBzOi8vZGV2ZWxvcGVyLmdub21lLm9yZy9TZWFyY2hQcm92aWRlci9cIj5Hbm9tZSBTZWFyY2g8L2E+LiIsCiAgImVtYWlsIjogImxlZWU0OS43eDdAZ21haWwuY29tIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgImxpY2Vuc2UiOiAiR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjMuMCIsCiAgImxpY2Vuc2UtaHRtbCI6ICJUaGlzIHByb2dyYW0gY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZLlxuU2VlIHRoZSA8YSBocmVmPVwiaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLmh0bWxcIj5HTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wPC9hPiBmb3IgZGV0YWlscy4iLAogICJuYW1lIjogIkdOT01FIEZ1enp5IEFwcCBTZWFyY2giLAogICJvcmlnaW5hbC1hdXRob3IiOiAiRnJhbmpvIEZpbG8gPGZmZmlsbzY2NkBnbWFpbC5jb20+IiwKICAib3JpZ2luYWwtYXV0aG9yLWh0bWwiOiAiRnJhbmpvIEZpbG8gJmx0OzxhIGhyZWY9XCJtYWlsdG86ZmZmaWxvNjY2QGdtYWlsLmNvbVwiPmZmZmlsbzY2NkBnbWFpbC5jb208L2E+Jmd0OyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS1mdXp6eS1hcHAtc2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjIxLjIiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9DemFybGllL2dub21lLWZ1enp5LWFwcC1zZWFyY2giLAogICJ1dWlkIjogImdub21lLWZ1enp5LWFwcC1zZWFyY2hAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5DemFybGllLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}}}
-, {"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\n Features:\n* Switch Shell, GTK, icon, and cursor theme to light high contrast one\n* Disable animations\n\n Dependencies:\n* High Constrast theme for GTK and icon\n* DMZ-White cursor theme", "link": "https://extensions.gnome.org/extension/3957/e-ink-mode/", "shell_version_map": {"40": {"version": "2", "sha256": "02jnbp8pfz9hdlj11jjdsd55yg55si69f1hzjcq1qya2a20v2xqv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgZGVza3RvcCBzdWl0YWJsZSBmb3IgRSBJbmsgbW9uaXRvcnMuXG5cbiBGZWF0dXJlczpcbiogU3dpdGNoIFNoZWxsLCBHVEssIGljb24sIGFuZCBjdXJzb3IgdGhlbWUgdG8gbGlnaHQgaGlnaCBjb250cmFzdCBvbmVcbiogRGlzYWJsZSBhbmltYXRpb25zXG5cbiBEZXBlbmRlbmNpZXM6XG4qIEhpZ2ggQ29uc3RyYXN0IHRoZW1lIGZvciBHVEsgYW5kIGljb25cbiogRE1aLVdoaXRlIGN1cnNvciB0aGVtZSIsCiAgIm5hbWUiOiAiRSBJbmsgTW9kZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdWppbW8tdC9nbm9tZS1zaGVsbC1leHRlbnNpb24tZS1pbmstbW9kZSIsCiAgInV1aWQiOiAiZS1pbmstbW9kZUBmdWppbW8tdC5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMgp9"}}}
+, {"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": "3", "sha256": "0jxh2wcckwnijgabg9k7b7mi785j63pjkbjya4pbvnmiw4n4qbn0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJDemFybGllIDxsZWVlNDlAZ21haWwuY29tPiIsCiAgImF1dGhvci1odG1sIjogIkN6YXJsaWUgJmx0OzxhIGhyZWY9XCJtYWlsdG86bGVlZTQ5Ljd4N0BnbWFpbC5jb21cIj5sZWVlNDkuN3g3QGdtYWlsLmNvbTwvYT4mZ3Q7IiwKICAiZGVzY3JpcHRpb24iOiAiRnV6enkgYXBwbGljYXRpb24gc2VhcmNoIHJlc3VsdHMgZm9yIEdub21lIFNlYXJjaCIsCiAgImRlc2NyaXB0aW9uLWh0bWwiOiAiPGEgaHJlZj1cImh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0FwcHJveGltYXRlX3N0cmluZ19tYXRjaGluZ1wiPkZ1enp5PC9hPiBhcHBsaWNhdGlvbiBzZWFyY2ggcmVzdWx0cyBmb3IgPGEgaHJlZj1cImh0dHBzOi8vZGV2ZWxvcGVyLmdub21lLm9yZy9TZWFyY2hQcm92aWRlci9cIj5Hbm9tZSBTZWFyY2g8L2E+LiIsCiAgImVtYWlsIjogImxlZWU0OS43eDdAZ21haWwuY29tIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgImxpY2Vuc2UiOiAiR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjMuMCIsCiAgImxpY2Vuc2UtaHRtbCI6ICJUaGlzIHByb2dyYW0gY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZLlxuU2VlIHRoZSA8YSBocmVmPVwiaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLmh0bWxcIj5HTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wPC9hPiBmb3IgZGV0YWlscy4iLAogICJuYW1lIjogIkdOT01FIEZ1enp5IEFwcCBTZWFyY2giLAogICJvcmlnaW5hbC1hdXRob3IiOiAiRnJhbmpvIEZpbG8gPGZmZmlsbzY2NkBnbWFpbC5jb20+IiwKICAib3JpZ2luYWwtYXV0aG9yLWh0bWwiOiAiRnJhbmpvIEZpbG8gJmx0OzxhIGhyZWY9XCJtYWlsdG86ZmZmaWxvNjY2QGdtYWlsLmNvbVwiPmZmZmlsbzY2NkBnbWFpbC5jb208L2E+Jmd0OyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS1mdXp6eS1hcHAtc2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjIxLjIiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL0N6YXJsaWUvZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgInV1aWQiOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaEBnbm9tZS1zaGVsbC1leHRlbnNpb25zLkN6YXJsaWUuZ2l0bGFiLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "3", "sha256": "0jxh2wcckwnijgabg9k7b7mi785j63pjkbjya4pbvnmiw4n4qbn0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJDemFybGllIDxsZWVlNDlAZ21haWwuY29tPiIsCiAgImF1dGhvci1odG1sIjogIkN6YXJsaWUgJmx0OzxhIGhyZWY9XCJtYWlsdG86bGVlZTQ5Ljd4N0BnbWFpbC5jb21cIj5sZWVlNDkuN3g3QGdtYWlsLmNvbTwvYT4mZ3Q7IiwKICAiZGVzY3JpcHRpb24iOiAiRnV6enkgYXBwbGljYXRpb24gc2VhcmNoIHJlc3VsdHMgZm9yIEdub21lIFNlYXJjaCIsCiAgImRlc2NyaXB0aW9uLWh0bWwiOiAiPGEgaHJlZj1cImh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0FwcHJveGltYXRlX3N0cmluZ19tYXRjaGluZ1wiPkZ1enp5PC9hPiBhcHBsaWNhdGlvbiBzZWFyY2ggcmVzdWx0cyBmb3IgPGEgaHJlZj1cImh0dHBzOi8vZGV2ZWxvcGVyLmdub21lLm9yZy9TZWFyY2hQcm92aWRlci9cIj5Hbm9tZSBTZWFyY2g8L2E+LiIsCiAgImVtYWlsIjogImxlZWU0OS43eDdAZ21haWwuY29tIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgImxpY2Vuc2UiOiAiR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjMuMCIsCiAgImxpY2Vuc2UtaHRtbCI6ICJUaGlzIHByb2dyYW0gY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZLlxuU2VlIHRoZSA8YSBocmVmPVwiaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLmh0bWxcIj5HTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wPC9hPiBmb3IgZGV0YWlscy4iLAogICJuYW1lIjogIkdOT01FIEZ1enp5IEFwcCBTZWFyY2giLAogICJvcmlnaW5hbC1hdXRob3IiOiAiRnJhbmpvIEZpbG8gPGZmZmlsbzY2NkBnbWFpbC5jb20+IiwKICAib3JpZ2luYWwtYXV0aG9yLWh0bWwiOiAiRnJhbmpvIEZpbG8gJmx0OzxhIGhyZWY9XCJtYWlsdG86ZmZmaWxvNjY2QGdtYWlsLmNvbVwiPmZmZmlsbzY2NkBnbWFpbC5jb208L2E+Jmd0OyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS1mdXp6eS1hcHAtc2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjIxLjIiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL0N6YXJsaWUvZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgInV1aWQiOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaEBnbm9tZS1zaGVsbC1leHRlbnNpb25zLkN6YXJsaWUuZ2l0bGFiLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}}}
+, {"uuid": "e-ink-mode@fujimo-t.github.io", "name": "E Ink Mode", "pname": "e-ink-mode", "description": "# GNOME Shell Extension: E Ink Mode\nMake desktop suitable for E Ink monitors.\n\n## Features\n* Switch Shell, GTK and icon theme to light high contrast one\n* Disable animations\n* Change background to white color\n\n## Dependencies\n* `High Constrast` theme for GTK and icon", "link": "https://extensions.gnome.org/extension/3957/e-ink-mode/", "shell_version_map": {"40": {"version": "3", "sha256": "1bzcv10c9wd2qga4z3swlyf0v0bv1s0j90vjxlmvylfr1nnbsjc9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiMgR05PTUUgU2hlbGwgRXh0ZW5zaW9uOiBFIEluayBNb2RlXG5NYWtlIGRlc2t0b3Agc3VpdGFibGUgZm9yIEUgSW5rIG1vbml0b3JzLlxuXG4jIyBGZWF0dXJlc1xuKiBTd2l0Y2ggU2hlbGwsIEdUSyBhbmQgaWNvbiB0aGVtZSB0byBsaWdodCBoaWdoIGNvbnRyYXN0IG9uZVxuKiBEaXNhYmxlIGFuaW1hdGlvbnNcbiogQ2hhbmdlIGJhY2tncm91bmQgdG8gd2hpdGUgY29sb3JcblxuIyMgRGVwZW5kZW5jaWVzXG4qIGBIaWdoIENvbnN0cmFzdGAgdGhlbWUgZm9yIEdUSyBhbmQgaWNvbiIsCiAgIm5hbWUiOiAiRSBJbmsgTW9kZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdWppbW8tdC9nbm9tZS1zaGVsbC1leHRlbnNpb24tZS1pbmstbW9kZSIsCiAgInV1aWQiOiAiZS1pbmstbW9kZUBmdWppbW8tdC5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMwp9"}}}
 , {"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": "5", "sha256": "09mym8h6lpb53b18c72vzl2y7myl1xg1lyg9jryf3nijna9adnr9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvcmsgb2Y6IGh0dHBzOi8vZ2l0aHViLmNvbS96aGFuZ2hhaS9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJhbnNwYXJlbnQtdG9wLWJhclxuXG5CcmluZyBiYWNrIHRoZSB0cmFuc3BhcmVudCB0b3AgYmFyIGluIEdOT01FIFNoZWxsIHdpdGggYWRqdXN0YWJsZSB0cmFuc3BhcmVuY3kuXG5cbkRvZXMgbm90IHdvcmsgd2VsbCB3aXRoIGN1c3RvbSBzaGVsbCB0aGVtZXMuIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgQmFyIChBZGp1c3RhYmxlIHRyYW5zcGFyZW5jeSkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGFtYXJpb3MvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRyYW5zcGFyZW50LXRvcC1iYXIiLAogICJ1dWlkIjogInRyYW5zcGFyZW50LXRvcC1iYXJAZnRwaXguY29tIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
 , {"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": "3", "sha256": "0ina2cslibhixaz9dw8gp53c8s0dkphdn0sa7yzig3624zbsy13k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNsaWdodGx5IGltcHJvdmVkIHdvcmtzcGFjZSBpbmRpY2F0b3IgdGhhdCBzaG93cyBib3RoIGN1cnJlbnQgYW5kIGluIHVzZSB3b3Jrc3BhY2VzIHNpbWlsYXIgdG8gaTMvc3dheSIsCiAgIm5hbWUiOiAiSW1wcm92ZWQgV29ya3NwYWNlIEluZGljYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAibWljaGFlbGFxdWlsaW5hQGdtYWlsLmNvbSIKICBdLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWljaGFlbEFxdWlsaW5hL2ltcHJvdmVkLXdvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImltcHJvdmVkLXdvcmtzcGFjZS1pbmRpY2F0b3JAbWljaGFlbGFxdWlsaW5hLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "3", "sha256": "0ina2cslibhixaz9dw8gp53c8s0dkphdn0sa7yzig3624zbsy13k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNsaWdodGx5IGltcHJvdmVkIHdvcmtzcGFjZSBpbmRpY2F0b3IgdGhhdCBzaG93cyBib3RoIGN1cnJlbnQgYW5kIGluIHVzZSB3b3Jrc3BhY2VzIHNpbWlsYXIgdG8gaTMvc3dheSIsCiAgIm5hbWUiOiAiSW1wcm92ZWQgV29ya3NwYWNlIEluZGljYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAibWljaGFlbGFxdWlsaW5hQGdtYWlsLmNvbSIKICBdLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWljaGFlbEFxdWlsaW5hL2ltcHJvdmVkLXdvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImltcHJvdmVkLXdvcmtzcGFjZS1pbmRpY2F0b3JAbWljaGFlbGFxdWlsaW5hLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAzCn0="}}}
-, {"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": "0jpm8q47naxv5ld9yx6jjsnlm5snlqybilkmr8kvxq1an6pj36yw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkd1aWxsb3RpbmUgaXMgYSBnbm9tZSBleHRlbnNpb24gZGVzaWduZWQgZm9yIGVmZmljaWVudGx5IGNhcnJ5aW5nIG91dCBleGVjdXRpb25zIG9mIGNvbW1hbmRzIGZyb20gYSBjdXN0b21pemFibGUgbWVudS4gU2ltcGx5IHNwZWFraW5nOiBpdCBpcyBhIGhpZ2hseSBjdXN0b21pemFibGUgbWVudSB0aGF0IGVuYWJsZXMgeW91IHRvIGxhdW5jaCBjb21tYW5kcyBhbmQgdG9nZ2xlIHNlcnZpY2VzLiIsCiAgIm5hbWUiOiAiR3VpbGxvdGluZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ndWlsbG90aW5lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZW50ZTc2L2d1aWxsb3RpbmUvIiwKICAidXVpZCI6ICJndWlsbG90aW5lQGZvcGRvb2RsZS5uZXQiLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "5", "sha256": "12d35cdwwdsmmkhsb65xcqlkaisn0l0pl5b5x033c90v0jgd7k6i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkd1aWxsb3RpbmUgaXMgYSBnbm9tZSBleHRlbnNpb24gZGVzaWduZWQgZm9yIGVmZmljaWVudGx5IGNhcnJ5aW5nIG91dCBleGVjdXRpb25zIG9mIGNvbW1hbmRzIGZyb20gYSBjdXN0b21pemFibGUgbWVudS4gU2ltcGx5IHNwZWFraW5nOiBpdCBpcyBhIGhpZ2hseSBjdXN0b21pemFibGUgbWVudSB0aGF0IGVuYWJsZXMgeW91IHRvIGxhdW5jaCBjb21tYW5kcyBhbmQgdG9nZ2xlIHNlcnZpY2VzLiIsCiAgIm5hbWUiOiAiR3VpbGxvdGluZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ndWlsbG90aW5lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZW50ZTc2L2d1aWxsb3RpbmUvIiwKICAidXVpZCI6ICJndWlsbG90aW5lQGZvcGRvb2RsZS5uZXQiLAogICJ2ZXJzaW9uIjogNQp9"}}}
+, {"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": "0jpm8q47naxv5ld9yx6jjsnlm5snlqybilkmr8kvxq1an6pj36yw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkd1aWxsb3RpbmUgaXMgYSBnbm9tZSBleHRlbnNpb24gZGVzaWduZWQgZm9yIGVmZmljaWVudGx5IGNhcnJ5aW5nIG91dCBleGVjdXRpb25zIG9mIGNvbW1hbmRzIGZyb20gYSBjdXN0b21pemFibGUgbWVudS4gU2ltcGx5IHNwZWFraW5nOiBpdCBpcyBhIGhpZ2hseSBjdXN0b21pemFibGUgbWVudSB0aGF0IGVuYWJsZXMgeW91IHRvIGxhdW5jaCBjb21tYW5kcyBhbmQgdG9nZ2xlIHNlcnZpY2VzLiIsCiAgIm5hbWUiOiAiR3VpbGxvdGluZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ndWlsbG90aW5lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZW50ZTc2L2d1aWxsb3RpbmUvIiwKICAidXVpZCI6ICJndWlsbG90aW5lQGZvcGRvb2RsZS5uZXQiLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "6", "sha256": "06f3k0g96a29s5nrh5h1qk6inai65sf44i12bfsgdh33hrdfpayj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkd1aWxsb3RpbmUgaXMgYSBnbm9tZSBleHRlbnNpb24gZGVzaWduZWQgZm9yIGVmZmljaWVudGx5IGNhcnJ5aW5nIG91dCBleGVjdXRpb25zIG9mIGNvbW1hbmRzIGZyb20gYSBjdXN0b21pemFibGUgbWVudS4gU2ltcGx5IHNwZWFraW5nOiBpdCBpcyBhIGhpZ2hseSBjdXN0b21pemFibGUgbWVudSB0aGF0IGVuYWJsZXMgeW91IHRvIGxhdW5jaCBjb21tYW5kcyBhbmQgdG9nZ2xlIHNlcnZpY2VzLiIsCiAgIm5hbWUiOiAiR3VpbGxvdGluZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ndWlsbG90aW5lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VudGU3Ni9ndWlsbG90aW5lLyIsCiAgInV1aWQiOiAiZ3VpbGxvdGluZUBmb3Bkb29kbGUubmV0IiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
 , {"uuid": "extensions-in-system-menu@leleat-on-github", "name": "Extensions & Tweaks in system menu", "pname": "extensions-in-system-menu", "description": "No longer maintained. Starting with GNOME 40 'Tweaks-in-system-menu' also supports the extensions app. Please use that https://extensions.gnome.org/extension/1653/tweaks-in-system-menu/\n\n--------------------\n\nPut the Extensions and/or the Tweaks app into the system menu.", "link": "https://extensions.gnome.org/extension/3984/extensions-in-system-menu/", "shell_version_map": {"38": {"version": "6", "sha256": "0hdjgf4ancpj6lsqd6gf2lp7jf3zan16yrfap5g4hnbb72ihbpvc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vIGxvbmdlciBtYWludGFpbmVkLiBTdGFydGluZyB3aXRoIEdOT01FIDQwICdUd2Vha3MtaW4tc3lzdGVtLW1lbnUnIGFsc28gc3VwcG9ydHMgdGhlIGV4dGVuc2lvbnMgYXBwLiBQbGVhc2UgdXNlIHRoYXQgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMTY1My90d2Vha3MtaW4tc3lzdGVtLW1lbnUvXG5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblB1dCB0aGUgRXh0ZW5zaW9ucyBhbmQvb3IgdGhlIFR3ZWFrcyBhcHAgaW50byB0aGUgc3lzdGVtIG1lbnUuIiwKICAibmFtZSI6ICJFeHRlbnNpb25zICYgVHdlYWtzIGluIHN5c3RlbSBtZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MC5iZXRhIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTGVsZWF0L2V4dGVuc2lvbnMtaW4tc3lzdGVtLW1lbnUiLAogICJ1dWlkIjogImV4dGVuc2lvbnMtaW4tc3lzdGVtLW1lbnVAbGVsZWF0LW9uLWdpdGh1YiIsCiAgInZlcnNpb24iOiA2Cn0="}, "40": {"version": "6", "sha256": "0hdjgf4ancpj6lsqd6gf2lp7jf3zan16yrfap5g4hnbb72ihbpvc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vIGxvbmdlciBtYWludGFpbmVkLiBTdGFydGluZyB3aXRoIEdOT01FIDQwICdUd2Vha3MtaW4tc3lzdGVtLW1lbnUnIGFsc28gc3VwcG9ydHMgdGhlIGV4dGVuc2lvbnMgYXBwLiBQbGVhc2UgdXNlIHRoYXQgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMTY1My90d2Vha3MtaW4tc3lzdGVtLW1lbnUvXG5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblB1dCB0aGUgRXh0ZW5zaW9ucyBhbmQvb3IgdGhlIFR3ZWFrcyBhcHAgaW50byB0aGUgc3lzdGVtIG1lbnUuIiwKICAibmFtZSI6ICJFeHRlbnNpb25zICYgVHdlYWtzIGluIHN5c3RlbSBtZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MC5iZXRhIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTGVsZWF0L2V4dGVuc2lvbnMtaW4tc3lzdGVtLW1lbnUiLAogICJ1dWlkIjogImV4dGVuc2lvbnMtaW4tc3lzdGVtLW1lbnVAbGVsZWF0LW9uLWdpdGh1YiIsCiAgInZlcnNpb24iOiA2Cn0="}}}
-, {"uuid": "shuzhi@tuberry", "name": "Shu Zhi", "pname": "shu-zhi", "description": "A 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": "0fwncbkg7xpijydpwp3p8qx6czgvrxh7krasgjcsj4g35nh65i7k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgd2FsbHBhcGVyIGdlbmVyYXRpb24gZXh0ZW5zaW9uIGZvciBnbm9tZSBzaGVsbCwgaW5zcGlyZWQgYnkgSml6aGlcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAic2h1emhpIiwKICAibmFtZSI6ICJTaHUgWmhpIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNodXpoaSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvc2h1emhpIiwKICAidXVpZCI6ICJzaHV6aGlAdHViZXJyeSIsCiAgInZlcnNpb24iOiA3Cn0="}, "40": {"version": "11", "sha256": "02ny3dyshhw4m44d091lhqqdx0g2iciq5d7lcdqx9p3gwa5046d4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgd2FsbHBhcGVyIGdlbmVyYXRpb24gZXh0ZW5zaW9uIGZvciBnbm9tZSBzaGVsbCwgaW5zcGlyZWQgYnkgSml6aGlcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAic2h1emhpIiwKICAibmFtZSI6ICJTaHUgWmhpIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNodXpoaSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L3NodXpoaSIsCiAgInV1aWQiOiAic2h1emhpQHR1YmVycnkiLAogICJ2ZXJzaW9uIjogMTEKfQ=="}}}
+, {"uuid": "shuzhi@tuberry", "name": "Shu Zhi", "pname": "shu-zhi", "description": "A 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": "0fwncbkg7xpijydpwp3p8qx6czgvrxh7krasgjcsj4g35nh65i7k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgd2FsbHBhcGVyIGdlbmVyYXRpb24gZXh0ZW5zaW9uIGZvciBnbm9tZSBzaGVsbCwgaW5zcGlyZWQgYnkgSml6aGlcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAic2h1emhpIiwKICAibmFtZSI6ICJTaHUgWmhpIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNodXpoaSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvc2h1emhpIiwKICAidXVpZCI6ICJzaHV6aGlAdHViZXJyeSIsCiAgInZlcnNpb24iOiA3Cn0="}, "40": {"version": "14", "sha256": "0p8r5mln85sjc4vjsfmf7cbi3l4q70747wfqa5yn451idwajxvk3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgd2FsbHBhcGVyIGdlbmVyYXRpb24gZXh0ZW5zaW9uIGZvciBnbm9tZSBzaGVsbCwgaW5zcGlyZWQgYnkgSml6aGlcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAic2h1emhpIiwKICAibmFtZSI6ICJTaHUgWmhpIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNodXpoaSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L3NodXpoaSIsCiAgInV1aWQiOiAic2h1emhpQHR1YmVycnkiLAogICJ2ZXJzaW9uIjogMTQKfQ=="}}}
 , {"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": "1", "sha256": "09j017cpiimqi97rk2zp1bidrvf026dv469w80wiikbq67r22c9w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1pdCI6ICIzNzBiODIzYmQ5NTM4MDY4MThmMmYwNzhiNGNmZWYyODIzMmVjOTMwIiwKICAiZGVzY3JpcHRpb24iOiAiVHVybnMgb2ZmIG5vdGlmaWNhdGlvbnMgd2hpbGUgc2hhcmluZyBzY3JlZW4gZHVyaW5nIGEgWm9vbSBjYWxsIiwKICAibmFtZSI6ICJaaWxlbmNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXBhbmtvd3NraS96aWxlbmNlIiwKICAidXVpZCI6ICJ6aWxlbmNlQGFwYW5rb3dza2kuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxCn0="}}}
-, {"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": "11", "sha256": "0l5z65nkm75jrnqhvsahl8wg7cm5fphzwdahi16nrjs9hz05p2gg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJsdWV0b290aCBiYXR0ZXJ5IGluZGljYXRvciIsCiAgIm5hbWUiOiAiQmx1ZXRvb3RoIGJhdHRlcnkgaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWljaGFsVy9nbm9tZS1ibHVldG9vdGgtYmF0dGVyeS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImJsdWV0b290aC1iYXR0ZXJ5QG1pY2hhbHcuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMQp9"}}}
+, {"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": "14", "sha256": "1wwinhlg9yi9sr3kh0cpv10ck3cdjd9z4gwch9npfj79rmd7z1kl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJsdWV0b290aCBiYXR0ZXJ5IGluZGljYXRvciIsCiAgIm5hbWUiOiAiQmx1ZXRvb3RoIGJhdHRlcnkgaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL01pY2hhbFcvZ25vbWUtYmx1ZXRvb3RoLWJhdHRlcnktaW5kaWNhdG9yIiwKICAidXVpZCI6ICJibHVldG9vdGgtYmF0dGVyeUBtaWNoYWx3LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "40": {"version": "14", "sha256": "1wwinhlg9yi9sr3kh0cpv10ck3cdjd9z4gwch9npfj79rmd7z1kl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJsdWV0b290aCBiYXR0ZXJ5IGluZGljYXRvciIsCiAgIm5hbWUiOiAiQmx1ZXRvb3RoIGJhdHRlcnkgaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL01pY2hhbFcvZ25vbWUtYmx1ZXRvb3RoLWJhdHRlcnktaW5kaWNhdG9yIiwKICAidXVpZCI6ICJibHVldG9vdGgtYmF0dGVyeUBtaWNoYWx3LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}}}
 , {"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": "2", "sha256": "1vas3mvgmi28dc3lzghbwgp66p0daa1kc4m8ayr6dmc618ry2nj0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgSVAgYWRkcmVzc2VzIGZvciBMQU4sIFdBTiBJUHY2IGFuZCBWUE4gaW4gdGhlIEdOT01FIHBhbmVsLiBDbGljayBvbiB0aGUgYWRkcmVzcyB0byBjeWNsZSB0cm91Z2ggZGlmZmVyZW50IGludGVyZmFjZXMuIiwKICAibmFtZSI6ICJBbGwgSVAgQWRkcmVzc2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcGhhdmVrZXMvZ25vbWUtZXh0ZW5zaW9uLWFsbC1pcC1hZGRyZXNzZXMiLAogICJ1dWlkIjogImdub21lLWV4dGVuc2lvbi1hbGwtaXAtYWRkcmVzc2VzQGhhdmVrZXMuZXUiLAogICJ2ZXJzaW9uIjogMgp9"}}}
-, {"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": "2", "sha256": "1cdg8mzp29l1jv25cb5wdikriphbknrkfi3g2zi432js083wi8j7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1lbnQiOiAiQ3VzdG9taXplIHRoZSBhcHBsaWNhdGlvbiBncmlkIHZpZXcuIiwKICAiZGVzY3JpcHRpb24iOiAiQ3VzdG9taXplIHRoZSBhcHBsaWNhdGlvbiBncmlkIHZpZXcuXG5cblNldCB0aGUgcm93cywgY29sdW1ucyBhbmQgdGhlIGFwcCBpY29uIHNpemUgZm9yIGEgcGFydGljdWxhciBjb25maWd1cmF0aW9uIHRvIHdvcmsuXG5JZiB0aGUgc2NyZWVuIHNwYWNlIGlzIG91dCBudW1iZXJlZCwgcmVkdWNlIHRoZSBpY29uIHNpemUgdG8gZml0IGFsbCB0aGUgcm93cyBhbmQgY29sdW1ucy5cbk9yIHJlZHVjZSB0aGUgbnVtYmVyIG9mIHJvd3MgYW5kIGNvbHVtbnMuXG5cblByZXNzIHRoZSBSZWZyZXNoIGJ1dHRvbiBvbiB0aGUgbGVmdCBvZiBoZWFkZXIgYmFyIHRvIGFwcGx5IGNoYW5nZXMiLAogICJuYW1lIjogIkFwcCBHcmlkIFR3ZWFrcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hcHAtZ3JpZC10d2Vha3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAic3RhdHVzIjogIiAiLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NlbGVuaXVtLUgvQXBwLUdyaWQtVHdlYWtzIiwKICAidXVpZCI6ICJhcHAtZ3JpZC10d2Vha3NAU2VsZW5pdW0tSCIsCiAgInZlcnNpb24iOiAyCn0="}}}
-, {"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": "54", "sha256": "058nbfv1libk6gjkdd7lr4imm225s25vp2ick5w0jwglszmc084x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBQZXJzaXN0ZW50IHdpbmRvdyBwcmV2aWV3IHdpdGggcmlnaHQtY2xpY2sgKHJpZ2h0LWNsaWNrIGFnYWluIG9yIGNsaWNrIG9uIHByZXZpZXcgdG8gY2xvc2UgaXQpLiBZb3UgY2FuIG1vdmUgdGhpcyBwcmV2aWV3IGFueXdoZXJlLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gU2V0dGluZ3MgaW4gcHJlZmVyZW5jZXMgVUkuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuXG5cbiBDaGFuZ2Vsb2c6IGh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2JhYmFyL2lzc3Vlcy8yIiwKICAibmFtZSI6ICJCYUJhciBUYXNrIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2JhYmFyIiwKICAidXVpZCI6ICJiYWJhckBmdGh4IiwKICAidmVyc2lvbiI6IDU0Cn0="}, "40": {"version": "54", "sha256": "058nbfv1libk6gjkdd7lr4imm225s25vp2ick5w0jwglszmc084x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBQZXJzaXN0ZW50IHdpbmRvdyBwcmV2aWV3IHdpdGggcmlnaHQtY2xpY2sgKHJpZ2h0LWNsaWNrIGFnYWluIG9yIGNsaWNrIG9uIHByZXZpZXcgdG8gY2xvc2UgaXQpLiBZb3UgY2FuIG1vdmUgdGhpcyBwcmV2aWV3IGFueXdoZXJlLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gU2V0dGluZ3MgaW4gcHJlZmVyZW5jZXMgVUkuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuXG5cbiBDaGFuZ2Vsb2c6IGh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2JhYmFyL2lzc3Vlcy8yIiwKICAibmFtZSI6ICJCYUJhciBUYXNrIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2JhYmFyIiwKICAidXVpZCI6ICJiYWJhckBmdGh4IiwKICAidmVyc2lvbiI6IDU0Cn0="}}}
-, {"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": "3", "sha256": "18nbf68r84ynbf9j2664lgchvcrs275knik9xwbysc2a2b1h6i1x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktpdHNjaCBpcyBhIGNvbGxlY3Rpb24gb2YgY2hlYXAsIHBvcHVsYXIsIGFuZCBtYXJrZXRhYmxlIGltcHJvdmVtZW50cyB0byBHbm9tZS4gT25lIGNvdWxkIGNvbnNpZGVyIGl0IGFwcGx5aW5nIGEgY29zbWV0aWMgc3VyZ2VyeSB0byBHbm9tZS5cblxuS2l0c2NoIGNhbiBlYXNpbHkgYmUgY29uZmlndXJlZCBhbmQgb2ZmZXJzIHRoZSBmb2xsb3dpbmcgZmVhdHVyZXM6XG4tIHJlbW92ZSBhcHBsaWNhdGlvbiBtZW51IGZyb20gdGhlIHRvcCBiYXJcbi0gcmVtb3ZlIHRoZSBhY3Rpdml0eSBidXR0b24gZnJvbSB0aGUgdG9wIGJhclxuLSBwZXJpb2RpY2FsbHkgY2hhbmdlIHRoZSBiYWNrZ3JvdW5kIHBpY3R1cmVcblxuVGhpcyBleHRlbnNpb24gZG9lcyBub3QgY29tZSB3aXRoIGFueSBidXR0b24gb24gdGhlIHBhbmVsLiBWaXNpdCB0aGUgd2Vic2l0ZSBmb3IgYSBkb2N1bWVudGF0aW9uLiIsCiAgIm5hbWUiOiAiS2l0c2NoIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmtpdHNjaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VudGU3Ni9raXRzY2gvIiwKICAidXVpZCI6ICJraXRzY2hAZm9wZG9vZGxlLm5ldCIsCiAgInZlcnNpb24iOiAzCn0="}}}
+, {"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\n\nIn case of any errors due to update, Please try resetting the extension.  Reset button is present in Extension Preferences window in Top Right Application Menu > Preferences > Reset App Grid Tweaks Extension.  ", "link": "https://extensions.gnome.org/extension/3997/app-grid-tweaks/", "shell_version_map": {"38": {"version": "3", "sha256": "1zszxj4d4vdahc369jsk1544f6zrjnilpxa4ihdfx6ci3rgc16p6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1lbnQiOiAiQ3VzdG9taXplIHRoZSBhcHBsaWNhdGlvbiBncmlkIHZpZXcuIiwKICAiZGVzY3JpcHRpb24iOiAiQ3VzdG9taXplIHRoZSBhcHBsaWNhdGlvbiBncmlkIHZpZXcuXG5cblNldCB0aGUgcm93cywgY29sdW1ucyBhbmQgdGhlIGFwcCBpY29uIHNpemUgZm9yIGEgcGFydGljdWxhciBjb25maWd1cmF0aW9uIHRvIHdvcmsuXG5JZiB0aGUgc2NyZWVuIHNwYWNlIGlzIG91dCBudW1iZXJlZCwgcmVkdWNlIHRoZSBpY29uIHNpemUgdG8gZml0IGFsbCB0aGUgcm93cyBhbmQgY29sdW1ucy5cbk9yIHJlZHVjZSB0aGUgbnVtYmVyIG9mIHJvd3MgYW5kIGNvbHVtbnMuXG5cblByZXNzIHRoZSBSZWZyZXNoIGJ1dHRvbiBvbiB0aGUgbGVmdCBvZiBoZWFkZXIgYmFyIHRvIGFwcGx5IGNoYW5nZXNcblxuSW4gY2FzZSBvZiBhbnkgZXJyb3JzIGR1ZSB0byB1cGRhdGUsIFBsZWFzZSB0cnkgcmVzZXR0aW5nIHRoZSBleHRlbnNpb24uICBSZXNldCBidXR0b24gaXMgcHJlc2VudCBpbiBFeHRlbnNpb24gUHJlZmVyZW5jZXMgd2luZG93IGluIFRvcCBSaWdodCBBcHBsaWNhdGlvbiBNZW51ID4gUHJlZmVyZW5jZXMgPiBSZXNldCBBcHAgR3JpZCBUd2Vha3MgRXh0ZW5zaW9uLiAgIiwKICAibmFtZSI6ICJBcHAgR3JpZCBUd2Vha3MiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwLWdyaWQtdHdlYWtzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJzdGF0dXMiOiAiIiwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TZWxlbml1bS1IL0FwcC1HcmlkLVR3ZWFrcyIsCiAgInV1aWQiOiAiYXBwLWdyaWQtdHdlYWtzQFNlbGVuaXVtLUgiLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "3", "sha256": "1zszxj4d4vdahc369jsk1544f6zrjnilpxa4ihdfx6ci3rgc16p6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1lbnQiOiAiQ3VzdG9taXplIHRoZSBhcHBsaWNhdGlvbiBncmlkIHZpZXcuIiwKICAiZGVzY3JpcHRpb24iOiAiQ3VzdG9taXplIHRoZSBhcHBsaWNhdGlvbiBncmlkIHZpZXcuXG5cblNldCB0aGUgcm93cywgY29sdW1ucyBhbmQgdGhlIGFwcCBpY29uIHNpemUgZm9yIGEgcGFydGljdWxhciBjb25maWd1cmF0aW9uIHRvIHdvcmsuXG5JZiB0aGUgc2NyZWVuIHNwYWNlIGlzIG91dCBudW1iZXJlZCwgcmVkdWNlIHRoZSBpY29uIHNpemUgdG8gZml0IGFsbCB0aGUgcm93cyBhbmQgY29sdW1ucy5cbk9yIHJlZHVjZSB0aGUgbnVtYmVyIG9mIHJvd3MgYW5kIGNvbHVtbnMuXG5cblByZXNzIHRoZSBSZWZyZXNoIGJ1dHRvbiBvbiB0aGUgbGVmdCBvZiBoZWFkZXIgYmFyIHRvIGFwcGx5IGNoYW5nZXNcblxuSW4gY2FzZSBvZiBhbnkgZXJyb3JzIGR1ZSB0byB1cGRhdGUsIFBsZWFzZSB0cnkgcmVzZXR0aW5nIHRoZSBleHRlbnNpb24uICBSZXNldCBidXR0b24gaXMgcHJlc2VudCBpbiBFeHRlbnNpb24gUHJlZmVyZW5jZXMgd2luZG93IGluIFRvcCBSaWdodCBBcHBsaWNhdGlvbiBNZW51ID4gUHJlZmVyZW5jZXMgPiBSZXNldCBBcHAgR3JpZCBUd2Vha3MgRXh0ZW5zaW9uLiAgIiwKICAibmFtZSI6ICJBcHAgR3JpZCBUd2Vha3MiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwLWdyaWQtdHdlYWtzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJzdGF0dXMiOiAiIiwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TZWxlbml1bS1IL0FwcC1HcmlkLVR3ZWFrcyIsCiAgInV1aWQiOiAiYXBwLWdyaWQtdHdlYWtzQFNlbGVuaXVtLUgiLAogICJ2ZXJzaW9uIjogMwp9"}}}
+, {"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": "55", "sha256": "069zl8sx9fma5na49hpn2904lrmcykiavk4dnm519n73bzz597mh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBQZXJzaXN0ZW50IHdpbmRvdyBwcmV2aWV3IHdpdGggcmlnaHQtY2xpY2sgKHJpZ2h0LWNsaWNrIGFnYWluIG9yIGNsaWNrIG9uIHByZXZpZXcgdG8gY2xvc2UgaXQpLiBZb3UgY2FuIG1vdmUgdGhpcyBwcmV2aWV3IGFueXdoZXJlLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gU2V0dGluZ3MgaW4gcHJlZmVyZW5jZXMgVUkuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuXG5cbiBDaGFuZ2Vsb2c6IGh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2JhYmFyL2lzc3Vlcy8yIiwKICAibmFtZSI6ICJCYUJhciBUYXNrIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2JhYmFyIiwKICAidXVpZCI6ICJiYWJhckBmdGh4IiwKICAidmVyc2lvbiI6IDU1Cn0="}, "40": {"version": "55", "sha256": "069zl8sx9fma5na49hpn2904lrmcykiavk4dnm519n73bzz597mh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBQZXJzaXN0ZW50IHdpbmRvdyBwcmV2aWV3IHdpdGggcmlnaHQtY2xpY2sgKHJpZ2h0LWNsaWNrIGFnYWluIG9yIGNsaWNrIG9uIHByZXZpZXcgdG8gY2xvc2UgaXQpLiBZb3UgY2FuIG1vdmUgdGhpcyBwcmV2aWV3IGFueXdoZXJlLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gU2V0dGluZ3MgaW4gcHJlZmVyZW5jZXMgVUkuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuXG5cbiBDaGFuZ2Vsb2c6IGh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2JhYmFyL2lzc3Vlcy8yIiwKICAibmFtZSI6ICJCYUJhciBUYXNrIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2JhYmFyIiwKICAidXVpZCI6ICJiYWJhckBmdGh4IiwKICAidmVyc2lvbiI6IDU1Cn0="}}}
+, {"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 lyric of the playing song 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": "015w7abqa8zqh7vc2hln61i859mfac7lcjp8lvccm9jbakdxqpvn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgbHlyaWMgb2YgdGhlIHBsYXlpbmcgc29uZyBvbiB0aGUgZGVza3RvcFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkZXNrdG9wLWx5cmljIiwKICAibmFtZSI6ICJEZXNrdG9wIEx5cmljIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRlc2t0b3AtbHlyaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2Rlc2t0b3AtbHlyaWMiLAogICJ1dWlkIjogImRlc2t0b3AtbHlyaWNAdHViZXJyeSIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "6", "sha256": "0mvc180z8kc56vzrg6fb5vvqqi4w183383wiqmdb1l5zks54fahg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgbHlyaWMgb2YgdGhlIHBsYXlpbmcgc29uZyBvbiB0aGUgZGVza3RvcFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkZXNrdG9wLWx5cmljIiwKICAibmFtZSI6ICJEZXNrdG9wIEx5cmljIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRlc2t0b3AtbHlyaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9kZXNrdG9wLWx5cmljIiwKICAidXVpZCI6ICJkZXNrdG9wLWx5cmljQHR1YmVycnkiLAogICJ2ZXJzaW9uIjogNgp9"}}}
+, {"uuid": "desktop-lyric@tuberry", "name": "Desktop Lyric", "pname": "desktop-lyric", "description": "Show lyric of the playing song 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": "015w7abqa8zqh7vc2hln61i859mfac7lcjp8lvccm9jbakdxqpvn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgbHlyaWMgb2YgdGhlIHBsYXlpbmcgc29uZyBvbiB0aGUgZGVza3RvcFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkZXNrdG9wLWx5cmljIiwKICAibmFtZSI6ICJEZXNrdG9wIEx5cmljIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRlc2t0b3AtbHlyaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2Rlc2t0b3AtbHlyaWMiLAogICJ1dWlkIjogImRlc2t0b3AtbHlyaWNAdHViZXJyeSIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "7", "sha256": "13vhzga43d4byrp98nj2v6vf8lll1c6gzkrrna32g8amp0vhkly8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgbHlyaWMgb2YgdGhlIHBsYXlpbmcgc29uZyBvbiB0aGUgZGVza3RvcFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkZXNrdG9wLWx5cmljIiwKICAibmFtZSI6ICJEZXNrdG9wIEx5cmljIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRlc2t0b3AtbHlyaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9kZXNrdG9wLWx5cmljIiwKICAidXVpZCI6ICJkZXNrdG9wLWx5cmljQHR1YmVycnkiLAogICJ2ZXJzaW9uIjogNwp9"}}}
 , {"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": "5", "sha256": "13fg9v0pxxrnxgwd7xhy8wi6lxd7h3y88v2g0zpr1p9lprgh4cl6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsdC9TdXBlcitUYWIgY2FuIGFsc28gYmUgbmF2aWdhdGVkIHdpdGggV0FTRCBhbmQgaGprbC4gUSBqdXN0IGNsb3NlcyB0aGUgc2VsZWN0ZWQgaXRlbSBhbmQgb25seSB0aGUgZmlyc3Qgd2luZG93IHdpbGwgYmUgcmFpc2VkIG9uIGFwcCBhY3RpdmF0aW9uLiBPcHRpb25hbGx5LCBvbmx5IHNob3cgd2luZG93cyBmcm9tIHRoZSBjdXJyZW50IHdvcmtzcGFjZSBvciBtb25pdG9yIGFuZCByZW1vdmUgdGhlIHNsaWdodCBwb3B1cCBkZWxheS4iLAogICJuYW1lIjogIkFsdFRhYiBNb2QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTGVsZWF0L0FsdFRhYi1Nb2QiLAogICJ1dWlkIjogImFsdHRhYi1tb2RAbGVsZWF0LW9uLWdpdGh1YiIsCiAgInZlcnNpb24iOiA1Cn0="}, "40": {"version": "5", "sha256": "13fg9v0pxxrnxgwd7xhy8wi6lxd7h3y88v2g0zpr1p9lprgh4cl6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsdC9TdXBlcitUYWIgY2FuIGFsc28gYmUgbmF2aWdhdGVkIHdpdGggV0FTRCBhbmQgaGprbC4gUSBqdXN0IGNsb3NlcyB0aGUgc2VsZWN0ZWQgaXRlbSBhbmQgb25seSB0aGUgZmlyc3Qgd2luZG93IHdpbGwgYmUgcmFpc2VkIG9uIGFwcCBhY3RpdmF0aW9uLiBPcHRpb25hbGx5LCBvbmx5IHNob3cgd2luZG93cyBmcm9tIHRoZSBjdXJyZW50IHdvcmtzcGFjZSBvciBtb25pdG9yIGFuZCByZW1vdmUgdGhlIHNsaWdodCBwb3B1cCBkZWxheS4iLAogICJuYW1lIjogIkFsdFRhYiBNb2QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTGVsZWF0L0FsdFRhYi1Nb2QiLAogICJ1dWlkIjogImFsdHRhYi1tb2RAbGVsZWF0LW9uLWdpdGh1YiIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"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": "Gnome Bedtime", "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\n- Control the On Demand button visibility and position in Top Bar\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 (applies to version 3.0 and beyond):\n\nbash -c 'schema_id=org.gnome.shell.extensions.gnomebedtime; 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;'", "link": "https://extensions.gnome.org/extension/4012/gnome-bedtime/", "shell_version_map": {"38": {"version": "4", "sha256": "18g92v2q8idmj077rmfzxpx4zcbc36f2ywrc4713r0z86yipwly7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhleSBHbm9tZSwgaXQncyBiZWR0aW1lISBDb252ZXJ0cyB0byBncmF5c2NhbGUgdGhlIGVudGlyZSBHbm9tZSB3b3Jrc3BhY2UgYnkgdXNpbmcgYSBzbW9vdGggdHJhbnNpdGlvbi4gQmVzdCB0byB1c2UgZHVyaW5nIGV2ZW5pbmcvbmlnaHQuXG5cblRoaXMgYmVoYXZpb3VyIGlzIHNpbWlsYXIgdG8gQW5kcm9pZCdzIGJlZHRpbWUgbW9kZSB3aGljaCBjb252ZXJ0cyB0aGUgcGhvbmUgc2NyZWVuIHRvIGdyYXlzY2FsZS4gSXQgc2hvdWxkIHNvbWV3aGF0IG1ha2UgeW91ciBkZXZpY2UgbGVzcyBhcHBlYWxpbmcgYW5kIGxpbWl0IHRoZSB1c2FnZSBvZiBpdCBiZWZvcmUgYmVkdGltZS4gT24gbXkgc2lkZSwgYXQgbGVhc3QsIGl0IHN0aWxsIHJlcXVpcmVzIGEgZmFpciBhbW91bnQgb2Ygc2VsZiBjb250cm9sIGluIG9yZGVyIHRvIG1ha2UgdGhhdCBoYXBwZW4uXG5cblRoZSBleHRlbnNpb24gaGFzIGEgbmljZSBTZXR0aW5ncyBVSSB3aGVyZSB5b3UgY2FuIGN1c3RvbWl6ZSBpdCB0byB5b3VyIGxpa2luZzpcbi0gU2V0IGFuIGF1dG9tYXRpYyBzY2hlZHVsZSBmb3IgdHVybmluZyBvbi9vZmYgdGhlIEJlZHRpbWUgTW9kZVxuLSBBZGQgYW4gT24gRGVtYW5kIGJ1dHRvbiB0byBUb3AgQmFyIG9yIFN5c3RlbSBNZW51XG4tIENvbnRyb2wgdGhlIE9uIERlbWFuZCBidXR0b24gdmlzaWJpbGl0eSBhbmQgcG9zaXRpb24gaW4gVG9wIEJhclxuXG5JZiB5b3Ugd2FudCB0byB1c2UgYSBrZXlib2FyZCBzaG9ydGN1dCBpbiBvcmRlciB0byB0b2dnbGUgdGhlIEJlZHRpbWUgTW9kZSB0aGVuIHlvdSBjYW4gdXNlIHRoaXMgY29tbWFuZCBmb3IgdGhlIHNob3J0Y3V0IChhcHBsaWVzIHRvIHZlcnNpb24gMy4wIGFuZCBiZXlvbmQpOlxuXG5iYXNoIC1jICdzY2hlbWFfaWQ9b3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ25vbWViZWR0aW1lOyBzY2hlbWFfZGlyPX4vLmxvY2FsL3NoYXJlL2dub21lLXNoZWxsL2V4dGVuc2lvbnMvZ25vbWViZWR0aW1lQGlvbnV0Ym9ydGlzLmdtYWlsLmNvbS9zY2hlbWFzLzsgaWYgW1sgJChnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgZ2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSkgPT0gXCJ0cnVlXCIgXV07IHRoZW4gdHVybl9vbj1mYWxzZTsgZWxzZSB0dXJuX29uPXRydWU7IGZpOyBnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgc2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSAkdHVybl9vbjsnIiwKICAibmFtZSI6ICJHbm9tZSBCZWR0aW1lIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdub21lYmVkdGltZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pb251dGJvcnRpcy9nbm9tZS1iZWR0aW1lIiwKICAidXVpZCI6ICJnbm9tZWJlZHRpbWVAaW9udXRib3J0aXMuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "4", "sha256": "18g92v2q8idmj077rmfzxpx4zcbc36f2ywrc4713r0z86yipwly7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhleSBHbm9tZSwgaXQncyBiZWR0aW1lISBDb252ZXJ0cyB0byBncmF5c2NhbGUgdGhlIGVudGlyZSBHbm9tZSB3b3Jrc3BhY2UgYnkgdXNpbmcgYSBzbW9vdGggdHJhbnNpdGlvbi4gQmVzdCB0byB1c2UgZHVyaW5nIGV2ZW5pbmcvbmlnaHQuXG5cblRoaXMgYmVoYXZpb3VyIGlzIHNpbWlsYXIgdG8gQW5kcm9pZCdzIGJlZHRpbWUgbW9kZSB3aGljaCBjb252ZXJ0cyB0aGUgcGhvbmUgc2NyZWVuIHRvIGdyYXlzY2FsZS4gSXQgc2hvdWxkIHNvbWV3aGF0IG1ha2UgeW91ciBkZXZpY2UgbGVzcyBhcHBlYWxpbmcgYW5kIGxpbWl0IHRoZSB1c2FnZSBvZiBpdCBiZWZvcmUgYmVkdGltZS4gT24gbXkgc2lkZSwgYXQgbGVhc3QsIGl0IHN0aWxsIHJlcXVpcmVzIGEgZmFpciBhbW91bnQgb2Ygc2VsZiBjb250cm9sIGluIG9yZGVyIHRvIG1ha2UgdGhhdCBoYXBwZW4uXG5cblRoZSBleHRlbnNpb24gaGFzIGEgbmljZSBTZXR0aW5ncyBVSSB3aGVyZSB5b3UgY2FuIGN1c3RvbWl6ZSBpdCB0byB5b3VyIGxpa2luZzpcbi0gU2V0IGFuIGF1dG9tYXRpYyBzY2hlZHVsZSBmb3IgdHVybmluZyBvbi9vZmYgdGhlIEJlZHRpbWUgTW9kZVxuLSBBZGQgYW4gT24gRGVtYW5kIGJ1dHRvbiB0byBUb3AgQmFyIG9yIFN5c3RlbSBNZW51XG4tIENvbnRyb2wgdGhlIE9uIERlbWFuZCBidXR0b24gdmlzaWJpbGl0eSBhbmQgcG9zaXRpb24gaW4gVG9wIEJhclxuXG5JZiB5b3Ugd2FudCB0byB1c2UgYSBrZXlib2FyZCBzaG9ydGN1dCBpbiBvcmRlciB0byB0b2dnbGUgdGhlIEJlZHRpbWUgTW9kZSB0aGVuIHlvdSBjYW4gdXNlIHRoaXMgY29tbWFuZCBmb3IgdGhlIHNob3J0Y3V0IChhcHBsaWVzIHRvIHZlcnNpb24gMy4wIGFuZCBiZXlvbmQpOlxuXG5iYXNoIC1jICdzY2hlbWFfaWQ9b3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ25vbWViZWR0aW1lOyBzY2hlbWFfZGlyPX4vLmxvY2FsL3NoYXJlL2dub21lLXNoZWxsL2V4dGVuc2lvbnMvZ25vbWViZWR0aW1lQGlvbnV0Ym9ydGlzLmdtYWlsLmNvbS9zY2hlbWFzLzsgaWYgW1sgJChnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgZ2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSkgPT0gXCJ0cnVlXCIgXV07IHRoZW4gdHVybl9vbj1mYWxzZTsgZWxzZSB0dXJuX29uPXRydWU7IGZpOyBnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgc2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSAkdHVybl9vbjsnIiwKICAibmFtZSI6ICJHbm9tZSBCZWR0aW1lIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdub21lYmVkdGltZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pb251dGJvcnRpcy9nbm9tZS1iZWR0aW1lIiwKICAidXVpZCI6ICJnbm9tZWJlZHRpbWVAaW9udXRib3J0aXMuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"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": "3", "sha256": "1n4ycw6yrf0aqczyvc5vdgxszcpa51xh2mzrs8sqs78wxdggzs89", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNsaWRlIDEgcGl4ZWwgYmFjayBhbmQgZm9ydGggaW4gdGhlIHRvcCBiYXIgYXMgYSB3b3JrYXJvdW5kIGZvciB2YXJpb3VzIGJ1Z3MgaW4gR05PTUUgU2hlbGwgYW5kL29yIE11dHRlci4iLAogICJuYW1lIjogIldhbmRlcmluZyBQaXhlbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2p1c3RpbnJkb25uZWxseS93YW5kZXJpbmctcGl4ZWwiLAogICJ1dWlkIjogIndhbmRlcmluZy1waXhlbEBqdXN0aW5yZG9ubmVsbHkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "3", "sha256": "1n4ycw6yrf0aqczyvc5vdgxszcpa51xh2mzrs8sqs78wxdggzs89", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNsaWRlIDEgcGl4ZWwgYmFjayBhbmQgZm9ydGggaW4gdGhlIHRvcCBiYXIgYXMgYSB3b3JrYXJvdW5kIGZvciB2YXJpb3VzIGJ1Z3MgaW4gR05PTUUgU2hlbGwgYW5kL29yIE11dHRlci4iLAogICJuYW1lIjogIldhbmRlcmluZyBQaXhlbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2p1c3RpbnJkb25uZWxseS93YW5kZXJpbmctcGl4ZWwiLAogICJ1dWlkIjogIndhbmRlcmluZy1waXhlbEBqdXN0aW5yZG9ubmVsbHkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"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/auto-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": "6", "sha256": "15m291jjqfrfcg79nlsqq8zcqp218qrakp3044ik9xjl00yhjf1b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBkZWZhdWx0IHNjcmVlbnNob3QgZGlyZWN0b3J5IGlzIH4vUGljdHVyZXMuIFRoaXMgZXh0ZW5zaW9uIGNoYW5nZXMgdGhhdCB0byB1c2Ugd2hhdGV2ZXIgaXMgc2V0IGlmIHlvdSB1c2VkIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC4gVGhpcyBjYW4gYmUgZm91bmQgaW4gdGhlIGRjb25mIHNldHRpbmc6IC9vcmcvZ25vbWUvZ25vbWUtc2NyZWVuc2hvdC9hdXRvLXNhdmUtZGlyZWN0b3J5LiBJZiB0aGF0IGRpcmVjdG9yeSBkb2Vzbid0IGV4aXN0LCB0aGUgZXh0ZW5zaW9uIHdpbGwgdXNlIHRoZSBIb21lIGRpcmVjdG9yeSBpbnN0ZWFkLlxuXG5Ob3RlOiBJZiB0aGUgZGNvbmYgc2V0dGluZyBkb2Vzbid0IGV4aXN0LCB5b3UgbmVlZCB0byBpbnN0YWxsIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC5cblxuVGhlIGlkZWEgd2FzIHRha2VuIGZyb20gdGhlIGV4dGVuc2lvbjogU2NyZWVuc2hvdCBMb2NhdGlvbnMuIiwKICAibmFtZSI6ICJTY3JlZW5zaG90IERpcmVjdG9yeSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic2NyZWVuc2hvdC1kaXJlY3RvcnlAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "6", "sha256": "15m291jjqfrfcg79nlsqq8zcqp218qrakp3044ik9xjl00yhjf1b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBkZWZhdWx0IHNjcmVlbnNob3QgZGlyZWN0b3J5IGlzIH4vUGljdHVyZXMuIFRoaXMgZXh0ZW5zaW9uIGNoYW5nZXMgdGhhdCB0byB1c2Ugd2hhdGV2ZXIgaXMgc2V0IGlmIHlvdSB1c2VkIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC4gVGhpcyBjYW4gYmUgZm91bmQgaW4gdGhlIGRjb25mIHNldHRpbmc6IC9vcmcvZ25vbWUvZ25vbWUtc2NyZWVuc2hvdC9hdXRvLXNhdmUtZGlyZWN0b3J5LiBJZiB0aGF0IGRpcmVjdG9yeSBkb2Vzbid0IGV4aXN0LCB0aGUgZXh0ZW5zaW9uIHdpbGwgdXNlIHRoZSBIb21lIGRpcmVjdG9yeSBpbnN0ZWFkLlxuXG5Ob3RlOiBJZiB0aGUgZGNvbmYgc2V0dGluZyBkb2Vzbid0IGV4aXN0LCB5b3UgbmVlZCB0byBpbnN0YWxsIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC5cblxuVGhlIGlkZWEgd2FzIHRha2VuIGZyb20gdGhlIGV4dGVuc2lvbjogU2NyZWVuc2hvdCBMb2NhdGlvbnMuIiwKICAibmFtZSI6ICJTY3JlZW5zaG90IERpcmVjdG9yeSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic2NyZWVuc2hvdC1kaXJlY3RvcnlAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogNgp9"}}}
-, {"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": "8", "sha256": "1qyk622i6rrbgn45frqgsrj5zcky7a0clkk89z5b89ckk5rqprhr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLjAiLAogICAgIjQwLjEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXgxMWdlc3R1cmVzIiwKICAidXVpZCI6ICJ4MTFnZXN0dXJlc0Bqb3NlZXhwb3NpdG8uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "40": {"version": "8", "sha256": "1qyk622i6rrbgn45frqgsrj5zcky7a0clkk89z5b89ckk5rqprhr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLjAiLAogICAgIjQwLjEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXgxMWdlc3R1cmVzIiwKICAidXVpZCI6ICJ4MTFnZXN0dXJlc0Bqb3NlZXhwb3NpdG8uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
+, {"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": "10", "sha256": "1mccw6lpilrlrprp3vv21gf1vfabn6liszv27mwfbh55f5d58qg2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vSm9zZUV4cG9zaXRvL2dub21lLXNoZWxsLWV4dGVuc2lvbi14MTFnZXN0dXJlcyIsCiAgInV1aWQiOiAieDExZ2VzdHVyZXNAam9zZWV4cG9zaXRvLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMAp9"}, "40": {"version": "10", "sha256": "1mccw6lpilrlrprp3vv21gf1vfabn6liszv27mwfbh55f5d58qg2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vSm9zZUV4cG9zaXRvL2dub21lLXNoZWxsLWV4dGVuc2lvbi14MTFnZXN0dXJlcyIsCiAgInV1aWQiOiAieDExZ2VzdHVyZXNAam9zZWV4cG9zaXRvLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMAp9"}}}
 , {"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": "1", "sha256": "1z4nrv0szs8g4jp84fimp0dnljlz8qqjkd509pl3prqdbm97hwzy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIG1ha2VzIFhLQiBzaG9ydGN1dHMgdG8gc3dpdGNoIGtleWJvYXJkIGxheW91dHMgKHN1Y2ggYXMgQ2FwcyBMb2NrLCBDdHJsK1NoaWZ0LCBldGMuKSBjeWNsZSBiZXR3ZWVuIHRoZSB0d28gZmlyc3QgbGF5b3V0cy4gVGhlIG90aGVyIG9uZXMgc3RpbGwgY2FuIGJlIHNlbGVjdGVkIHZpYSB0aGUgbWVudSBvciB1c2luZyBHTk9NRSdzIHNob3J0Y3V0cyAoU3VwZXIrU3BhY2UsIFNoaWZ0K1N1cGVyK1NwYWNlKS4gSXQncyB1c2VmdWwgd2hlbiB5b3UgaGF2ZSB0d28gcHJpbWFyeSBsYXlvdXRzIGFuZCBtb3JlIGFkZGl0aW9uYWwsIHdoaWNoIGFyZSB1c2VkIG1vcmUgcmFyZWx5LiIsCiAgIm5hbWUiOiAiU3dpdGNoIFR3byBMYXlvdXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInN3aXRjaHR3b2xheW91dHNAcXRtYXguZGV2IiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
+, {"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": "2", "sha256": "16cz9fx4sgjp58x4agxpbskzqp8a1s6w9w5kaxpm6fjiakw896vz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIG1ha2VzIFhLQiBzaG9ydGN1dHMgdG8gc3dpdGNoIGtleWJvYXJkIGxheW91dHMgKHN1Y2ggYXMgQ2FwcyBMb2NrLCBDdHJsK1NoaWZ0LCBldGMuKSBjeWNsZSBiZXR3ZWVuIHRoZSB0d28gZmlyc3QgbGF5b3V0cy4gVGhlIG90aGVyIG9uZXMgc3RpbGwgY2FuIGJlIHNlbGVjdGVkIHZpYSB0aGUgbWVudSBvciB1c2luZyBHTk9NRSdzIHNob3J0Y3V0cyAoU3VwZXIrU3BhY2UsIFNoaWZ0K1N1cGVyK1NwYWNlKS4gSXQncyB1c2VmdWwgd2hlbiB5b3UgaGF2ZSB0d28gcHJpbWFyeSBsYXlvdXRzIGFuZCBtb3JlIGFkZGl0aW9uYWwsIHdoaWNoIGFyZSB1c2VkIG1vcmUgcmFyZWx5LiIsCiAgIm5hbWUiOiAiU3dpdGNoIFR3byBMYXlvdXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJzd2l0Y2h0d29sYXlvdXRzQHF0bWF4LmRldiIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "16cz9fx4sgjp58x4agxpbskzqp8a1s6w9w5kaxpm6fjiakw896vz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIG1ha2VzIFhLQiBzaG9ydGN1dHMgdG8gc3dpdGNoIGtleWJvYXJkIGxheW91dHMgKHN1Y2ggYXMgQ2FwcyBMb2NrLCBDdHJsK1NoaWZ0LCBldGMuKSBjeWNsZSBiZXR3ZWVuIHRoZSB0d28gZmlyc3QgbGF5b3V0cy4gVGhlIG90aGVyIG9uZXMgc3RpbGwgY2FuIGJlIHNlbGVjdGVkIHZpYSB0aGUgbWVudSBvciB1c2luZyBHTk9NRSdzIHNob3J0Y3V0cyAoU3VwZXIrU3BhY2UsIFNoaWZ0K1N1cGVyK1NwYWNlKS4gSXQncyB1c2VmdWwgd2hlbiB5b3UgaGF2ZSB0d28gcHJpbWFyeSBsYXlvdXRzIGFuZCBtb3JlIGFkZGl0aW9uYWwsIHdoaWNoIGFyZSB1c2VkIG1vcmUgcmFyZWx5LiIsCiAgIm5hbWUiOiAiU3dpdGNoIFR3byBMYXlvdXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJzd2l0Y2h0d29sYXlvdXRzQHF0bWF4LmRldiIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "notification-dismiss@kronosoul.xyz", "name": "Dismiss Notifications on Right Click", "pname": "dismiss-notifications-on-right-click", "description": "Simple extension that removes notification popups when they are right clicked.", "link": "https://extensions.gnome.org/extension/4048/dismiss-notifications-on-right-click/", "shell_version_map": {"38": {"version": "1", "sha256": "19pdz3lg1ybmgvpahfwzzhwk8fyhm1sr3wawddz5z66i22spcgjj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwubm90aWZpY2F0aW9uLWRpc21pc3MiLAogICJkZXNjcmlwdGlvbiI6ICJTaW1wbGUgZXh0ZW5zaW9uIHRoYXQgcmVtb3ZlcyBub3RpZmljYXRpb24gcG9wdXBzIHdoZW4gdGhleSBhcmUgcmlnaHQgY2xpY2tlZC4iLAogICJleHRlbnNpb24taWQiOiAiZ2R0b29scyIsCiAgImdldHRleHQtZG9tYWluIjogIndvcmtzZXRzIiwKICAibmFtZSI6ICJEaXNtaXNzIE5vdGlmaWNhdGlvbnMgb24gUmlnaHQgQ2xpY2siLAogICJvcmlnaW5hbC1hdXRob3IiOiAiYWRtaW5Aa3Jvbm9zb3VsLnh5eiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4wIiwKICAgICIzLjEwIiwKICAgICIzLjEyIiwKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYmxpcGsvIiwKICAidXVpZCI6ICJub3RpZmljYXRpb24tZGlzbWlzc0Brcm9ub3NvdWwueHl6IiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
+, {"uuid": "disable-gestures-2021@verycrazydog.gmail.com", "name": "Disable Gestures 2021", "pname": "disable-gestures-2021", "description": "Disable all GNOME built-in gestures. Useful for kiosks and touch screen apps.", "link": "https://extensions.gnome.org/extension/4049/disable-gestures-2021/", "shell_version_map": {"40": {"version": "2", "sha256": "006xbxws1cvflsis129hl9sca22nig5prwaxfysxi7m13786rp0h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGUgYWxsIEdOT01FIGJ1aWx0LWluIGdlc3R1cmVzLiBVc2VmdWwgZm9yIGtpb3NrcyBhbmQgdG91Y2ggc2NyZWVuIGFwcHMuIiwKICAibmFtZSI6ICJEaXNhYmxlIEdlc3R1cmVzIDIwMjEiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5Q3JhenlEb2cvZ25vbWUtZGlzYWJsZS1nZXN0dXJlcyIsCiAgInV1aWQiOiAiZGlzYWJsZS1nZXN0dXJlcy0yMDIxQHZlcnljcmF6eWRvZy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}}}
 , {"uuid": "pi-hole@fnxweb.com", "name": "pi-hole", "pname": "pi-hole", "description": "Status and basic controls of local Pi-Hole", "link": "https://extensions.gnome.org/extension/4051/pi-hole/", "shell_version_map": {"38": {"version": "1", "sha256": "0m19lv8zfhh8vqn0ln4a8g4g4hw9p6h98gb656vb0hblp5gsycfm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN0YXR1cyBhbmQgYmFzaWMgY29udHJvbHMgb2YgbG9jYWwgUGktSG9sZSIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1mbnh3ZWItcGktaG9sZSIsCiAgIm5hbWUiOiAicGktaG9sZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5mbnh3ZWItcGktaG9sZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ZueHdlYi9nbm9tZS1zaGVsbC1waS1ob2xlIiwKICAidXVpZCI6ICJwaS1ob2xlQGZueHdlYi5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"uuid": "miniCal3@mtharpe", "name": "Minimalist Calendar 3", "pname": "minimalist-calendar-3", "description": "Remove event list and clock/calendar app buttons from the calendar window. This is just an updated version of v2 by breiq", "link": "https://extensions.gnome.org/extension/4052/minimalist-calendar-3/", "shell_version_map": {"38": {"version": "2", "sha256": "19y4c1r52j0iabkib6pm65gslrl65l0ckhglqy8gxiw9hr7a0lwk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSBldmVudCBsaXN0IGFuZCBjbG9jay9jYWxlbmRhciBhcHAgYnV0dG9ucyBmcm9tIHRoZSBjYWxlbmRhciB3aW5kb3cuIFRoaXMgaXMganVzdCBhbiB1cGRhdGVkIHZlcnNpb24gb2YgdjIgYnkgYnJlaXEiLAogICJuYW1lIjogIk1pbmltYWxpc3QgQ2FsZW5kYXIgMyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tdGhhcnBlL2dub21lLW1pbkNhbDMtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJtaW5pQ2FsM0BtdGhhcnBlIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "19y4c1r52j0iabkib6pm65gslrl65l0ckhglqy8gxiw9hr7a0lwk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSBldmVudCBsaXN0IGFuZCBjbG9jay9jYWxlbmRhciBhcHAgYnV0dG9ucyBmcm9tIHRoZSBjYWxlbmRhciB3aW5kb3cuIFRoaXMgaXMganVzdCBhbiB1cGRhdGVkIHZlcnNpb24gb2YgdjIgYnkgYnJlaXEiLAogICJuYW1lIjogIk1pbmltYWxpc3QgQ2FsZW5kYXIgMyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tdGhhcnBlL2dub21lLW1pbkNhbDMtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJtaW5pQ2FsM0BtdGhhcnBlIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
-, {"uuid": "spotify-artwork-fixer@wjt.me.uk", "name": "Spotify Artwork Fixer", "pname": "spotify-artwork-fixer", "description": "Fix Spotify artwork in media notification", "link": "https://extensions.gnome.org/extension/4055/spotify-artwork-fixer/", "shell_version_map": {"38": {"version": "2", "sha256": "19n0j3xd9x5vcd45nawhdic7axv5188clwdg883qb4bbkfdm41zl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZpeCBTcG90aWZ5IGFydHdvcmsgaW4gbWVkaWEgbm90aWZpY2F0aW9uIiwKICAibmFtZSI6ICJTcG90aWZ5IEFydHdvcmsgRml4ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic3BvdGlmeS1hcnR3b3JrLWZpeGVyQHdqdC5tZS51ayIsCiAgInZlcnNpb24iOiAyCn0="}}}
-, {"uuid": "custom-vpn-toggler@giteduberger.fr", "name": "Custom VPN Toggler (and indicator)", "pname": "custom-vpn-toggler", "description": "Custom VPN Toggler (and indicator) allows to see the status of a VPN (with its icon), see IP address associated and permit to start and stop VPN (from a menu).\n\nThis plugin required an additional script to interact with VPN. \nAn example for netExtender is available on extension repository. \nFollow the link to Extension Web Site and see README.", "link": "https://extensions.gnome.org/extension/4061/custom-vpn-toggler/", "shell_version_map": {"38": {"version": "4", "sha256": "0i5dvcpsqif1bpilv974wfnwg9l79j89fzr5vy67wlcizid6z31i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbSBWUE4gVG9nZ2xlciAoYW5kIGluZGljYXRvcikgYWxsb3dzIHRvIHNlZSB0aGUgc3RhdHVzIG9mIGEgVlBOICh3aXRoIGl0cyBpY29uKSwgc2VlIElQIGFkZHJlc3MgYXNzb2NpYXRlZCBhbmQgcGVybWl0IHRvIHN0YXJ0IGFuZCBzdG9wIFZQTiAoZnJvbSBhIG1lbnUpLlxuXG5UaGlzIHBsdWdpbiByZXF1aXJlZCBhbiBhZGRpdGlvbmFsIHNjcmlwdCB0byBpbnRlcmFjdCB3aXRoIFZQTi4gXG5BbiBleGFtcGxlIGZvciBuZXRFeHRlbmRlciBpcyBhdmFpbGFibGUgb24gZXh0ZW5zaW9uIHJlcG9zaXRvcnkuIFxuRm9sbG93IHRoZSBsaW5rIHRvIEV4dGVuc2lvbiBXZWIgU2l0ZSBhbmQgc2VlIFJFQURNRS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjdXN0b20tdnBuLXRvZ2dsZXJAZ2l0ZWR1YmVyZ2VyLmZyIiwKICAibmFtZSI6ICJDdXN0b20gVlBOIFRvZ2dsZXIgKGFuZCBpbmRpY2F0b3IpIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogImZyLmdpdGVkdWJlcmdlci5jdXN0b20tdnBuLXRvZ2dsZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9YYXZpZXJCZXJnZXIvY3VzdG9tLXZwbi10b2dnbGVyIiwKICAidXVpZCI6ICJjdXN0b20tdnBuLXRvZ2dsZXJAZ2l0ZWR1YmVyZ2VyLmZyIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
+, {"uuid": "spotify-artwork-fixer@wjt.me.uk", "name": "Spotify Artwork Fixer", "pname": "spotify-artwork-fixer", "description": "Fix Spotify artwork missing in media notification", "link": "https://extensions.gnome.org/extension/4055/spotify-artwork-fixer/", "shell_version_map": {"38": {"version": "5", "sha256": "1rjs6r61dpvrw9yz5ig594jqqbg6wb89zasv29a2jvm8pyax7zbv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZpeCBTcG90aWZ5IGFydHdvcmsgbWlzc2luZyBpbiBtZWRpYSBub3RpZmljYXRpb24iLAogICJuYW1lIjogIlNwb3RpZnkgQXJ0d29yayBGaXhlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9nbm9tZS1zaGVsbC1zcG90aWZ5LWFydHdvcmstZml4ZXIiLAogICJ1dWlkIjogInNwb3RpZnktYXJ0d29yay1maXhlckB3anQubWUudWsiLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "5", "sha256": "1rjs6r61dpvrw9yz5ig594jqqbg6wb89zasv29a2jvm8pyax7zbv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZpeCBTcG90aWZ5IGFydHdvcmsgbWlzc2luZyBpbiBtZWRpYSBub3RpZmljYXRpb24iLAogICJuYW1lIjogIlNwb3RpZnkgQXJ0d29yayBGaXhlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9nbm9tZS1zaGVsbC1zcG90aWZ5LWFydHdvcmstZml4ZXIiLAogICJ1dWlkIjogInNwb3RpZnktYXJ0d29yay1maXhlckB3anQubWUudWsiLAogICJ2ZXJzaW9uIjogNQp9"}}}
+, {"uuid": "custom-vpn-toggler@giteduberger.fr", "name": "Custom VPN Toggler (and indicator)", "pname": "custom-vpn-toggler", "description": "Custom VPN Toggler (and indicator) allows to see the status of a VPN (with its icon), see IP address associated and permit to start and stop VPN (from a menu).\n\nThis plugin required an additional script to interact with VPN. \nAn example for netExtender and GlobalProtect are available on extension repository. \nFollow the link to Extension Web Site and see README.", "link": "https://extensions.gnome.org/extension/4061/custom-vpn-toggler/", "shell_version_map": {"38": {"version": "5", "sha256": "09axc2jx7s2bak956yyv6c5826yl54ghriiwdgsajly5lncmypxw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbSBWUE4gVG9nZ2xlciAoYW5kIGluZGljYXRvcikgYWxsb3dzIHRvIHNlZSB0aGUgc3RhdHVzIG9mIGEgVlBOICh3aXRoIGl0cyBpY29uKSwgc2VlIElQIGFkZHJlc3MgYXNzb2NpYXRlZCBhbmQgcGVybWl0IHRvIHN0YXJ0IGFuZCBzdG9wIFZQTiAoZnJvbSBhIG1lbnUpLlxuXG5UaGlzIHBsdWdpbiByZXF1aXJlZCBhbiBhZGRpdGlvbmFsIHNjcmlwdCB0byBpbnRlcmFjdCB3aXRoIFZQTi4gXG5BbiBleGFtcGxlIGZvciBuZXRFeHRlbmRlciBhbmQgR2xvYmFsUHJvdGVjdCBhcmUgYXZhaWxhYmxlIG9uIGV4dGVuc2lvbiByZXBvc2l0b3J5LiBcbkZvbGxvdyB0aGUgbGluayB0byBFeHRlbnNpb24gV2ViIFNpdGUgYW5kIHNlZSBSRUFETUUuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY3VzdG9tLXZwbi10b2dnbGVyQGdpdGVkdWJlcmdlci5mciIsCiAgIm5hbWUiOiAiQ3VzdG9tIFZQTiBUb2dnbGVyIChhbmQgaW5kaWNhdG9yKSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJmci5naXRlZHViZXJnZXIuY3VzdG9tLXZwbi10b2dnbGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vWGF2aWVyQmVyZ2VyL2N1c3RvbS12cG4tdG9nZ2xlciIsCiAgInV1aWQiOiAiY3VzdG9tLXZwbi10b2dnbGVyQGdpdGVkdWJlcmdlci5mciIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"uuid": "geary-tray-icon@taylantatli.github.com", "name": "Geary Tray Icon", "pname": "geary-tray-icon", "description": "Show a tray icon for Geary\n\nhttps://github.com/TaylanTatli/geary-tray-icon", "link": "https://extensions.gnome.org/extension/4073/geary-tray-icon/", "shell_version_map": {"38": {"version": "1", "sha256": "11kv47pz5p69j10r23zf8ls3fmanldx7diwsy34fhyxqfxjcd614", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgYSB0cmF5IGljb24gZm9yIEdlYXJ5XG5cbmh0dHBzOi8vZ2l0aHViLmNvbS9UYXlsYW5UYXRsaS9nZWFyeS10cmF5LWljb24iLAogICJuYW1lIjogIkdlYXJ5IFRyYXkgSWNvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJnZWFyeS10cmF5LWljb25AdGF5bGFudGF0bGkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxCn0="}}}
 , {"uuid": "iqair@wotmshuaisi_github", "name": "Iqair Gnome Extension", "pname": "iqair-gnome-extension", "description": "Gnome extension for tracking air quality in real-time. data provider: https://iqair.com/. to get an API token: https://www.iqair.com/us/dashboard/api", "link": "https://extensions.gnome.org/extension/4082/iqair-gnome-extension/", "shell_version_map": {"38": {"version": "6", "sha256": "150rn9gk6nzba30g38bjpgjyqr2a25cysg6fd6p1is92w8lknls4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdub21lIGV4dGVuc2lvbiBmb3IgdHJhY2tpbmcgYWlyIHF1YWxpdHkgaW4gcmVhbC10aW1lLiBkYXRhIHByb3ZpZGVyOiBodHRwczovL2lxYWlyLmNvbS8uIHRvIGdldCBhbiBBUEkgdG9rZW46IGh0dHBzOi8vd3d3LmlxYWlyLmNvbS91cy9kYXNoYm9hcmQvYXBpIiwKICAibmFtZSI6ICJJcWFpciBHbm9tZSBFeHRlbnNpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS93b3Rtc2h1YWlzaS9pcWFpckdub21lRXh0ZW5zaW9uIiwKICAidXVpZCI6ICJpcWFpckB3b3Rtc2h1YWlzaV9naXRodWIiLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "8", "sha256": "15w1cgvqc20lijffzvpbbr960hasrzs6qq48mjji5kryvy4rw9bi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdub21lIGV4dGVuc2lvbiBmb3IgdHJhY2tpbmcgYWlyIHF1YWxpdHkgaW4gcmVhbC10aW1lLiBkYXRhIHByb3ZpZGVyOiBodHRwczovL2lxYWlyLmNvbS8uIHRvIGdldCBhbiBBUEkgdG9rZW46IGh0dHBzOi8vd3d3LmlxYWlyLmNvbS91cy9kYXNoYm9hcmQvYXBpIiwKICAibmFtZSI6ICJJcWFpciBHbm9tZSBFeHRlbnNpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vd290bXNodWFpc2kvaXFhaXJHbm9tZUV4dGVuc2lvbiIsCiAgInV1aWQiOiAiaXFhaXJAd290bXNodWFpc2lfZ2l0aHViIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
-, {"uuid": "bigSur-StatusArea@ordissimo.com", "name": "Big Sur Status Area", "pname": "big-sur-status-area", "description": "Move the Power/Network/Volume/User/Date/Notifications menus to the status area. It is a fork of :https://github.com/Fausto-Korpsvart/Big-Sur-StatusArea", "link": "https://extensions.gnome.org/extension/4085/big-sur-status-area/", "shell_version_map": {"38": {"version": "23", "sha256": "0gysa7gz161n7lx119f1xhqhfywqd3hj7yf8dkxa208m6hmsya5n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgdGhlIFBvd2VyL05ldHdvcmsvVm9sdW1lL1VzZXIvRGF0ZS9Ob3RpZmljYXRpb25zIG1lbnVzIHRvIHRoZSBzdGF0dXMgYXJlYS4gSXQgaXMgYSBmb3JrIG9mIDpodHRwczovL2dpdGh1Yi5jb20vRmF1c3RvLUtvcnBzdmFydC9CaWctU3VyLVN0YXR1c0FyZWEiLAogICJuYW1lIjogIkJpZyBTdXIgU3RhdHVzIEFyZWEiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9PcmRpc3NpbW8vQmlnLVN1ci1TdGF0dXNBcmVhL3RyZWUvNDAucmMiLAogICJ1dWlkIjogImJpZ1N1ci1TdGF0dXNBcmVhQG9yZGlzc2ltby5jb20iLAogICJ2ZXJzaW9uIjogMjMKfQ=="}, "40": {"version": "24", "sha256": "14r84jdp8vdwzfxy3nvfkzggky2fq1qnwk7zpnzgqvpncsnam2a7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgdGhlIFBvd2VyL05ldHdvcmsvVm9sdW1lL1VzZXIvRGF0ZS9Ob3RpZmljYXRpb25zIG1lbnVzIHRvIHRoZSBzdGF0dXMgYXJlYS4gSXQgaXMgYSBmb3JrIG9mIDpodHRwczovL2dpdGh1Yi5jb20vRmF1c3RvLUtvcnBzdmFydC9CaWctU3VyLVN0YXR1c0FyZWEiLAogICJuYW1lIjogIkJpZyBTdXIgU3RhdHVzIEFyZWEiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwLjAiLAogICAgIjQwLnJjIiwKICAgICI0MC4xIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vT3JkaXNzaW1vL0JpZy1TdXItU3RhdHVzQXJlYS90cmVlLzQwLnJjIiwKICAidXVpZCI6ICJiaWdTdXItU3RhdHVzQXJlYUBvcmRpc3NpbW8uY29tIiwKICAidmVyc2lvbiI6IDI0Cn0="}}}
+, {"uuid": "bigSur-StatusArea@ordissimo.com", "name": "Big Sur Status Area", "pname": "big-sur-status-area", "description": "Move the Power/Network/Volume/User/Date/Notifications menus to the status area. It is a fork of :https://github.com/Fausto-Korpsvart/Big-Sur-StatusArea", "link": "https://extensions.gnome.org/extension/4085/big-sur-status-area/", "shell_version_map": {"38": {"version": "25", "sha256": "1h6gm4mc2snwza4r1k9zz1a9wkfmgiqlcvn72hqqasvqrf5sz7cz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgdGhlIFBvd2VyL05ldHdvcmsvVm9sdW1lL1VzZXIvRGF0ZS9Ob3RpZmljYXRpb25zIG1lbnVzIHRvIHRoZSBzdGF0dXMgYXJlYS4gSXQgaXMgYSBmb3JrIG9mIDpodHRwczovL2dpdGh1Yi5jb20vRmF1c3RvLUtvcnBzdmFydC9CaWctU3VyLVN0YXR1c0FyZWEiLAogICJuYW1lIjogIkJpZyBTdXIgU3RhdHVzIEFyZWEiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9PcmRpc3NpbW8vQmlnLVN1ci1TdGF0dXNBcmVhL3RyZWUvNDAucmMiLAogICJ1dWlkIjogImJpZ1N1ci1TdGF0dXNBcmVhQG9yZGlzc2ltby5jb20iLAogICJ2ZXJzaW9uIjogMjUKfQ=="}, "40": {"version": "26", "sha256": "0lxh557z3xrf81prky5fbzmbhpmv3dvgj0wnxhsqv81k507mfx5j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgdGhlIFBvd2VyL05ldHdvcmsvVm9sdW1lL1VzZXIvRGF0ZS9Ob3RpZmljYXRpb25zIG1lbnVzIHRvIHRoZSBzdGF0dXMgYXJlYS4gSXQgaXMgYSBmb3JrIG9mIDpodHRwczovL2dpdGh1Yi5jb20vRmF1c3RvLUtvcnBzdmFydC9CaWctU3VyLVN0YXR1c0FyZWEiLAogICJuYW1lIjogIkJpZyBTdXIgU3RhdHVzIEFyZWEiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwLjAiLAogICAgIjQwLnJjIiwKICAgICI0MC4xIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vT3JkaXNzaW1vL0JpZy1TdXItU3RhdHVzQXJlYS90cmVlLzQwLnJjIiwKICAidXVpZCI6ICJiaWdTdXItU3RhdHVzQXJlYUBvcmRpc3NpbW8uY29tIiwKICAidmVyc2lvbiI6IDI2Cn0="}}}
 , {"uuid": "disable-touch-osk@pardus.org.tr", "name": "disable-touch-osk", "pname": "disable-touch-osk", "description": "Disable on screen keyboard for touchscreens", "link": "https://extensions.gnome.org/extension/4087/disable-touch-osk/", "shell_version_map": {"38": {"version": "3", "sha256": "10ljbjbswzn9y30n2h39iiz673hhmazr2h14lhhws05m71xvbbfy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGUgb24gc2NyZWVuIGtleWJvYXJkIGZvciB0b3VjaHNjcmVlbnMiLAogICJuYW1lIjogImRpc2FibGUtdG91Y2gtb3NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL3d3dy5wYXJkdXMub3JnLnRyLyIsCiAgInV1aWQiOiAiZGlzYWJsZS10b3VjaC1vc2tAcGFyZHVzLm9yZy50ciIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"uuid": "right_click_for_apps@briansayre", "name": "Right Click for Apps", "pname": "right-click-for-apps", "description": "Allows you to right-click the Activities button to reveal the application menu.", "link": "https://extensions.gnome.org/extension/4090/right-click-for-apps/", "shell_version_map": {"38": {"version": "1", "sha256": "1rzx8ksl48badrwyqxwbgvfgf48z642mdwl57aq280ng61nrndaf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyB5b3UgdG8gcmlnaHQtY2xpY2sgdGhlIEFjdGl2aXRpZXMgYnV0dG9uIHRvIHJldmVhbCB0aGUgYXBwbGljYXRpb24gbWVudS4iLAogICJuYW1lIjogIlJpZ2h0IENsaWNrIGZvciBBcHBzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYnJpYW5zYXlyZS9SaWdodC1DbGljay1Gb3ItQXBwcyIsCiAgInV1aWQiOiAicmlnaHRfY2xpY2tfZm9yX2FwcHNAYnJpYW5zYXlyZSIsCiAgInZlcnNpb24iOiAxCn0="}}}
 , {"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": "2", "sha256": "0rn0c6ma6k129pkjk39dk05j6civxkm32zacv919zd3vvifckr1k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vdGlmaWNhdGlvbnMgYXJlIGFwcGVuZGVkIHRvIGEgZmlsZSBpbiAkSE9NRS8ubm90aWZpY2F0aW9ucy8gd2l0aCBvbmUgZmlsZSBjcmVhdGVkIHBlciBkYXkuXG5FbnRyaWVzIHNob3cgdGhlIGZvbGxvd2luZyBpbmZvcm1hdGlvbjpcblRpbWVzdGFtcFxuV2hldGhlciB0aGUgYmFubmVyIHdhcyBzaG93blxuVGhlIHVyZ2VuY3lcblRoZSB0aXRsZVxuQmFubmVyIHRleHQiLAogICJuYW1lIjogIk5vdGlmaWNhdGlvbnMgVG8gRmlsZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAibm90aWZpY2F0aW9uc190b19maWxlQGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "0rn0c6ma6k129pkjk39dk05j6civxkm32zacv919zd3vvifckr1k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vdGlmaWNhdGlvbnMgYXJlIGFwcGVuZGVkIHRvIGEgZmlsZSBpbiAkSE9NRS8ubm90aWZpY2F0aW9ucy8gd2l0aCBvbmUgZmlsZSBjcmVhdGVkIHBlciBkYXkuXG5FbnRyaWVzIHNob3cgdGhlIGZvbGxvd2luZyBpbmZvcm1hdGlvbjpcblRpbWVzdGFtcFxuV2hldGhlciB0aGUgYmFubmVyIHdhcyBzaG93blxuVGhlIHVyZ2VuY3lcblRoZSB0aXRsZVxuQmFubmVyIHRleHQiLAogICJuYW1lIjogIk5vdGlmaWNhdGlvbnMgVG8gRmlsZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAibm90aWZpY2F0aW9uc190b19maWxlQGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"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": "4", "sha256": "04fbcdgpw3gpvgzdrji0w7qla021qb4jc3ad5whi8w0zpci7g4jk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZXMgdGhlIGRlc2t0b3AgYmFja2dyb3VuZCB3aGVuIHRoZSB3b3Jrc3BhY2UgaXMgb3IgYmVjb21lcyBlbXB0eSwgc3VjaCBhcyBzd2l0Y2hpbmcgdG8gYW4gZW1wdHkgd29ya3NwYWNlLCB3aGVuIGFsbCB3aW5kb3dzIG9uIGEgd29ya3NwYWNlIGFyZSBjbG9zZWQsIG9yIGFmdGVyIGxvZ2luLlxuTm8gZm9sZGVyIG5lZWRzIHRvIGJlIHNldCBleHBsaWNpdGx5LCBhcyBpdCB3aWxsIHVzZSB0aGUgZm9sZGVyIHRoYXQgdGhlIGN1cnJlbnQgYmFja2dyb3VuZCBpcyBpbi4iLAogICJuYW1lIjogIkNoYW5nZSBEZXNrdG9wIEJhY2tncm91bmQgV2hlbiBXb3Jrc3BhY2UgRW1wdHkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImNoYW5nZV9kZXNrdG9wX2JhY2tncm91bmRfd2hlbl9lbXB0eUBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "04fbcdgpw3gpvgzdrji0w7qla021qb4jc3ad5whi8w0zpci7g4jk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZXMgdGhlIGRlc2t0b3AgYmFja2dyb3VuZCB3aGVuIHRoZSB3b3Jrc3BhY2UgaXMgb3IgYmVjb21lcyBlbXB0eSwgc3VjaCBhcyBzd2l0Y2hpbmcgdG8gYW4gZW1wdHkgd29ya3NwYWNlLCB3aGVuIGFsbCB3aW5kb3dzIG9uIGEgd29ya3NwYWNlIGFyZSBjbG9zZWQsIG9yIGFmdGVyIGxvZ2luLlxuTm8gZm9sZGVyIG5lZWRzIHRvIGJlIHNldCBleHBsaWNpdGx5LCBhcyBpdCB3aWxsIHVzZSB0aGUgZm9sZGVyIHRoYXQgdGhlIGN1cnJlbnQgYmFja2dyb3VuZCBpcyBpbi4iLAogICJuYW1lIjogIkNoYW5nZSBEZXNrdG9wIEJhY2tncm91bmQgV2hlbiBXb3Jrc3BhY2UgRW1wdHkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImNoYW5nZV9kZXNrdG9wX2JhY2tncm91bmRfd2hlbl9lbXB0eUBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiA0Cn0="}}}
-, {"uuid": "translate-clipboard@lsnow.github.io", "name": "translate-clipboard", "pname": "translate-clipboard", "description": "translate selected text\n\nFor ubuntu20.04, download version 3.38", "link": "https://extensions.gnome.org/extension/4097/translate-clipboard/", "shell_version_map": {"38": {"version": "1", "sha256": "01i8dx0hbcy28xzrj0imadv1027nnxmlz98sl4p72fykp08j728y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInRyYW5zbGF0ZSBzZWxlY3RlZCB0ZXh0XG5cbkZvciB1YnVudHUyMC4wNCwgZG93bmxvYWQgdmVyc2lvbiAzLjM4IiwKICAibmFtZSI6ICJ0cmFuc2xhdGUtY2xpcGJvYXJkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbHNub3cvdHJhbnNsYXRlLWNsaXBib2FyZCIsCiAgInV1aWQiOiAidHJhbnNsYXRlLWNsaXBib2FyZEBsc25vdy5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMQp9"}, "40": {"version": "4", "sha256": "0jr0fqcnx2yzgm470hjj9pk93fxd5ninsg4mwb73vqvlvq9jmjqs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInRyYW5zbGF0ZSBzZWxlY3RlZCB0ZXh0XG5cbkZvciB1YnVudHUyMC4wNCwgZG93bmxvYWQgdmVyc2lvbiAzLjM4IiwKICAibmFtZSI6ICJ0cmFuc2xhdGUtY2xpcGJvYXJkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2xzbm93L3RyYW5zbGF0ZS1jbGlwYm9hcmQiLAogICJ1dWlkIjogInRyYW5zbGF0ZS1jbGlwYm9hcmRAbHNub3cuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
+, {"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": "091aywnrmaz5j2nzjv1n968a25k8hm6a7ykifrl1b1nswybx5ark", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInRyYW5zbGF0ZSBjbGlwYm9hcmQgdGV4dCIsCiAgIm5hbWUiOiAidHJhbnNsYXRlLWNsaXBib2FyZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2xzbm93L3RyYW5zbGF0ZS1jbGlwYm9hcmQiLAogICJ1dWlkIjogInRyYW5zbGF0ZS1jbGlwYm9hcmRAbHNub3cuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDEKfQ=="}, "40": {"version": "7", "sha256": "1z1m15cn7jpxhhb8kfn4vlsip780pph93yhc3sr3n2is31bki3f9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInRyYW5zbGF0ZSBjbGlwYm9hcmQgdGV4dCIsCiAgIm5hbWUiOiAidHJhbnNsYXRlLWNsaXBib2FyZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sc25vdy90cmFuc2xhdGUtY2xpcGJvYXJkIiwKICAidXVpZCI6ICJ0cmFuc2xhdGUtY2xpcGJvYXJkQGxzbm93LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA3Cn0="}}}
 , {"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": "8", "sha256": "15y0qyknm2c3p94n8lvq3x13vk8j90mfwzl8g2vpraiavgid52fm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vIG92ZXJ2aWV3IGF0IHN0YXJ0LXVwLiBGb3IgR05PTUUgU2hlbGwgNDArLiIsCiAgIm5hbWUiOiAiTm8gb3ZlcnZpZXcgYXQgc3RhcnQtdXAiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImZ0aHgiCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvbm8tb3ZlcnZpZXciLAogICJ1dWlkIjogIm5vLW92ZXJ2aWV3QGZ0aHgiLAogICJ2ZXJzaW9uIjogOAp9"}}}
 , {"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": "2", "sha256": "10c3z6b9gwnjybyshrgg4mh9gcj7pv7mwhci32bprsai9nbdid4p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZXMgcG9zaXRpb24gb2YgdGhlIG5vdGlmaWNhdGlvbiBiYW5uZXIgZnJvbSB0aGUgZGVmYXVsdCB0byB0aGUgcmlnaHQgc2lkZSBvZiB0aGUgc2NyZWVuLiIsCiAgIm5hbWUiOiAiTm90aWZpY2F0aW9uIEJhbm5lciBQb3NpdGlvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9icnVub2RydWdvd2ljay9ub3RpZmljYXRpb24tcG9zaXRpb24tZ25vbWUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJub3RpZmljYXRpb24tcG9zaXRpb25AZHJ1Z28uZGV2IiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "10c3z6b9gwnjybyshrgg4mh9gcj7pv7mwhci32bprsai9nbdid4p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZXMgcG9zaXRpb24gb2YgdGhlIG5vdGlmaWNhdGlvbiBiYW5uZXIgZnJvbSB0aGUgZGVmYXVsdCB0byB0aGUgcmlnaHQgc2lkZSBvZiB0aGUgc2NyZWVuLiIsCiAgIm5hbWUiOiAiTm90aWZpY2F0aW9uIEJhbm5lciBQb3NpdGlvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9icnVub2RydWdvd2ljay9ub3RpZmljYXRpb24tcG9zaXRpb24tZ25vbWUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJub3RpZmljYXRpb24tcG9zaXRpb25AZHJ1Z28uZGV2IiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"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": "2", "sha256": "0wd7k5ryjq4w949qi73k5g1pi5nl5wvjxsw155ihyg3yinr8qjxs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNjcm9sbCB1cCBvciBkb3duIGluIHRoZSBUb3AgQmFyIHRvIGFkanVzdCB2b2x1bWUuIiwKICAibmFtZSI6ICJWb2x1bWUgU2Nyb2xsZXIiLAogICJvcmlnaW5hbC1hdXRob3IiOiAidHJmbHlubjg5QHBtLm1lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHJmbHlubjg5L2dub21lLXNoZWxsLXZvbHVtZS1zY3JvbGxlciIsCiAgInV1aWQiOiAidm9sdW1lX3Njcm9sbGVyQHRyZmx5bm44OS5wbS5tZSIsCiAgInZlcnNpb24iOiAyCn0="}}}
-, {"uuid": "customize-ibus@hollowman.ml", "name": "Customize IBus", "pname": "customize-ibus", "description": "Customize IBus for orientation, animation, font, ASCII mode auto-switch, reposition, system tray menu entries, input source indicator. Theme and background picture follow GNOME Night Light Mode.", "link": "https://extensions.gnome.org/extension/4112/customize-ibus/", "shell_version_map": {"38": {"version": "45", "sha256": "08v5j2sfjhlpl796l579w3yv32v1brr1gkny2qrl16lii5cl44dh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6ZSBJQnVzIGZvciBvcmllbnRhdGlvbiwgYW5pbWF0aW9uLCBmb250LCBBU0NJSSBtb2RlIGF1dG8tc3dpdGNoLCByZXBvc2l0aW9uLCBzeXN0ZW0gdHJheSBtZW51IGVudHJpZXMsIGlucHV0IHNvdXJjZSBpbmRpY2F0b3IuIFRoZW1lIGFuZCBiYWNrZ3JvdW5kIHBpY3R1cmUgZm9sbG93IEdOT01FIE5pZ2h0IExpZ2h0IE1vZGUuIiwKICAiZXh0ZW5zaW9uLWlkIjogImN1c3RvbWl6ZS1pYnVzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY3VzdG9taXplLWlidXMiLAogICJuYW1lIjogIkN1c3RvbWl6ZSBJQnVzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJob2xsb3dtYW5AaG9sbG93bWFuLm1sIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jdXN0b21pemUtaWJ1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hvbGxvd21hbjYvY3VzdG9taXplLWlidXMiLAogICJ1dWlkIjogImN1c3RvbWl6ZS1pYnVzQGhvbGxvd21hbi5tbCIsCiAgInZlcnNpb24iOiA0NQp9"}, "40": {"version": "46", "sha256": "0nsyikhpbjwdx0mybab4v0nh61ahgcp1d3j2bjyqkrapif58mpfy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6ZSBJQnVzIGZvciBvcmllbnRhdGlvbiwgYW5pbWF0aW9uLCBmb250LCBBU0NJSSBtb2RlIGF1dG8tc3dpdGNoLCByZXBvc2l0aW9uLCBzeXN0ZW0gdHJheSBtZW51IGVudHJpZXMsIGlucHV0IHNvdXJjZSBpbmRpY2F0b3IuIFRoZW1lIGFuZCBiYWNrZ3JvdW5kIHBpY3R1cmUgZm9sbG93IEdOT01FIE5pZ2h0IExpZ2h0IE1vZGUuIiwKICAiZXh0ZW5zaW9uLWlkIjogImN1c3RvbWl6ZS1pYnVzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY3VzdG9taXplLWlidXMiLAogICJuYW1lIjogIkN1c3RvbWl6ZSBJQnVzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJob2xsb3dtYW5AaG9sbG93bWFuLm1sIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jdXN0b21pemUtaWJ1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hvbGxvd21hbjYvY3VzdG9taXplLWlidXMiLAogICJ1dWlkIjogImN1c3RvbWl6ZS1pYnVzQGhvbGxvd21hbi5tbCIsCiAgInZlcnNpb24iOiA0Ngp9"}}}
+, {"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* * 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 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://github.com/openSUSE/Customize-IBus/blob/main/GUIDE.md\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* 皮肤样式主题(提供的或者从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": "70", "sha256": "00kpjzkgycskkyhzkgkavdnk9qmx6174007hj3p8w5kkl8mq8qjv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZ1bGwgY3VzdG9taXphdGlvbiBvZiBhcHBlYXJhbmNlLCBiZWhhdmlvciwgc3lzdGVtIHRyYXkgYW5kIGlucHV0IHNvdXJjZSBpbmRpY2F0b3IgZm9yIElCdXNcblxuU3VwcG9ydCBDdXN0b21pemF0aW9uIG9mOlxuKiBDYW5kaWRhdGUgQm94IE9yaWVudGF0aW9uXG4qIENhbmRpZGF0ZSBCb3ggQW5pbWF0aW9uXG4qIFJpZ2h0LWNsaWNrIENhbmRpZGF0ZSBCb3ggdG8gU3dpdGNoIHRoZSBJbnB1dCBNb2RlIG9yIE9wZW4gdGhlIFRyYXkgTWVudVxuKiBTY3JvbGwgb24gQ2FuZGlkYXRlIEJveCB0byBTd2l0Y2ggYW1vbmcgUGFnZXMgb3IgQ2FuZGlkYXRlc1xuKiBGaXggQ2FuZGlkYXRlIEJveCB0byBOb3QgRm9sbG93IHRoZSBDYXJldCBhbmQgU2V0IEZpeGVkIFBvc2l0aW9uXG4qIENhbmRpZGF0ZSBCb3ggRm9udFxuKiBJbnB1dCBNb2RlIFJlbWVtYmVyIGFuZCBBdXRvLXN3aXRjaCBieSBBUFBcbiogQ2hhbmdlIENhbmRpZGF0ZSBCb3ggT3BhY2l0eVxuKiBGaXggSU1FIExpc3QgT3JkZXJcbiogRHJhZyBDYW5kaWRhdGUgQm94IHRvIFJlcG9zaXRpb25cbiogU2hvdyBvciBIaWRlIENhbmRpZGF0ZSBCb3ggUGFnZSBCdXR0b25zXG4qIFN5c3RlbSBUcmF5IE1lbnVzIGFuZCBJbnRlcmFjdGlvbiBTZXR0aW5nc1xuKiAqIFNob3cgb3IgSGlkZSBUcmF5IEljb25cbiogKiBEaXJlY3RseSBDbGljayBUcmF5IEljb24gdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBBZGQgQWRkaXRpb25hbCBNZW51XG4qIElucHV0IFNvdXJjZSBJbmRpY2F0b3IgQXBwZWFyYW5jZSBhbmQgSW50ZXJhY3Rpb24gU2V0dGluZ3NcbiogKiBFbmFibGUgSW5kaWNhdG9yXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFN3aXRjaGluZyBJbnB1dCBNb2RlXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFVzaW5nIEFTQ0lJIElucHV0IE1vZGVcbiogKiBSaWdodC1jbGljayBJbmRpY2F0b3IgdG8gSGlkZVxuKiAqIFNjcm9sbCBvbiBJbmRpY2F0b3IgdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBJbmRpY2F0b3IgQW5pbWF0aW9uXG4qICogQ3VzdG9taXplIEZvbnRcbiogKiBMZWZ0LWNsaWNrIEluZGljYXRvciB0byBEcmFnIHRvIE1vdmUgSW5kaWNhdG9yIG9yIFN3aXRjaCBJbnB1dCBNb2RlXG4qICogQ2hhbmdlIE9wYWNpdHlcbiogKiBFbmFibGUgQXV0by1oaWRlIEluZGljYXRvciBhbmQgQ29uZmlndXJlIEF1dG8taGlkZSBUaW1lb3V0XG4qIFRoZW1lIChTdHlsZXNoZWV0IFByb3ZpZGVkIG9yIEV4dHJhY3RlZCBmcm9tIEdOT01FIFNoZWxsIFRoZW1lcywgUmVmZXIgdG8gSGVscCBJbnN0cnVjdGlvbnMgaW4gRXh0ZW5zaW9uIGZvciBNb3JlKVxuKiBDYW5kaWRhdGUgQm94IEJhY2tncm91bmQgYW5kIGl0cyBEaXNwbGF5aW5nIFN0eWxlXG4qIFRoZW1lIGFuZCBCYWNrZ3JvdW5kIFBpY3R1cmUgRm9sbG93IEdOT01FIE5pZ2h0IExpZ2h0IE1vZGVcblxuVXNlciBHdWlkZTogaHR0cHM6Ly9naXRodWIuY29tL29wZW5TVVNFL0N1c3RvbWl6ZS1JQnVzL2Jsb2IvbWFpbi9HVUlERS5tZFxuXG5cdTZkZjFcdTVlYTZcdTViOWFcdTUyMzYgSUJ1cyBcdTc2ODRcdTU5MTZcdTg5YzJcdTMwMDFcdTg4NGNcdTRlM2FcdTMwMDFcdTdjZmJcdTdlZGZcdTYyNThcdTc2ZDhcdTRlZTVcdTUzY2FcdThmOTNcdTUxNjVcdTYzMDdcdTc5M2FcblxuXHU2NTJmXHU2MzAxXHU4MWVhXHU1YjlhXHU0ZTQ5XHVmZjFhXG4qIFx1NTAxOVx1OTAwOVx1Njg0Nlx1NjViOVx1NTQxMVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTUyYThcdTc1M2JcbiogXHU1M2YzXHU5NTJlXHU1MzU1XHU1MWZiXHU1MDE5XHU5MDA5XHU2ODQ2XHU0ZWU1XHU1MjA3XHU2MzYyXHU4ZjkzXHU1MTY1XHU2ZTkwXHU2MjE2XHU2MjUzXHU1ZjAwXHU0ZWZiXHU1MmExXHU2ODBmXHU4M2RjXHU1MzU1XG4qIFx1NTAxOVx1OTAwOVx1Njg0Nlx1NGUwYVx1NmVkYVx1NTJhOFx1NGVlNVx1NTIwN1x1NjM2Mlx1OTg3NVx1OTc2Mlx1NjIxNlx1NTAxOVx1OTAwOVx1OGJjZFxuKiBcdTU2ZmFcdTViOWFcdTUwMTlcdTkwMDlcdTY4NDZcdTRmN2ZcdTUxNzZcdTRlMGRcdThkZGZcdTk2OGZcdTUxNDlcdTY4MDdcdTRlZTVcdTUzY2FcdThiYmVcdTViOWFcdTU2ZmFcdTViOWFcdTRmNGRcdTdmNmVcbiogXHU1MDE5XHU5MDA5XHU2ODQ2XHU1YjU3XHU0ZjUzXG4qIFx1OGY5M1x1NTE2NVx1NmEyMVx1NWYwZlx1NjgzOVx1NjM2ZVx1NWU5NFx1NzUyOFx1OGJiMFx1NWZjNlx1NWU3Nlx1ODFlYVx1NTJhOFx1NTIwN1x1NjM2MlxuKiBcdTY2ZjRcdTY1MzlcdTUwMTlcdTkwMDlcdTY4NDZcdTkwMGZcdTY2MGVcdTVlYTZcbiogXHU1NmZhXHU1YjlhXHU4ZjkzXHU1MTY1XHU2Y2Q1XHU1MjE3XHU4ODY4XHU5ODdhXHU1ZThmXG4qIFx1NjJkNlx1NjJmZFx1NzlmYlx1NTJhOFx1NTAxOVx1OTAwOVx1Njg0NlxuKiBcdTY2M2VcdTc5M2FcdTYyMTZcdTk2OTBcdTg1Y2ZcdTUwMTlcdTkwMDlcdTY4NDZcdThjMDNcdTk4NzVcdTYzMDlcdTk0YWVcbiogXHU3Y2ZiXHU3ZWRmXHU0ZWZiXHU1MmExXHU2ODBmXHU2MjU4XHU3NmQ4XHU2NjNlXHU3OTNhXHU1NDhjXHU0ZWE0XHU0ZTkyXHU4YmJlXHU3ZjZlXG4qICogXHU2NjNlXHU3OTNhXHU2MjE2XHU5NjkwXHU4NWNmXHU2MjU4XHU3NmQ4XHU1NmZlXHU2ODA3XG4qICogXHU3NmY0XHU2M2E1XHU3MGI5XHU1MWZiXHU2MjU4XHU3NmQ4XHU1NmZlXHU2ODA3XHU1MjA3XHU2MzYyXHU4ZjkzXHU1MTY1XHU2ZTkwXG4qICogXHU2ZGZiXHU1MmEwXHU5ODlkXHU1OTE2XHU4M2RjXHU1MzU1XG4qIFx1OGY5M1x1NTE2NVx1NmU5MFx1NjMwN1x1NzkzYVx1NTY2OFx1NTNjYVx1NTE3Nlx1NjYzZVx1NzkzYVx1NTQ4Y1x1NGVhNFx1NGU5Mlx1OGJiZVx1N2Y2ZVxuKiAqIFx1NTQyZlx1NzUyOFx1NjMwN1x1NzkzYVx1NTY2OFxuKiAqIFx1NGVjNVx1NTcyOFx1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmNkNVx1NjVmNlx1NjMwN1x1NzkzYVxuKiAqIFx1NGVjNVx1NTcyOFx1ODJmMVx1NjU4N1x1OGY5M1x1NTE2NVx1NjVmNlx1NjMwN1x1NzkzYVxuKiAqIFx1NTNmM1x1NTFmYlx1NjMwN1x1NzkzYVx1NTY2OFx1Njc2NVx1NWMwNlx1NTE3Nlx1OTY5MFx1ODVjZlxuKiAqIFx1NjMwN1x1NzkzYVx1NTY2OFx1NGUwYVx1NmVkYVx1NTJhOFx1Njc2NVx1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFxuKiAqIFx1NjMwN1x1NzkzYVx1NTY2OFx1NjYzZVx1NzkzYVx1NTJhOFx1NzUzYlxuKiAqIFx1ODFlYVx1NWI5YVx1NGU0OVx1NWI1N1x1NGY1M1xuKiAqIFx1NWRlNlx1NTFmYlx1NjMwN1x1NzkzYVx1NTY2OFx1NGVlNVx1NjJkNlx1NjJmZFx1NzlmYlx1NTJhOFx1NjIxNlx1ODAwNVx1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFxuKiAqIFx1NjZmNFx1NjUzOVx1OTAwZlx1NjYwZVx1NWVhNlxuKiAqIFx1NTQyZlx1NzUyOFx1ODFlYVx1NTJhOFx1OTY5MFx1ODVjZlx1NGVlNVx1NTNjYVx1OTE0ZFx1N2Y2ZVx1ODFlYVx1NTJhOFx1OTY5MFx1ODVjZlx1NjVmNlx1NWVmNlxuKiBcdTc2YWVcdTgwYTRcdTY4MzdcdTVmMGZcdTRlM2JcdTk4OThcdWZmMDhcdTYzZDBcdTRmOWJcdTc2ODRcdTYyMTZcdTgwMDVcdTRlY2VHTk9NRSBTaGVsbFx1NGUzYlx1OTg5OFx1NGUyZFx1NjNkMFx1NTNkNlx1NzY4NFx1NjgzN1x1NWYwZlx1ODg2OFx1ZmYwY1x1NTNjMlx1ODljMVx1NjI2OVx1NWM1NVx1NzY4NFx1NWUyZVx1NTJhOVx1OTBlOFx1NTIwNlx1Njc2NVx1ODNiN1x1NTNkNlx1NjZmNFx1NTkxYVx1NjMwN1x1NWJmY1x1ZmYwOVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTgwY2NcdTY2NmZcdTU2ZmVcdTcyNDdcdTUzY2FcdTUxNzZcdTY2M2VcdTc5M2FcdTY4MzdcdTVmMGZcbiogXHU0ZTNiXHU5ODk4XHU1NDhjXHU4MGNjXHU2NjZmXHU1NmZlXHU3MjQ3XHU4ZGRmXHU5NjhmR05PTUVcdTU5MWNcdTcwNmZcblxuXHU0ZjdmXHU3NTI4XHU2MzA3XHU1MzU3XHVmZjFhaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzE4NTcyMDIzL2FydGljbGUvZGV0YWlscy8xMTYzMzE2MDEiLAogICJleHRlbnNpb24taWQiOiAiY3VzdG9taXplLWlidXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjdXN0b21pemUtaWJ1cyIsCiAgIm5hbWUiOiAiQ3VzdG9taXplIElCdXMiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImhvbGxvd21hbkBob2xsb3dtYW4ubWwiCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmN1c3RvbWl6ZS1pYnVzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL29wZW5TVVNFL0N1c3RvbWl6ZS1JQnVzIiwKICAidXVpZCI6ICJjdXN0b21pemUtaWJ1c0Bob2xsb3dtYW4ubWwiLAogICJ2ZXJzaW9uIjogNzAKfQ=="}, "40": {"version": "70", "sha256": "00kpjzkgycskkyhzkgkavdnk9qmx6174007hj3p8w5kkl8mq8qjv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZ1bGwgY3VzdG9taXphdGlvbiBvZiBhcHBlYXJhbmNlLCBiZWhhdmlvciwgc3lzdGVtIHRyYXkgYW5kIGlucHV0IHNvdXJjZSBpbmRpY2F0b3IgZm9yIElCdXNcblxuU3VwcG9ydCBDdXN0b21pemF0aW9uIG9mOlxuKiBDYW5kaWRhdGUgQm94IE9yaWVudGF0aW9uXG4qIENhbmRpZGF0ZSBCb3ggQW5pbWF0aW9uXG4qIFJpZ2h0LWNsaWNrIENhbmRpZGF0ZSBCb3ggdG8gU3dpdGNoIHRoZSBJbnB1dCBNb2RlIG9yIE9wZW4gdGhlIFRyYXkgTWVudVxuKiBTY3JvbGwgb24gQ2FuZGlkYXRlIEJveCB0byBTd2l0Y2ggYW1vbmcgUGFnZXMgb3IgQ2FuZGlkYXRlc1xuKiBGaXggQ2FuZGlkYXRlIEJveCB0byBOb3QgRm9sbG93IHRoZSBDYXJldCBhbmQgU2V0IEZpeGVkIFBvc2l0aW9uXG4qIENhbmRpZGF0ZSBCb3ggRm9udFxuKiBJbnB1dCBNb2RlIFJlbWVtYmVyIGFuZCBBdXRvLXN3aXRjaCBieSBBUFBcbiogQ2hhbmdlIENhbmRpZGF0ZSBCb3ggT3BhY2l0eVxuKiBGaXggSU1FIExpc3QgT3JkZXJcbiogRHJhZyBDYW5kaWRhdGUgQm94IHRvIFJlcG9zaXRpb25cbiogU2hvdyBvciBIaWRlIENhbmRpZGF0ZSBCb3ggUGFnZSBCdXR0b25zXG4qIFN5c3RlbSBUcmF5IE1lbnVzIGFuZCBJbnRlcmFjdGlvbiBTZXR0aW5nc1xuKiAqIFNob3cgb3IgSGlkZSBUcmF5IEljb25cbiogKiBEaXJlY3RseSBDbGljayBUcmF5IEljb24gdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBBZGQgQWRkaXRpb25hbCBNZW51XG4qIElucHV0IFNvdXJjZSBJbmRpY2F0b3IgQXBwZWFyYW5jZSBhbmQgSW50ZXJhY3Rpb24gU2V0dGluZ3NcbiogKiBFbmFibGUgSW5kaWNhdG9yXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFN3aXRjaGluZyBJbnB1dCBNb2RlXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFVzaW5nIEFTQ0lJIElucHV0IE1vZGVcbiogKiBSaWdodC1jbGljayBJbmRpY2F0b3IgdG8gSGlkZVxuKiAqIFNjcm9sbCBvbiBJbmRpY2F0b3IgdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBJbmRpY2F0b3IgQW5pbWF0aW9uXG4qICogQ3VzdG9taXplIEZvbnRcbiogKiBMZWZ0LWNsaWNrIEluZGljYXRvciB0byBEcmFnIHRvIE1vdmUgSW5kaWNhdG9yIG9yIFN3aXRjaCBJbnB1dCBNb2RlXG4qICogQ2hhbmdlIE9wYWNpdHlcbiogKiBFbmFibGUgQXV0by1oaWRlIEluZGljYXRvciBhbmQgQ29uZmlndXJlIEF1dG8taGlkZSBUaW1lb3V0XG4qIFRoZW1lIChTdHlsZXNoZWV0IFByb3ZpZGVkIG9yIEV4dHJhY3RlZCBmcm9tIEdOT01FIFNoZWxsIFRoZW1lcywgUmVmZXIgdG8gSGVscCBJbnN0cnVjdGlvbnMgaW4gRXh0ZW5zaW9uIGZvciBNb3JlKVxuKiBDYW5kaWRhdGUgQm94IEJhY2tncm91bmQgYW5kIGl0cyBEaXNwbGF5aW5nIFN0eWxlXG4qIFRoZW1lIGFuZCBCYWNrZ3JvdW5kIFBpY3R1cmUgRm9sbG93IEdOT01FIE5pZ2h0IExpZ2h0IE1vZGVcblxuVXNlciBHdWlkZTogaHR0cHM6Ly9naXRodWIuY29tL29wZW5TVVNFL0N1c3RvbWl6ZS1JQnVzL2Jsb2IvbWFpbi9HVUlERS5tZFxuXG5cdTZkZjFcdTVlYTZcdTViOWFcdTUyMzYgSUJ1cyBcdTc2ODRcdTU5MTZcdTg5YzJcdTMwMDFcdTg4NGNcdTRlM2FcdTMwMDFcdTdjZmJcdTdlZGZcdTYyNThcdTc2ZDhcdTRlZTVcdTUzY2FcdThmOTNcdTUxNjVcdTYzMDdcdTc5M2FcblxuXHU2NTJmXHU2MzAxXHU4MWVhXHU1YjlhXHU0ZTQ5XHVmZjFhXG4qIFx1NTAxOVx1OTAwOVx1Njg0Nlx1NjViOVx1NTQxMVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTUyYThcdTc1M2JcbiogXHU1M2YzXHU5NTJlXHU1MzU1XHU1MWZiXHU1MDE5XHU5MDA5XHU2ODQ2XHU0ZWU1XHU1MjA3XHU2MzYyXHU4ZjkzXHU1MTY1XHU2ZTkwXHU2MjE2XHU2MjUzXHU1ZjAwXHU0ZWZiXHU1MmExXHU2ODBmXHU4M2RjXHU1MzU1XG4qIFx1NTAxOVx1OTAwOVx1Njg0Nlx1NGUwYVx1NmVkYVx1NTJhOFx1NGVlNVx1NTIwN1x1NjM2Mlx1OTg3NVx1OTc2Mlx1NjIxNlx1NTAxOVx1OTAwOVx1OGJjZFxuKiBcdTU2ZmFcdTViOWFcdTUwMTlcdTkwMDlcdTY4NDZcdTRmN2ZcdTUxNzZcdTRlMGRcdThkZGZcdTk2OGZcdTUxNDlcdTY4MDdcdTRlZTVcdTUzY2FcdThiYmVcdTViOWFcdTU2ZmFcdTViOWFcdTRmNGRcdTdmNmVcbiogXHU1MDE5XHU5MDA5XHU2ODQ2XHU1YjU3XHU0ZjUzXG4qIFx1OGY5M1x1NTE2NVx1NmEyMVx1NWYwZlx1NjgzOVx1NjM2ZVx1NWU5NFx1NzUyOFx1OGJiMFx1NWZjNlx1NWU3Nlx1ODFlYVx1NTJhOFx1NTIwN1x1NjM2MlxuKiBcdTY2ZjRcdTY1MzlcdTUwMTlcdTkwMDlcdTY4NDZcdTkwMGZcdTY2MGVcdTVlYTZcbiogXHU1NmZhXHU1YjlhXHU4ZjkzXHU1MTY1XHU2Y2Q1XHU1MjE3XHU4ODY4XHU5ODdhXHU1ZThmXG4qIFx1NjJkNlx1NjJmZFx1NzlmYlx1NTJhOFx1NTAxOVx1OTAwOVx1Njg0NlxuKiBcdTY2M2VcdTc5M2FcdTYyMTZcdTk2OTBcdTg1Y2ZcdTUwMTlcdTkwMDlcdTY4NDZcdThjMDNcdTk4NzVcdTYzMDlcdTk0YWVcbiogXHU3Y2ZiXHU3ZWRmXHU0ZWZiXHU1MmExXHU2ODBmXHU2MjU4XHU3NmQ4XHU2NjNlXHU3OTNhXHU1NDhjXHU0ZWE0XHU0ZTkyXHU4YmJlXHU3ZjZlXG4qICogXHU2NjNlXHU3OTNhXHU2MjE2XHU5NjkwXHU4NWNmXHU2MjU4XHU3NmQ4XHU1NmZlXHU2ODA3XG4qICogXHU3NmY0XHU2M2E1XHU3MGI5XHU1MWZiXHU2MjU4XHU3NmQ4XHU1NmZlXHU2ODA3XHU1MjA3XHU2MzYyXHU4ZjkzXHU1MTY1XHU2ZTkwXG4qICogXHU2ZGZiXHU1MmEwXHU5ODlkXHU1OTE2XHU4M2RjXHU1MzU1XG4qIFx1OGY5M1x1NTE2NVx1NmU5MFx1NjMwN1x1NzkzYVx1NTY2OFx1NTNjYVx1NTE3Nlx1NjYzZVx1NzkzYVx1NTQ4Y1x1NGVhNFx1NGU5Mlx1OGJiZVx1N2Y2ZVxuKiAqIFx1NTQyZlx1NzUyOFx1NjMwN1x1NzkzYVx1NTY2OFxuKiAqIFx1NGVjNVx1NTcyOFx1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmNkNVx1NjVmNlx1NjMwN1x1NzkzYVxuKiAqIFx1NGVjNVx1NTcyOFx1ODJmMVx1NjU4N1x1OGY5M1x1NTE2NVx1NjVmNlx1NjMwN1x1NzkzYVxuKiAqIFx1NTNmM1x1NTFmYlx1NjMwN1x1NzkzYVx1NTY2OFx1Njc2NVx1NWMwNlx1NTE3Nlx1OTY5MFx1ODVjZlxuKiAqIFx1NjMwN1x1NzkzYVx1NTY2OFx1NGUwYVx1NmVkYVx1NTJhOFx1Njc2NVx1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFxuKiAqIFx1NjMwN1x1NzkzYVx1NTY2OFx1NjYzZVx1NzkzYVx1NTJhOFx1NzUzYlxuKiAqIFx1ODFlYVx1NWI5YVx1NGU0OVx1NWI1N1x1NGY1M1xuKiAqIFx1NWRlNlx1NTFmYlx1NjMwN1x1NzkzYVx1NTY2OFx1NGVlNVx1NjJkNlx1NjJmZFx1NzlmYlx1NTJhOFx1NjIxNlx1ODAwNVx1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFxuKiAqIFx1NjZmNFx1NjUzOVx1OTAwZlx1NjYwZVx1NWVhNlxuKiAqIFx1NTQyZlx1NzUyOFx1ODFlYVx1NTJhOFx1OTY5MFx1ODVjZlx1NGVlNVx1NTNjYVx1OTE0ZFx1N2Y2ZVx1ODFlYVx1NTJhOFx1OTY5MFx1ODVjZlx1NjVmNlx1NWVmNlxuKiBcdTc2YWVcdTgwYTRcdTY4MzdcdTVmMGZcdTRlM2JcdTk4OThcdWZmMDhcdTYzZDBcdTRmOWJcdTc2ODRcdTYyMTZcdTgwMDVcdTRlY2VHTk9NRSBTaGVsbFx1NGUzYlx1OTg5OFx1NGUyZFx1NjNkMFx1NTNkNlx1NzY4NFx1NjgzN1x1NWYwZlx1ODg2OFx1ZmYwY1x1NTNjMlx1ODljMVx1NjI2OVx1NWM1NVx1NzY4NFx1NWUyZVx1NTJhOVx1OTBlOFx1NTIwNlx1Njc2NVx1ODNiN1x1NTNkNlx1NjZmNFx1NTkxYVx1NjMwN1x1NWJmY1x1ZmYwOVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTgwY2NcdTY2NmZcdTU2ZmVcdTcyNDdcdTUzY2FcdTUxNzZcdTY2M2VcdTc5M2FcdTY4MzdcdTVmMGZcbiogXHU0ZTNiXHU5ODk4XHU1NDhjXHU4MGNjXHU2NjZmXHU1NmZlXHU3MjQ3XHU4ZGRmXHU5NjhmR05PTUVcdTU5MWNcdTcwNmZcblxuXHU0ZjdmXHU3NTI4XHU2MzA3XHU1MzU3XHVmZjFhaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzE4NTcyMDIzL2FydGljbGUvZGV0YWlscy8xMTYzMzE2MDEiLAogICJleHRlbnNpb24taWQiOiAiY3VzdG9taXplLWlidXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjdXN0b21pemUtaWJ1cyIsCiAgIm5hbWUiOiAiQ3VzdG9taXplIElCdXMiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImhvbGxvd21hbkBob2xsb3dtYW4ubWwiCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmN1c3RvbWl6ZS1pYnVzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL29wZW5TVVNFL0N1c3RvbWl6ZS1JQnVzIiwKICAidXVpZCI6ICJjdXN0b21pemUtaWJ1c0Bob2xsb3dtYW4ubWwiLAogICJ2ZXJzaW9uIjogNzAKfQ=="}}}
 , {"uuid": "fildemGMenu@gonza.com", "name": "Fildem global menu", "pname": "fildem-global-menu", "description": "Global menu and HUD for Gnome\n\nThis extension requires the installation of an external program. Please, check the instructions on Github.\n\nThis extension works on gnome 40 but the preferences doesn’t work, if you want you can install it manually modifing the version supported on metadata.", "link": "https://extensions.gnome.org/extension/4114/fildem-global-menu/", "shell_version_map": {"38": {"version": "1", "sha256": "0zgkf4cb4hl0r6r1kzwlvnr4f2svlpwayrw7xqs39fa19cc1zasv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdsb2JhbCBtZW51IGFuZCBIVUQgZm9yIEdub21lXG5cblRoaXMgZXh0ZW5zaW9uIHJlcXVpcmVzIHRoZSBpbnN0YWxsYXRpb24gb2YgYW4gZXh0ZXJuYWwgcHJvZ3JhbS4gUGxlYXNlLCBjaGVjayB0aGUgaW5zdHJ1Y3Rpb25zIG9uIEdpdGh1Yi5cblxuVGhpcyBleHRlbnNpb24gd29ya3Mgb24gZ25vbWUgNDAgYnV0IHRoZSBwcmVmZXJlbmNlcyBkb2Vzblx1MjAxOXQgd29yaywgaWYgeW91IHdhbnQgeW91IGNhbiBpbnN0YWxsIGl0IG1hbnVhbGx5IG1vZGlmaW5nIHRoZSB2ZXJzaW9uIHN1cHBvcnRlZCBvbiBtZXRhZGF0YS4iLAogICJuYW1lIjogIkZpbGRlbSBnbG9iYWwgbWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5maWxkZW0tZ2xvYmFsLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nb256YWFyY3IvRmlsZGVtIiwKICAidXVpZCI6ICJmaWxkZW1HTWVudUBnb256YS5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"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": "4", "sha256": "0f6p5cd68qlb082favqf2h7q4vn8c6rh0y48g3s2d9fxgccvc1di", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInJlbW92ZSB0b3AgcGFuZWwgZnJvbSBnbm9tZS1zaGVsbCIsCiAgIm5hbWUiOiAiUmVtb3ZlUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAicmVtb3ZlLXBhbmVsQHN1bGluY2l4IiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"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": "5", "sha256": "056d2x5v2kzlkdab0bf88r7hs93iwdm6nhlf5q5fhjmqgc88ap1b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBHb29nbGUgc2VhcmNoIHRvIEdub21lIFNoZWxsIFNlYXJjaCBcbiBUT0RPOiBcbiAtIEFkZCBnb29nbGUgc3VnZ2VzdGlvbnMgKEZvciBub3cgdXNpbmcgZHVja2R1Y2tHbyBzdWdnZXN0aW9ucykiLAogICJuYW1lIjogIkdvb2dsZSBTZWFyY2ggUHJvdmlkZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ29vZ2xlLXNlYXJjaC1wcm92aWRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Nck5pbnNvL2dub21lLXNoZWxsLWdvb2dsZS1zZWFyY2gtcHJvdmlkZXIiLAogICJ1dWlkIjogImdub21lLXNoZWxsLUdvb2dsZS1zZWFyY2gtcHJvdmlkZXJATXJOaW5zbyIsCiAgInZlcnNpb24iOiA1Cn0="}, "40": {"version": "5", "sha256": "056d2x5v2kzlkdab0bf88r7hs93iwdm6nhlf5q5fhjmqgc88ap1b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBHb29nbGUgc2VhcmNoIHRvIEdub21lIFNoZWxsIFNlYXJjaCBcbiBUT0RPOiBcbiAtIEFkZCBnb29nbGUgc3VnZ2VzdGlvbnMgKEZvciBub3cgdXNpbmcgZHVja2R1Y2tHbyBzdWdnZXN0aW9ucykiLAogICJuYW1lIjogIkdvb2dsZSBTZWFyY2ggUHJvdmlkZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ29vZ2xlLXNlYXJjaC1wcm92aWRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Nck5pbnNvL2dub21lLXNoZWxsLWdvb2dsZS1zZWFyY2gtcHJvdmlkZXIiLAogICJ1dWlkIjogImdub21lLXNoZWxsLUdvb2dsZS1zZWFyY2gtcHJvdmlkZXJATXJOaW5zbyIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"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="}}}
-, {"uuid": "espresso@coadmunkee.github.com", "name": "Espresso", "pname": "espresso", "description": "Espresso provides a topbar icon that allows you to disable or enable the screensaver and auto suspend. You can also define other conditions that will disable the screensaver and auto suspend such as when any application is running in full screen mode and/or when any one of a defined list of applications is running.\nEspresso has been fully derived from a fork of Caffeine and provides the same functionality. ", "link": "https://extensions.gnome.org/extension/4135/espresso/", "shell_version_map": {"40": {"version": "1", "sha256": "1jg3zrgisbw08ar38blic3fn2pcdbgph5h0ph9bks2393azlzxn6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVzcHJlc3NvIHByb3ZpZGVzIGEgdG9wYmFyIGljb24gdGhhdCBhbGxvd3MgeW91IHRvIGRpc2FibGUgb3IgZW5hYmxlIHRoZSBzY3JlZW5zYXZlciBhbmQgYXV0byBzdXNwZW5kLiBZb3UgY2FuIGFsc28gZGVmaW5lIG90aGVyIGNvbmRpdGlvbnMgdGhhdCB3aWxsIGRpc2FibGUgdGhlIHNjcmVlbnNhdmVyIGFuZCBhdXRvIHN1c3BlbmQgc3VjaCBhcyB3aGVuIGFueSBhcHBsaWNhdGlvbiBpcyBydW5uaW5nIGluIGZ1bGwgc2NyZWVuIG1vZGUgYW5kL29yIHdoZW4gYW55IG9uZSBvZiBhIGRlZmluZWQgbGlzdCBvZiBhcHBsaWNhdGlvbnMgaXMgcnVubmluZy5cbkVzcHJlc3NvIGhhcyBiZWVuIGZ1bGx5IGRlcml2ZWQgZnJvbSBhIGZvcmsgb2YgQ2FmZmVpbmUgYW5kIHByb3ZpZGVzIHRoZSBzYW1lIGZ1bmN0aW9uYWxpdHkuICIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1lc3ByZXNzbyIsCiAgIm5hbWUiOiAiRXNwcmVzc28iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXNwcmVzc28iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY29hZG11bmtlZS9nbm9tZS1zaGVsbC1leHRlbnNpb24tZXNwcmVzc28iLAogICJ1dWlkIjogImVzcHJlc3NvQGNvYWRtdW5rZWUuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxCn0="}}}
+, {"uuid": "espresso@coadmunkee.github.com", "name": "Espresso", "pname": "espresso", "description": "Espresso provides a topbar icon that allows you to disable or enable the screensaver and auto suspend. You can also define other conditions that will disable the screensaver and auto suspend such as when any application is running in full screen mode and/or when any one of a defined list of applications is running.\nEspresso is a fork of Caffeine and provides the same functionality.\n\nPlease file bug reports on the extension home page: https://github.com/coadmunkee/gnome-shell-extension-espresso/issues", "link": "https://extensions.gnome.org/extension/4135/espresso/", "shell_version_map": {"40": {"version": "1", "sha256": "1419gfipqai04ymcj9v2ljdp89jg5h9bsbhl0pw94s6pagy05s3w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVzcHJlc3NvIHByb3ZpZGVzIGEgdG9wYmFyIGljb24gdGhhdCBhbGxvd3MgeW91IHRvIGRpc2FibGUgb3IgZW5hYmxlIHRoZSBzY3JlZW5zYXZlciBhbmQgYXV0byBzdXNwZW5kLiBZb3UgY2FuIGFsc28gZGVmaW5lIG90aGVyIGNvbmRpdGlvbnMgdGhhdCB3aWxsIGRpc2FibGUgdGhlIHNjcmVlbnNhdmVyIGFuZCBhdXRvIHN1c3BlbmQgc3VjaCBhcyB3aGVuIGFueSBhcHBsaWNhdGlvbiBpcyBydW5uaW5nIGluIGZ1bGwgc2NyZWVuIG1vZGUgYW5kL29yIHdoZW4gYW55IG9uZSBvZiBhIGRlZmluZWQgbGlzdCBvZiBhcHBsaWNhdGlvbnMgaXMgcnVubmluZy5cbkVzcHJlc3NvIGlzIGEgZm9yayBvZiBDYWZmZWluZSBhbmQgcHJvdmlkZXMgdGhlIHNhbWUgZnVuY3Rpb25hbGl0eS5cblxuUGxlYXNlIGZpbGUgYnVnIHJlcG9ydHMgb24gdGhlIGV4dGVuc2lvbiBob21lIHBhZ2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9jb2FkbXVua2VlL2dub21lLXNoZWxsLWV4dGVuc2lvbi1lc3ByZXNzby9pc3N1ZXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tZXNwcmVzc28iLAogICJuYW1lIjogIkVzcHJlc3NvIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmVzcHJlc3NvIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NvYWRtdW5rZWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWVzcHJlc3NvIiwKICAidXVpZCI6ICJlc3ByZXNzb0Bjb2FkbXVua2VlLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"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, in the center to the right of the clock.\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": "2", "sha256": "1d2pj1phh7z2h9mdhsll5kmwzz2pr1x3ca6ng5l50ga5b55i9af0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgdXNlckBob3N0IHRvIHRoZSB0b3AgcGFuZWwsIGluIHRoZSBjZW50ZXIgdG8gdGhlIHJpZ2h0IG9mIHRoZSBjbG9jay5cblxuTm90aGluZyBmYW5jeSwgbm8gc3VwcG9ydCAtLSBmb3JrIGF0IHdpbGwsIHRoZSB0aGluZyBpcyB2ZXJ5IHNpbXBsZS4iLAogICJuYW1lIjogIkFkZCB1c2VyQGhvc3QgdG8gdG9wIHBhbmVsIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImRhbmRhbWFuOTYiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY21tL2dub21lLXVzZXItYXQtaG9zdCIsCiAgInV1aWQiOiAidXNlci1hdC1ob3N0QGNtbS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "1d2pj1phh7z2h9mdhsll5kmwzz2pr1x3ca6ng5l50ga5b55i9af0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgdXNlckBob3N0IHRvIHRoZSB0b3AgcGFuZWwsIGluIHRoZSBjZW50ZXIgdG8gdGhlIHJpZ2h0IG9mIHRoZSBjbG9jay5cblxuTm90aGluZyBmYW5jeSwgbm8gc3VwcG9ydCAtLSBmb3JrIGF0IHdpbGwsIHRoZSB0aGluZyBpcyB2ZXJ5IHNpbXBsZS4iLAogICJuYW1lIjogIkFkZCB1c2VyQGhvc3QgdG8gdG9wIHBhbmVsIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImRhbmRhbWFuOTYiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY21tL2dub21lLXVzZXItYXQtaG9zdCIsCiAgInV1aWQiOiAidXNlci1hdC1ob3N0QGNtbS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
-, {"uuid": "vertical-overview@RensAlthuis.github.com", "name": "Vertical overview", "pname": "vertical-overview", "description": "Gnome has had vertically stacked workspaces for a long time. The Gnome 40 update unfortunately made the switch to a horizontal layout. A choice that many Gnome users disagree with. This extension Aims to replace the new Gnome overview with something that resembles the old style. \n\nhttps://github.com/RensAlthuis/vertical-overview", "link": "https://extensions.gnome.org/extension/4144/vertical-overview/", "shell_version_map": {"40": {"version": "5", "sha256": "04lvqn2l4wvsxk9g34n18h5sdqbyms2iwx72fd7il6rs21r0l1cb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdub21lIGhhcyBoYWQgdmVydGljYWxseSBzdGFja2VkIHdvcmtzcGFjZXMgZm9yIGEgbG9uZyB0aW1lLiBUaGUgR25vbWUgNDAgdXBkYXRlIHVuZm9ydHVuYXRlbHkgbWFkZSB0aGUgc3dpdGNoIHRvIGEgaG9yaXpvbnRhbCBsYXlvdXQuIEEgY2hvaWNlIHRoYXQgbWFueSBHbm9tZSB1c2VycyBkaXNhZ3JlZSB3aXRoLiBUaGlzIGV4dGVuc2lvbiBBaW1zIHRvIHJlcGxhY2UgdGhlIG5ldyBHbm9tZSBvdmVydmlldyB3aXRoIHNvbWV0aGluZyB0aGF0IHJlc2VtYmxlcyB0aGUgb2xkIHN0eWxlLiBcblxuaHR0cHM6Ly9naXRodWIuY29tL1JlbnNBbHRodWlzL3ZlcnRpY2FsLW92ZXJ2aWV3IiwKICAibmFtZSI6ICJWZXJ0aWNhbCBvdmVydmlldyIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJyZW5zLmFsdGh1aXNAZ21haWwuY29tIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ2ZXJ0aWNhbC1vdmVydmlld0BSZW5zQWx0aHVpcy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
+, {"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, in the center to the right of the clock.\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": "3", "sha256": "07112y510hmhsb8jy03apjnk5nww29xl4mhx9ag5z557xpfsckja", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgdXNlckBob3N0IHRvIHRoZSB0b3AgcGFuZWwsIGluIHRoZSBjZW50ZXIgdG8gdGhlIHJpZ2h0IG9mIHRoZSBjbG9jay5cblxuTm90aGluZyBmYW5jeSwgbm8gc3VwcG9ydCAtLSBmb3JrIGF0IHdpbGwsIHRoZSB0aGluZyBpcyB2ZXJ5IHNpbXBsZS4iLAogICJuYW1lIjogIkFkZCB1c2VyQGhvc3QgdG8gdG9wIHBhbmVsIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImRhbmRhbWFuOTYiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY21tL2dub21lLXVzZXItYXQtaG9zdCIsCiAgInV1aWQiOiAidXNlci1hdC1ob3N0QGNtbS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "40": {"version": "3", "sha256": "07112y510hmhsb8jy03apjnk5nww29xl4mhx9ag5z557xpfsckja", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgdXNlckBob3N0IHRvIHRoZSB0b3AgcGFuZWwsIGluIHRoZSBjZW50ZXIgdG8gdGhlIHJpZ2h0IG9mIHRoZSBjbG9jay5cblxuTm90aGluZyBmYW5jeSwgbm8gc3VwcG9ydCAtLSBmb3JrIGF0IHdpbGwsIHRoZSB0aGluZyBpcyB2ZXJ5IHNpbXBsZS4iLAogICJuYW1lIjogIkFkZCB1c2VyQGhvc3QgdG8gdG9wIHBhbmVsIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImRhbmRhbWFuOTYiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY21tL2dub21lLXVzZXItYXQtaG9zdCIsCiAgInV1aWQiOiAidXNlci1hdC1ob3N0QGNtbS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
+, {"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": "6", "sha256": "03a8k6fgqrd1ip3vn8xwfy2af721f8ricxyp2vx3l9lvvnvq58xa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5naW5nIGJhY2sgdmVydGljYWxseSBzdGFja2VkIHdvcmtzcGFjZXMiLAogICJuYW1lIjogIlZlcnRpY2FsIG92ZXJ2aWV3IiwKICAib3JpZ2luYWwtYXV0aG9yIjogInJlbnMuYWx0aHVpc0BnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInZlcnRpY2FsLW92ZXJ2aWV3QFJlbnNBbHRodWlzLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"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": "1", "sha256": "0gl29n7hdhw01m4wcyrsc3xnzahn84b1saw2qjl7cg09x8qz1rfi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBzaG93IHdvcmtzcGFjZSB0aHVtYm5haWxzIGV2ZW4gdGhlcmUgaXMgb25seSBvbmUgd29ya3NwYWNlLiIsCiAgIm5hbWUiOiAiQWx3YXlzIFNob3cgV29ya3NwYWNlIFRodW1ibmFpbHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQWx5bnhaaG91L2dub21lLXNoZWxsLWV4dGVuc2lvbi1hbHdheXMtc2hvdy13b3Jrc3BhY2UtdGh1bWJuYWlscy8iLAogICJ1dWlkIjogImFsd2F5c3Nob3d3b3Jrc3BhY2V0aHVtYm5haWxzQGFseW54Lm9uZSIsCiAgInZlcnNpb24iOiAxCn0="}}}
-, {"uuid": "gnome-ui-tune@itstime.tech", "name": "Gnome 40 UI Improvements", "pname": "gnome-40-ui-improvements", "description": "Tunes gnome 40'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- 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.", "link": "https://extensions.gnome.org/extension/4158/gnome-40-ui-improvements/", "shell_version_map": {"40": {"version": "5", "sha256": "0kmzmd74p1m9jbrdhbr0f8fv85b9f23mbnr5ca6xv9lx88ls279c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR1bmVzIGdub21lIDQwJ3MgT3ZlcnZpZXcgVUkgdG8gbWFrZSBpdCBtb3JlIHVzYWJsZS5cblxuQ2hhbmdlczpcbi0gU2VhcmNoIHRleHRib3ggaXMgaGlkZGVuIGJ5IGRlZmF1bHQgYW5kIHNob3duIG9ubHkgd2hlbiB1c2VyIGJlZ2lucyB0byB0eXBlLXRvLXNlYXJjaFxuLSBTY2FsZSBvZiB3b3Jrc3BhY2VzJyB0aHVtYm5haWxzIGluY3JlYXNlZCAyeFxuLSBSZXN0b3JlcyB3YWxscGFwZXIgb24gd29ya3NwYWNlcycgdGh1bWJuYWlscy4gTm8gbW9yZSBncmF5IGJhY2tncm91bmQuXG4tIEZpcmVmb3gncyBQSVAgKHBpY3R1cmUgaW4gcGljdHVyZSkgd2luZG93IGlzIG5vdyBkaXNwbGF5ZWQgb24gdGhlIG92ZXJ2aWV3IHNjcmVlblxuXG5BbGwgbW9kaWZpY2F0aW9ucyBjYW4gYmUgZGlzYWJsZWQgaW4gdGhlIGV4dGVuc2lvbidzIHNldHRpbmdzLiIsCiAgIm5hbWUiOiAiR25vbWUgNDAgVUkgSW1wcm92ZW1lbnRzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdub21lLXVpLXR1bmUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXh4YXB5L2dub21lLXVpLXR1bmUiLAogICJ1dWlkIjogImdub21lLXVpLXR1bmVAaXRzdGltZS50ZWNoIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
+, {"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": "2", "sha256": "1rnbvdq0p2kl17qz5j3k18i9s7mbi1n1k6hwbiwh2jr42xh3kd0l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBzaG93IHdvcmtzcGFjZSB0aHVtYm5haWxzIGV2ZW4gdGhlcmUgaXMgb25seSBvbmUgd29ya3NwYWNlLiIsCiAgIm5hbWUiOiAiQWx3YXlzIFNob3cgV29ya3NwYWNlIFRodW1ibmFpbHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQWx5bnhaaG91L2dub21lLXNoZWxsLWV4dGVuc2lvbi1hbHdheXMtc2hvdy13b3Jrc3BhY2UtdGh1bWJuYWlscy8iLAogICJ1dWlkIjogImFsd2F5c3Nob3d3b3Jrc3BhY2V0aHVtYm5haWxzQGFseW54Lm9uZSIsCiAgInZlcnNpb24iOiAyCn0="}}}
+, {"uuid": "gnome-ui-tune@itstime.tech", "name": "Gnome 40 UI Improvements", "pname": "gnome-40-ui-improvements", "description": "Tunes gnome 40'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.", "link": "https://extensions.gnome.org/extension/4158/gnome-40-ui-improvements/", "shell_version_map": {"40": {"version": "6", "sha256": "0gqs6yg9g6brq659l3wvypv4mq2h9a1wf8vvlad3nfmax8krqdma", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR1bmVzIGdub21lIDQwJ3MgT3ZlcnZpZXcgVUkgdG8gbWFrZSBpdCBtb3JlIHVzYWJsZS5cblxuQ2hhbmdlczpcbi0gU2VhcmNoIHRleHRib3ggaXMgaGlkZGVuIGJ5IGRlZmF1bHQgYW5kIHNob3duIG9ubHkgd2hlbiB1c2VyIGJlZ2lucyB0byB0eXBlLXRvLXNlYXJjaFxuLSBTY2FsZSBvZiB3b3Jrc3BhY2VzJyB0aHVtYm5haWxzIGluY3JlYXNlZCAyeFxuLSBSZXN0b3JlcyB3YWxscGFwZXIgb24gd29ya3NwYWNlcycgdGh1bWJuYWlscy4gTm8gbW9yZSBncmF5IGJhY2tncm91bmRcbi0gU2hvdyB3b3Jrc3BhY2VzJyB0aHVtYm5haWxzIGV2ZW4gd2hlbiB0aGVyZSBpcyBvbmx5IG9uZSB3b3Jrc3BhY2Vcbi0gRmlyZWZveCdzIFBJUCAocGljdHVyZSBpbiBwaWN0dXJlKSB3aW5kb3cgaXMgbm93IGRpc3BsYXllZCBvbiB0aGUgb3ZlcnZpZXcgc2NyZWVuXG5cbkFsbCBtb2RpZmljYXRpb25zIGNhbiBiZSBkaXNhYmxlZCBpbiB0aGUgZXh0ZW5zaW9uJ3Mgc2V0dGluZ3MuIiwKICAibmFtZSI6ICJHbm9tZSA0MCBVSSBJbXByb3ZlbWVudHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ25vbWUtdWktdHVuZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9heHhhcHkvZ25vbWUtdWktdHVuZSIsCiAgInV1aWQiOiAiZ25vbWUtdWktdHVuZUBpdHN0aW1lLnRlY2giLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"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": "3", "sha256": "0dj87kqxh5dg97i0185dkzh9sp97bwazzf3crx4fk4ajs7q6pv34", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkltcHJvdmVzIHRoZSB3aW5kb3cgc3dpdGNoZXIgb24gZHVhbCAob3IgbW9yZSkgbW9uaXRvciBzZXR1cHMiLAogICJuYW1lIjogIk1vbml0b3Igd2luZG93IHN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dlZHplcHBlbGluL21vbml0b3Itd2luZG93LXN3aXRjaGVyIiwKICAidXVpZCI6ICJtb25pdG9yLXdpbmRvdy1zd2l0Y2hlckB0aGVmdW5ndXNyb2NrZXQuY29tIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "40": {"version": "3", "sha256": "0dj87kqxh5dg97i0185dkzh9sp97bwazzf3crx4fk4ajs7q6pv34", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkltcHJvdmVzIHRoZSB3aW5kb3cgc3dpdGNoZXIgb24gZHVhbCAob3IgbW9yZSkgbW9uaXRvciBzZXR1cHMiLAogICJuYW1lIjogIk1vbml0b3Igd2luZG93IHN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dlZHplcHBlbGluL21vbml0b3Itd2luZG93LXN3aXRjaGVyIiwKICAidXVpZCI6ICJtb25pdG9yLXdpbmRvdy1zd2l0Y2hlckB0aGVmdW5ndXNyb2NrZXQuY29tIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
-, {"uuid": "custom-hot-corners-extended@G-dH.github.com", "name": "Custom Hot Corners - Extended", "pname": "custom-hot-corners-extended", "description": "Navigate and control Gnome Shell environment by a mouse through the corners and edges of your monitors.\nCustom Hot Corners - Extended can use mouse buttons and scroll wheel as well as hot corners and offers lots of actions including activities overview, app grid, show and hide desktop, commands execution (with app chooser), customizable workspace and window switchers, window control (incl. close, maximize, fullscreen, always on top, ...), window and global color effects (red and green tint, brightness, contrast, inversion, transparency, Night Light), dark / light theme switcher, volume control, universal access functions (incl. zoom and on-screen keyboard), system control (lock screen, shutdown, suspend, logout, switch user), toggle hide main panel, open Looking Glass, ...\n\nRestart your Gnome Shell after each update of the extension to load new code.\nPlease report bugs 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", "link": "https://extensions.gnome.org/extension/4167/custom-hot-corners-extended/", "shell_version_map": {"38": {"version": "7", "sha256": "0fhqlwjz7q2ah03m2k9qj2cb1pvxwhba49ghsdim3apd8d9w4n5r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5hdmlnYXRlIGFuZCBjb250cm9sIEdub21lIFNoZWxsIGVudmlyb25tZW50IGJ5IGEgbW91c2UgdGhyb3VnaCB0aGUgY29ybmVycyBhbmQgZWRnZXMgb2YgeW91ciBtb25pdG9ycy5cbkN1c3RvbSBIb3QgQ29ybmVycyAtIEV4dGVuZGVkIGNhbiB1c2UgbW91c2UgYnV0dG9ucyBhbmQgc2Nyb2xsIHdoZWVsIGFzIHdlbGwgYXMgaG90IGNvcm5lcnMgYW5kIG9mZmVycyBsb3RzIG9mIGFjdGlvbnMgaW5jbHVkaW5nIGFjdGl2aXRpZXMgb3ZlcnZpZXcsIGFwcCBncmlkLCBzaG93IGFuZCBoaWRlIGRlc2t0b3AsIGNvbW1hbmRzIGV4ZWN1dGlvbiAod2l0aCBhcHAgY2hvb3NlciksIGN1c3RvbWl6YWJsZSB3b3Jrc3BhY2UgYW5kIHdpbmRvdyBzd2l0Y2hlcnMsIHdpbmRvdyBjb250cm9sIChpbmNsLiBjbG9zZSwgbWF4aW1pemUsIGZ1bGxzY3JlZW4sIGFsd2F5cyBvbiB0b3AsIC4uLiksIHdpbmRvdyBhbmQgZ2xvYmFsIGNvbG9yIGVmZmVjdHMgKHJlZCBhbmQgZ3JlZW4gdGludCwgYnJpZ2h0bmVzcywgY29udHJhc3QsIGludmVyc2lvbiwgdHJhbnNwYXJlbmN5LCBOaWdodCBMaWdodCksIGRhcmsgLyBsaWdodCB0aGVtZSBzd2l0Y2hlciwgdm9sdW1lIGNvbnRyb2wsIHVuaXZlcnNhbCBhY2Nlc3MgZnVuY3Rpb25zIChpbmNsLiB6b29tIGFuZCBvbi1zY3JlZW4ga2V5Ym9hcmQpLCBzeXN0ZW0gY29udHJvbCAobG9jayBzY3JlZW4sIHNodXRkb3duLCBzdXNwZW5kLCBsb2dvdXQsIHN3aXRjaCB1c2VyKSwgdG9nZ2xlIGhpZGUgbWFpbiBwYW5lbCwgb3BlbiBMb29raW5nIEdsYXNzLCAuLi5cblxuUmVzdGFydCB5b3VyIEdub21lIFNoZWxsIGFmdGVyIGVhY2ggdXBkYXRlIG9mIHRoZSBleHRlbnNpb24gdG8gbG9hZCBuZXcgY29kZS5cblBsZWFzZSByZXBvcnQgYnVncyBvbiBHaXRIdWIgbGlua2VkIGJlbG93IGFuZCBhZGQgb3V0cHV0IGZyb20gdGhlc2UgdHdvIGNvbW1hbmRzOlxuam91cm5hbGN0bCAvdXNyL2Jpbi9nbm9tZS1zaGVsbCAtLXNpbmNlIFwiMiBkYXlzIGFnb1wiIHwgZ3JlcCBjb3JuZXJzLWV4dGVuZGVkXG5qb3VybmFsY3RsIC91c3IvYmluL2dqcyAtLXNpbmNlIFwiMiBkYXlzIGFnb1wiIHwgZ3JlcCBjb3JuZXJzLWV4dGVuZGVkIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY3VzdG9tLWhvdC1jb3JuZXJzLWV4dGVuZGVkIiwKICAibmFtZSI6ICJDdXN0b20gSG90IENvcm5lcnMgLSBFeHRlbmRlZCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jdXN0b20taG90LWNvcm5lcnMtZXh0ZW5kZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRy1kSC9jdXN0b20taG90LWNvcm5lcnMvdHJlZS9nZGgiLAogICJ1dWlkIjogImN1c3RvbS1ob3QtY29ybmVycy1leHRlbmRlZEBHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}, "40": {"version": "7", "sha256": "0fhqlwjz7q2ah03m2k9qj2cb1pvxwhba49ghsdim3apd8d9w4n5r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5hdmlnYXRlIGFuZCBjb250cm9sIEdub21lIFNoZWxsIGVudmlyb25tZW50IGJ5IGEgbW91c2UgdGhyb3VnaCB0aGUgY29ybmVycyBhbmQgZWRnZXMgb2YgeW91ciBtb25pdG9ycy5cbkN1c3RvbSBIb3QgQ29ybmVycyAtIEV4dGVuZGVkIGNhbiB1c2UgbW91c2UgYnV0dG9ucyBhbmQgc2Nyb2xsIHdoZWVsIGFzIHdlbGwgYXMgaG90IGNvcm5lcnMgYW5kIG9mZmVycyBsb3RzIG9mIGFjdGlvbnMgaW5jbHVkaW5nIGFjdGl2aXRpZXMgb3ZlcnZpZXcsIGFwcCBncmlkLCBzaG93IGFuZCBoaWRlIGRlc2t0b3AsIGNvbW1hbmRzIGV4ZWN1dGlvbiAod2l0aCBhcHAgY2hvb3NlciksIGN1c3RvbWl6YWJsZSB3b3Jrc3BhY2UgYW5kIHdpbmRvdyBzd2l0Y2hlcnMsIHdpbmRvdyBjb250cm9sIChpbmNsLiBjbG9zZSwgbWF4aW1pemUsIGZ1bGxzY3JlZW4sIGFsd2F5cyBvbiB0b3AsIC4uLiksIHdpbmRvdyBhbmQgZ2xvYmFsIGNvbG9yIGVmZmVjdHMgKHJlZCBhbmQgZ3JlZW4gdGludCwgYnJpZ2h0bmVzcywgY29udHJhc3QsIGludmVyc2lvbiwgdHJhbnNwYXJlbmN5LCBOaWdodCBMaWdodCksIGRhcmsgLyBsaWdodCB0aGVtZSBzd2l0Y2hlciwgdm9sdW1lIGNvbnRyb2wsIHVuaXZlcnNhbCBhY2Nlc3MgZnVuY3Rpb25zIChpbmNsLiB6b29tIGFuZCBvbi1zY3JlZW4ga2V5Ym9hcmQpLCBzeXN0ZW0gY29udHJvbCAobG9jayBzY3JlZW4sIHNodXRkb3duLCBzdXNwZW5kLCBsb2dvdXQsIHN3aXRjaCB1c2VyKSwgdG9nZ2xlIGhpZGUgbWFpbiBwYW5lbCwgb3BlbiBMb29raW5nIEdsYXNzLCAuLi5cblxuUmVzdGFydCB5b3VyIEdub21lIFNoZWxsIGFmdGVyIGVhY2ggdXBkYXRlIG9mIHRoZSBleHRlbnNpb24gdG8gbG9hZCBuZXcgY29kZS5cblBsZWFzZSByZXBvcnQgYnVncyBvbiBHaXRIdWIgbGlua2VkIGJlbG93IGFuZCBhZGQgb3V0cHV0IGZyb20gdGhlc2UgdHdvIGNvbW1hbmRzOlxuam91cm5hbGN0bCAvdXNyL2Jpbi9nbm9tZS1zaGVsbCAtLXNpbmNlIFwiMiBkYXlzIGFnb1wiIHwgZ3JlcCBjb3JuZXJzLWV4dGVuZGVkXG5qb3VybmFsY3RsIC91c3IvYmluL2dqcyAtLXNpbmNlIFwiMiBkYXlzIGFnb1wiIHwgZ3JlcCBjb3JuZXJzLWV4dGVuZGVkIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY3VzdG9tLWhvdC1jb3JuZXJzLWV4dGVuZGVkIiwKICAibmFtZSI6ICJDdXN0b20gSG90IENvcm5lcnMgLSBFeHRlbmRlZCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jdXN0b20taG90LWNvcm5lcnMtZXh0ZW5kZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRy1kSC9jdXN0b20taG90LWNvcm5lcnMvdHJlZS9nZGgiLAogICJ1dWlkIjogImN1c3RvbS1ob3QtY29ybmVycy1leHRlbmRlZEBHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}}}
-, {"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).\n\nNote: I put version 40.0 by mistake. It does not make any difference whether you choose Gnome 40 or Gnome 40.0.", "link": "https://extensions.gnome.org/extension/4170/home-assistant-extension/", "shell_version_map": {"38": {"version": "3", "sha256": "13zl33w7ax8bd72894dwl8vkr9h0ks0wlcnncbhcrj12zpz3nm3h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIGdub21lIHNoZWxsIGV4dGVuc2lvbiBmb3IgSG9tZSBBc3Npc3RhbnQuIENoZWNrIHRoZSBSRUFETUUgb24gZ2l0aHViIGZvciBhZGRpdGlvbmFsIGhlbHAhXG5cbk1haW4gcG9pbnRzOlxuLSBZb3UgbmVlZCB0byBwcm92aWRlIHRoZSB1cmwgb2YgeW91ciBoYXNzLCBhIGxvbmcgbGl2ZSBhY2Nlc3MgdG9rZW4gb2J0YWluZWQgZnJvbSB5b3VyIHByb2ZpbGUgcGFnZSAob24geW91ciBoYXNzIHdlYiBpbnN0YW5jZSkgYW5kIHRoZSBlbnRpdHkgaWRzIG9mIHRoZSBlbnRpdGllcyB5b3Ugd2FudCB0byBoYXZlIGFzIHRvZ2dsYWJsZS5cbi0gSW4gb3JkZXIgdG8gYWRkIHNvbWUgbG9jYWwgdGVtcGVyYXR1cmUvaHVtaWRpdHkgc2Vuc29yLCB5b3UgbWF5IGFsc28gcHJvdmlkZSBhIHRlbXBlcmF0dXJlIGFuZC9vciBhIGh1bWlkaXR5IGVudGl0eSBpZCAod2hpY2ggc2hvdWxkIG1hdGNoIHRoZSBjb3JyZXNwb25kaW5nIGlkcyBvZiB5b3VyIGhhc3MgaW5zdGFuY2UpLlxuXG5Ob3RlOiBJIHB1dCB2ZXJzaW9uIDQwLjAgYnkgbWlzdGFrZS4gSXQgZG9lcyBub3QgbWFrZSBhbnkgZGlmZmVyZW5jZSB3aGV0aGVyIHlvdSBjaG9vc2UgR25vbWUgNDAgb3IgR25vbWUgNDAuMC4iLAogICJuYW1lIjogIkhvbWUgQXNzaXN0YW50IEV4dGVuc2lvbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5oYXNzLWRhdGEiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nZW9waDkvaGFzcy1nc2hlbGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJoYXNzLWdzaGVsbEBnZW9waDktb24tZ2l0aHViIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "40": {"version": "4", "sha256": "0xiw8h1gs078cpz0lxw8xbwldwgbpfsp6x3khgmi71f88jh2razm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIGdub21lIHNoZWxsIGV4dGVuc2lvbiBmb3IgSG9tZSBBc3Npc3RhbnQuIENoZWNrIHRoZSBSRUFETUUgb24gZ2l0aHViIGZvciBhZGRpdGlvbmFsIGhlbHAhXG5cbk1haW4gcG9pbnRzOlxuLSBZb3UgbmVlZCB0byBwcm92aWRlIHRoZSB1cmwgb2YgeW91ciBoYXNzLCBhIGxvbmcgbGl2ZSBhY2Nlc3MgdG9rZW4gb2J0YWluZWQgZnJvbSB5b3VyIHByb2ZpbGUgcGFnZSAob24geW91ciBoYXNzIHdlYiBpbnN0YW5jZSkgYW5kIHRoZSBlbnRpdHkgaWRzIG9mIHRoZSBlbnRpdGllcyB5b3Ugd2FudCB0byBoYXZlIGFzIHRvZ2dsYWJsZS5cbi0gSW4gb3JkZXIgdG8gYWRkIHNvbWUgbG9jYWwgdGVtcGVyYXR1cmUvaHVtaWRpdHkgc2Vuc29yLCB5b3UgbWF5IGFsc28gcHJvdmlkZSBhIHRlbXBlcmF0dXJlIGFuZC9vciBhIGh1bWlkaXR5IGVudGl0eSBpZCAod2hpY2ggc2hvdWxkIG1hdGNoIHRoZSBjb3JyZXNwb25kaW5nIGlkcyBvZiB5b3VyIGhhc3MgaW5zdGFuY2UpLlxuXG5Ob3RlOiBJIHB1dCB2ZXJzaW9uIDQwLjAgYnkgbWlzdGFrZS4gSXQgZG9lcyBub3QgbWFrZSBhbnkgZGlmZmVyZW5jZSB3aGV0aGVyIHlvdSBjaG9vc2UgR25vbWUgNDAgb3IgR25vbWUgNDAuMC4iLAogICJuYW1lIjogIkhvbWUgQXNzaXN0YW50IEV4dGVuc2lvbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5oYXNzLWRhdGEiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwLjAiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ2VvcGg5L2hhc3MtZ3NoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiaGFzcy1nc2hlbGxAZ2VvcGg5LW9uLWdpdGh1YiIsCiAgInZlcnNpb24iOiA0Cn0="}}}
+, {"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. Mouse pointer pressure, clicks and scrolls over the corners/edges and also keyboard shortcuts can trigger any of dozens of built-in actions.\nThis extension is a big collection of actions that lets you navigate and control the Gnome Shell environment and opened windows and launch applications and scripts not only through the corners and edges of your monitors, but also by the custom keyboard shortcuts.\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, brightness, contrast, transparent, opacity, color effect, invert lightness, color tint, color blind 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": "9", "sha256": "10yscxvanv6jsk9ld6cr1rc78my3cgd2vfmqjn300xyaw16p7lw4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdpdmUgYSBmdW5jdGlvbiB0byBhbnkgY29ybmVyIG9yIGVkZ2Ugb2YgeW91ciBtb25pdG9ycy4gTW91c2UgcG9pbnRlciBwcmVzc3VyZSwgY2xpY2tzIGFuZCBzY3JvbGxzIG92ZXIgdGhlIGNvcm5lcnMvZWRnZXMgYW5kIGFsc28ga2V5Ym9hcmQgc2hvcnRjdXRzIGNhbiB0cmlnZ2VyIGFueSBvZiBkb3plbnMgb2YgYnVpbHQtaW4gYWN0aW9ucy5cblRoaXMgZXh0ZW5zaW9uIGlzIGEgYmlnIGNvbGxlY3Rpb24gb2YgYWN0aW9ucyB0aGF0IGxldHMgeW91IG5hdmlnYXRlIGFuZCBjb250cm9sIHRoZSBHbm9tZSBTaGVsbCBlbnZpcm9ubWVudCBhbmQgb3BlbmVkIHdpbmRvd3MgYW5kIGxhdW5jaCBhcHBsaWNhdGlvbnMgYW5kIHNjcmlwdHMgbm90IG9ubHkgdGhyb3VnaCB0aGUgY29ybmVycyBhbmQgZWRnZXMgb2YgeW91ciBtb25pdG9ycywgYnV0IGFsc28gYnkgdGhlIGN1c3RvbSBrZXlib2FyZCBzaG9ydGN1dHMuXG5cblJlc3RhcnQgeW91ciBHbm9tZSBTaGVsbCBhZnRlciBlYWNoIHVwZGF0ZSBvZiB0aGUgZXh0ZW5zaW9uIHRvIGxvYWQgbmV3IGNvZGUsIGFuZCByZWxvYWQgdGhpcyBzaXRlIHRvIGdldCByaWQgb2YgdGhlIGVycm9yIG1lc3NhZ2UsIGJlZm9yZSB5b3UgcG9zdCBhIGJ1ZyByZXBvcnQuXG5QbGVhc2UgcmVwb3J0IGJ1Z3MvaXNzdWVzIG9uIEdpdEh1YiBsaW5rZWQgYmVsb3cgYW5kIGFkZCBvdXRwdXQgZnJvbSB0aGVzZSB0d28gY29tbWFuZHM6XG5qb3VybmFsY3RsIC91c3IvYmluL2dub21lLXNoZWxsIC0tc2luY2UgXCIyIGRheXMgYWdvXCIgfCBncmVwIGNvcm5lcnMtZXh0ZW5kZWRcbmpvdXJuYWxjdGwgL3Vzci9iaW4vZ2pzIC0tc2luY2UgXCIyIGRheXMgYWdvXCIgfCBncmVwIGNvcm5lcnMtZXh0ZW5kZWRcblxua2V5d29yZHM6IG92ZXJ2aWV3LCBhcHAgZ3JpZCwgYnJpZ2h0bmVzcywgY29udHJhc3QsIHRyYW5zcGFyZW50LCBvcGFjaXR5LCBjb2xvciBlZmZlY3QsIGludmVydCBsaWdodG5lc3MsIGNvbG9yIHRpbnQsIGNvbG9yIGJsaW5kIHNpbXVsYXRpb24sIGRlc2F0dXJhdGUsIG5pZ2h0IGxpZ2h0cywgZGFyayB0aGVtZSwgdm9sdW1lLCBtdXRlLCBtYWduaWZpZXIsIHpvb20sIHNjcmVlbiBrZXlib2FyZCwgcmVhZGVyLCBsYXJnZSB0ZXh0LCBmb3JjZSBjbG9zZSwga2lsbCAtOSwgc2hvdyBkZXNrdG9wLCByZW9yZGVyIHdvcmtzcGFjZSwgd2luZG93IHRodW1ibmFpbCAvIHByZXZpZXcsIGxvb2tpbmcgZ2xhc3MsIGN1c3RvbSBtZW51LCB3aW5kb3csIHdvcmtzcGFjZSwgc3dpdGNoZXIsIGhpZGUgcGFuZWwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjdXN0b20taG90LWNvcm5lcnMtZXh0ZW5kZWQiLAogICJuYW1lIjogIkN1c3RvbSBIb3QgQ29ybmVycyAtIEV4dGVuZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmN1c3RvbS1ob3QtY29ybmVycy1leHRlbmRlZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9HLWRIL2N1c3RvbS1ob3QtY29ybmVycy90cmVlL2dkaCIsCiAgInV1aWQiOiAiY3VzdG9tLWhvdC1jb3JuZXJzLWV4dGVuZGVkQEctZEguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA5Cn0="}, "40": {"version": "9", "sha256": "10yscxvanv6jsk9ld6cr1rc78my3cgd2vfmqjn300xyaw16p7lw4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdpdmUgYSBmdW5jdGlvbiB0byBhbnkgY29ybmVyIG9yIGVkZ2Ugb2YgeW91ciBtb25pdG9ycy4gTW91c2UgcG9pbnRlciBwcmVzc3VyZSwgY2xpY2tzIGFuZCBzY3JvbGxzIG92ZXIgdGhlIGNvcm5lcnMvZWRnZXMgYW5kIGFsc28ga2V5Ym9hcmQgc2hvcnRjdXRzIGNhbiB0cmlnZ2VyIGFueSBvZiBkb3plbnMgb2YgYnVpbHQtaW4gYWN0aW9ucy5cblRoaXMgZXh0ZW5zaW9uIGlzIGEgYmlnIGNvbGxlY3Rpb24gb2YgYWN0aW9ucyB0aGF0IGxldHMgeW91IG5hdmlnYXRlIGFuZCBjb250cm9sIHRoZSBHbm9tZSBTaGVsbCBlbnZpcm9ubWVudCBhbmQgb3BlbmVkIHdpbmRvd3MgYW5kIGxhdW5jaCBhcHBsaWNhdGlvbnMgYW5kIHNjcmlwdHMgbm90IG9ubHkgdGhyb3VnaCB0aGUgY29ybmVycyBhbmQgZWRnZXMgb2YgeW91ciBtb25pdG9ycywgYnV0IGFsc28gYnkgdGhlIGN1c3RvbSBrZXlib2FyZCBzaG9ydGN1dHMuXG5cblJlc3RhcnQgeW91ciBHbm9tZSBTaGVsbCBhZnRlciBlYWNoIHVwZGF0ZSBvZiB0aGUgZXh0ZW5zaW9uIHRvIGxvYWQgbmV3IGNvZGUsIGFuZCByZWxvYWQgdGhpcyBzaXRlIHRvIGdldCByaWQgb2YgdGhlIGVycm9yIG1lc3NhZ2UsIGJlZm9yZSB5b3UgcG9zdCBhIGJ1ZyByZXBvcnQuXG5QbGVhc2UgcmVwb3J0IGJ1Z3MvaXNzdWVzIG9uIEdpdEh1YiBsaW5rZWQgYmVsb3cgYW5kIGFkZCBvdXRwdXQgZnJvbSB0aGVzZSB0d28gY29tbWFuZHM6XG5qb3VybmFsY3RsIC91c3IvYmluL2dub21lLXNoZWxsIC0tc2luY2UgXCIyIGRheXMgYWdvXCIgfCBncmVwIGNvcm5lcnMtZXh0ZW5kZWRcbmpvdXJuYWxjdGwgL3Vzci9iaW4vZ2pzIC0tc2luY2UgXCIyIGRheXMgYWdvXCIgfCBncmVwIGNvcm5lcnMtZXh0ZW5kZWRcblxua2V5d29yZHM6IG92ZXJ2aWV3LCBhcHAgZ3JpZCwgYnJpZ2h0bmVzcywgY29udHJhc3QsIHRyYW5zcGFyZW50LCBvcGFjaXR5LCBjb2xvciBlZmZlY3QsIGludmVydCBsaWdodG5lc3MsIGNvbG9yIHRpbnQsIGNvbG9yIGJsaW5kIHNpbXVsYXRpb24sIGRlc2F0dXJhdGUsIG5pZ2h0IGxpZ2h0cywgZGFyayB0aGVtZSwgdm9sdW1lLCBtdXRlLCBtYWduaWZpZXIsIHpvb20sIHNjcmVlbiBrZXlib2FyZCwgcmVhZGVyLCBsYXJnZSB0ZXh0LCBmb3JjZSBjbG9zZSwga2lsbCAtOSwgc2hvdyBkZXNrdG9wLCByZW9yZGVyIHdvcmtzcGFjZSwgd2luZG93IHRodW1ibmFpbCAvIHByZXZpZXcsIGxvb2tpbmcgZ2xhc3MsIGN1c3RvbSBtZW51LCB3aW5kb3csIHdvcmtzcGFjZSwgc3dpdGNoZXIsIGhpZGUgcGFuZWwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjdXN0b20taG90LWNvcm5lcnMtZXh0ZW5kZWQiLAogICJuYW1lIjogIkN1c3RvbSBIb3QgQ29ybmVycyAtIEV4dGVuZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmN1c3RvbS1ob3QtY29ybmVycy1leHRlbmRlZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9HLWRIL2N1c3RvbS1ob3QtY29ybmVycy90cmVlL2dkaCIsCiAgInV1aWQiOiAiY3VzdG9tLWhvdC1jb3JuZXJzLWV4dGVuZGVkQEctZEguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA5Cn0="}}}
+, {"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": "5", "sha256": "01y0kdmdg48s26yf8l2kfrfd8zwjg8jj797g196wr5afy9fn55ws", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIGdub21lIHNoZWxsIGV4dGVuc2lvbiBmb3IgSG9tZSBBc3Npc3RhbnQuIENoZWNrIHRoZSBSRUFETUUgb24gZ2l0aHViIGZvciBhZGRpdGlvbmFsIGhlbHAhXG5cbk1haW4gcG9pbnRzOlxuLSBZb3UgbmVlZCB0byBwcm92aWRlIHRoZSB1cmwgb2YgeW91ciBoYXNzLCBhIGxvbmcgbGl2ZSBhY2Nlc3MgdG9rZW4gb2J0YWluZWQgZnJvbSB5b3VyIHByb2ZpbGUgcGFnZSAob24geW91ciBoYXNzIHdlYiBpbnN0YW5jZSkgYW5kIHRoZSBlbnRpdHkgaWRzIG9mIHRoZSBlbnRpdGllcyB5b3Ugd2FudCB0byBoYXZlIGFzIHRvZ2dsYWJsZS5cbi0gSW4gb3JkZXIgdG8gYWRkIHNvbWUgbG9jYWwgdGVtcGVyYXR1cmUvaHVtaWRpdHkgc2Vuc29yLCB5b3UgbWF5IGFsc28gcHJvdmlkZSBhIHRlbXBlcmF0dXJlIGFuZC9vciBhIGh1bWlkaXR5IGVudGl0eSBpZCAod2hpY2ggc2hvdWxkIG1hdGNoIHRoZSBjb3JyZXNwb25kaW5nIGlkcyBvZiB5b3VyIGhhc3MgaW5zdGFuY2UpLiIsCiAgIm5hbWUiOiAiSG9tZSBBc3Npc3RhbnQgRXh0ZW5zaW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmhhc3MtZGF0YSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nZW9waDkvaGFzcy1nc2hlbGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJoYXNzLWdzaGVsbEBnZW9waDktb24tZ2l0aHViIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
 , {"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": "4", "sha256": "0nh6df4l5f2wkkcngilrwiwyj97zdkrx7g6as4ppk6aj10ybmxcj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZ1bGx5IHRyYW5zcGFyZW50IHRvcGJhciwgcGFpcnMgd2l0aCB0aGUgemhhbmdoYWkgdHJhbnNwYXJlbnQgdG9wIGJhciBleHRlbnNpb24gdG8gbWFrZSBiYXIgb3BhcXVlIHdoZW4gd2luZG93IGlzIG1heGltaXplZCIsCiAgIm5hbWUiOiAiQ2xlYXIgVG9wIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdXBlcnRlcnJhbi9nbm9tZS1zaGVsbC1leHRlbnNpb24tY2xlYXItdG9wLWJhciIsCiAgInV1aWQiOiAiY2xlYXItdG9wLWJhckBzdXBlcnRlcnJhbi5uZXQiLAogICJ2ZXJzaW9uIjogNAp9"}}}
 , {"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": "4", "sha256": "1c7q3iqcdfqralclixj1frzcpvpw66fs6rdyvi8g90l454c4033c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSBzeXN0ZW1kIHNlcnZpY2VzIG9uL29mZiBmcm9tIGEgcG9wdXAgbWVudSBpbiB0aGUgdG9wIGdub21lIHBhbmVsLiBDYW4gYmUgdXNlZCB0byBzdGFydCBzZXJ2aWNlcyBsaWtlIGFwYWNoZTIsIG15c3FsLCBwb3N0Z3Jlcy4gSXQgdXNlcyBgcGtleGVjJyB0byBydW4gYHN5dGVtY3RsJy4gSWYgeW91IHdhbnQgdG8gc3RhcnQgc2VydmljZXMgd2l0aG91dCBlbnRlcmluZyBhIHBhc3N3b3JkIHlvdSBoYXZlIHRvIHBvbGtpdCBwb2xpY3kgZmlsZS4gQW4gZXhhbXBsZSBwb2xpY3kgZmlsZSBjYW4gYmUgZm91bmQgaW4gdGhlIGdpdGh1YiByZXBvc2l0b3J5LiIsCiAgImdldHRleHQtZG9tYWluIjogInN5c3RlbWQtbWFuYWdlciIsCiAgIm5hbWUiOiAiU3lzdGVtZCBNYW5hZ2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnN5c3RlbWQtbWFuYWdlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJkcGl4ZWwvc3lzdGVtZC1tYW5hZ2VyIiwKICAidXVpZCI6ICJzeXN0ZW1kLW1hbmFnZXJAaGFyZHBpeGVsLmV1IiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "4", "sha256": "1c7q3iqcdfqralclixj1frzcpvpw66fs6rdyvi8g90l454c4033c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSBzeXN0ZW1kIHNlcnZpY2VzIG9uL29mZiBmcm9tIGEgcG9wdXAgbWVudSBpbiB0aGUgdG9wIGdub21lIHBhbmVsLiBDYW4gYmUgdXNlZCB0byBzdGFydCBzZXJ2aWNlcyBsaWtlIGFwYWNoZTIsIG15c3FsLCBwb3N0Z3Jlcy4gSXQgdXNlcyBgcGtleGVjJyB0byBydW4gYHN5dGVtY3RsJy4gSWYgeW91IHdhbnQgdG8gc3RhcnQgc2VydmljZXMgd2l0aG91dCBlbnRlcmluZyBhIHBhc3N3b3JkIHlvdSBoYXZlIHRvIHBvbGtpdCBwb2xpY3kgZmlsZS4gQW4gZXhhbXBsZSBwb2xpY3kgZmlsZSBjYW4gYmUgZm91bmQgaW4gdGhlIGdpdGh1YiByZXBvc2l0b3J5LiIsCiAgImdldHRleHQtZG9tYWluIjogInN5c3RlbWQtbWFuYWdlciIsCiAgIm5hbWUiOiAiU3lzdGVtZCBNYW5hZ2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnN5c3RlbWQtbWFuYWdlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJkcGl4ZWwvc3lzdGVtZC1tYW5hZ2VyIiwKICAidXVpZCI6ICJzeXN0ZW1kLW1hbmFnZXJAaGFyZHBpeGVsLmV1IiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
-, {"uuid": "auto-activities@acedron.github.io", "name": "Auto Activities", "pname": "auto-activities", "description": "Show activities overview when there are no windows.", "link": "https://extensions.gnome.org/extension/4179/auto-activities/", "shell_version_map": {"40": {"version": "10", "sha256": "0qd4ngwx3w6l65rm5zz8zwlcippfy3f1crf36wbds6dc57sn3nj8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgYWN0aXZpdGllcyBvdmVydmlldyB3aGVuIHRoZXJlIGFyZSBubyB3aW5kb3dzLiIsCiAgImdldHRleHQtZG9tYWluIjogImF1dG8tYWN0aXZpdGllcyIsCiAgIm5hbWUiOiAiQXV0byBBY3Rpdml0aWVzIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImFjZWRyb25zQHlhaG9vLmNvLmpwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FjZWRyb24vYXV0by1hY3Rpdml0aWVzIiwKICAidXVpZCI6ICJhdXRvLWFjdGl2aXRpZXNAYWNlZHJvbi5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMTAKfQ=="}}}
+, {"uuid": "auto-activities@acedron.github.io", "name": "Auto Activities", "pname": "auto-activities", "description": "Show activities overview when there are no windows, or hide it when there are new windows.", "link": "https://extensions.gnome.org/extension/4179/auto-activities/", "shell_version_map": {"40": {"version": "11", "sha256": "1kfwnmqax6dd1mglxw6cdcz7vbzgskhp2js8pyqziaxd4yyxqa38", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgYWN0aXZpdGllcyBvdmVydmlldyB3aGVuIHRoZXJlIGFyZSBubyB3aW5kb3dzLCBvciBoaWRlIGl0IHdoZW4gdGhlcmUgYXJlIG5ldyB3aW5kb3dzLiIsCiAgImdldHRleHQtZG9tYWluIjogImF1dG8tYWN0aXZpdGllcyIsCiAgIm5hbWUiOiAiQXV0byBBY3Rpdml0aWVzIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImFjZWRyb25zQHlhaG9vLmNvLmpwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FjZWRyb24vYXV0by1hY3Rpdml0aWVzIiwKICAidXVpZCI6ICJhdXRvLWFjdGl2aXRpZXNAYWNlZHJvbi5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}}}
 , {"uuid": "clippie@blackjackshellac.ca", "name": "clippie [replaced by eclipse]", "pname": "clippie", "description": "clippie has been rereleased as 'eclipse'\n\nClipboard interface to gpaste-client output\n\nhttps://extensions.gnome.org/extension/4246/eclipse/\n\nClippie now uses dbus to communicate with the gpaste daemon\nAdded encryption of clipboard items with eclipse feature", "link": "https://extensions.gnome.org/extension/4182/clippie/", "shell_version_map": {"38": {"version": "6", "sha256": "05kd2pq605k21yq6wcaqcm2lrpnlc6mbiq1wxgmwdnpvi7ib2h8k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNsaXBwaWUgaGFzIGJlZW4gcmVyZWxlYXNlZCBhcyAnZWNsaXBzZSdcblxuQ2xpcGJvYXJkIGludGVyZmFjZSB0byBncGFzdGUtY2xpZW50IG91dHB1dFxuXG5odHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi80MjQ2L2VjbGlwc2UvXG5cbkNsaXBwaWUgbm93IHVzZXMgZGJ1cyB0byBjb21tdW5pY2F0ZSB3aXRoIHRoZSBncGFzdGUgZGFlbW9uXG5BZGRlZCBlbmNyeXB0aW9uIG9mIGNsaXBib2FyZCBpdGVtcyB3aXRoIGVjbGlwc2UgZmVhdHVyZSIsCiAgImdldHRleHQtZG9tYWluIjogImNsaXBwaWUtYmxhY2tqYWNrc2hlbGxhYyIsCiAgIm5hbWUiOiAiY2xpcHBpZSBbcmVwbGFjZWQgYnkgZWNsaXBzZV0iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY2xpcHBpZS1ibGFja2phY2tzaGVsbGFjIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JsYWNramFja3NoZWxsYWMvZWNsaXBzZSIsCiAgInV1aWQiOiAiY2xpcHBpZUBibGFja2phY2tzaGVsbGFjLmNhIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "6", "sha256": "05kd2pq605k21yq6wcaqcm2lrpnlc6mbiq1wxgmwdnpvi7ib2h8k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNsaXBwaWUgaGFzIGJlZW4gcmVyZWxlYXNlZCBhcyAnZWNsaXBzZSdcblxuQ2xpcGJvYXJkIGludGVyZmFjZSB0byBncGFzdGUtY2xpZW50IG91dHB1dFxuXG5odHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi80MjQ2L2VjbGlwc2UvXG5cbkNsaXBwaWUgbm93IHVzZXMgZGJ1cyB0byBjb21tdW5pY2F0ZSB3aXRoIHRoZSBncGFzdGUgZGFlbW9uXG5BZGRlZCBlbmNyeXB0aW9uIG9mIGNsaXBib2FyZCBpdGVtcyB3aXRoIGVjbGlwc2UgZmVhdHVyZSIsCiAgImdldHRleHQtZG9tYWluIjogImNsaXBwaWUtYmxhY2tqYWNrc2hlbGxhYyIsCiAgIm5hbWUiOiAiY2xpcHBpZSBbcmVwbGFjZWQgYnkgZWNsaXBzZV0iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY2xpcHBpZS1ibGFja2phY2tzaGVsbGFjIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JsYWNramFja3NoZWxsYWMvZWNsaXBzZSIsCiAgInV1aWQiOiAiY2xpcHBpZUBibGFja2phY2tzaGVsbGFjLmNhIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
-, {"uuid": "quick-app-launcher@leleat-on-github", "name": "Quick App Launcher", "pname": "quick-app-launcher", "description": "Launch apps with keybindings. If the to-be-launched app already has a window open, focus that window instead. If the focused window is an instance of the app, open a new window.", "link": "https://extensions.gnome.org/extension/4188/quick-app-launcher/", "shell_version_map": {"38": {"version": "2", "sha256": "1avc0362pl6xardjwj9x6xx4srk0yivymmmhxi3kfbjwgkk0pls1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxhdW5jaCBhcHBzIHdpdGgga2V5YmluZGluZ3MuIElmIHRoZSB0by1iZS1sYXVuY2hlZCBhcHAgYWxyZWFkeSBoYXMgYSB3aW5kb3cgb3BlbiwgZm9jdXMgdGhhdCB3aW5kb3cgaW5zdGVhZC4gSWYgdGhlIGZvY3VzZWQgd2luZG93IGlzIGFuIGluc3RhbmNlIG9mIHRoZSBhcHAsIG9wZW4gYSBuZXcgd2luZG93LiIsCiAgIm5hbWUiOiAiUXVpY2sgQXBwIExhdW5jaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0xlbGVhdC9RdWljay1BcHAtTGF1bmNoZXIiLAogICJ1dWlkIjogInF1aWNrLWFwcC1sYXVuY2hlckBsZWxlYXQtb24tZ2l0aHViIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "1avc0362pl6xardjwj9x6xx4srk0yivymmmhxi3kfbjwgkk0pls1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxhdW5jaCBhcHBzIHdpdGgga2V5YmluZGluZ3MuIElmIHRoZSB0by1iZS1sYXVuY2hlZCBhcHAgYWxyZWFkeSBoYXMgYSB3aW5kb3cgb3BlbiwgZm9jdXMgdGhhdCB3aW5kb3cgaW5zdGVhZC4gSWYgdGhlIGZvY3VzZWQgd2luZG93IGlzIGFuIGluc3RhbmNlIG9mIHRoZSBhcHAsIG9wZW4gYSBuZXcgd2luZG93LiIsCiAgIm5hbWUiOiAiUXVpY2sgQXBwIExhdW5jaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0xlbGVhdC9RdWljay1BcHAtTGF1bmNoZXIiLAogICJ1dWlkIjogInF1aWNrLWFwcC1sYXVuY2hlckBsZWxlYXQtb24tZ2l0aHViIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "screen-autorotate@kosmospredanie.yandex.ru", "name": "Screen Autorotate", "pname": "screen-autorotate", "description": "Enable screen rotation regardless of touch mode", "link": "https://extensions.gnome.org/extension/4191/screen-autorotate/", "shell_version_map": {"40": {"version": "2", "sha256": "0s8jb0d644kprcd2adidgjsbhm6fqwm896bh4p05yyd9zwkm1bq2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBzY3JlZW4gcm90YXRpb24gcmVnYXJkbGVzcyBvZiB0b3VjaCBtb2RlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNjcmVlbi1hdXRvcm90YXRlIiwKICAibmFtZSI6ICJTY3JlZW4gQXV0b3JvdGF0ZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zY3JlZW4tYXV0b3JvdGF0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rb3Ntb3NwcmVkYW5pZS9nbm9tZS1zaGVsbC1leHRlbnNpb24tc2NyZWVuLWF1dG9yb3RhdGUiLAogICJ1dWlkIjogInNjcmVlbi1hdXRvcm90YXRlQGtvc21vc3ByZWRhbmllLnlhbmRleC5ydSIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "Low_Latency_Loopback@jacebennest87.gmail.com", "name": "Low Latency Loopback", "pname": "low-latency-loopback", "description": "Enables a low latency PulseAudio loopback device", "link": "https://extensions.gnome.org/extension/4194/low-latency-loopback/", "shell_version_map": {"38": {"version": "2", "sha256": "0dqjy59c8dgn81x84hifnzldb54n1l31qrbg2m08i84zxrc40x4n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZXMgYSBsb3cgbGF0ZW5jeSBQdWxzZUF1ZGlvIGxvb3BiYWNrIGRldmljZSIsCiAgIm5hbWUiOiAiTG93IExhdGVuY3kgTG9vcGJhY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS90aGVqYWNlcjg3L2xvdy1sYXRlbmN5LWxvb3BiYWNrIiwKICAidXVpZCI6ICJMb3dfTGF0ZW5jeV9Mb29wYmFja0BqYWNlYmVubmVzdDg3LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"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": "9", "sha256": "0hkhqkab8xj84sq6c4i03z51z6g78799lwl6fp8ldyh5fbfif9x4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdOT01FIFNoZWxsIGludGVncmF0aW9uIGZvciBQbGFuaywgdGhlIHNpbXBsZXN0IGRvY2sgb24gdGhlIHBsYW5ldC4gVG8gdXNlIHRoaXMgZXh0ZW5zaW9uLCB5b3UgbXVzdCBoYXZlIFBsYW5rIGluc3RhbGxlZCBvbiB5b3VyIHN5c3RlbS5cblxuVGhpcyBleHRlbnNpb24gZGVwZW5kcyBvbiBQbGFuay4gVG8gaW5zdGFsbCBpdDpcbi0gRGViaWFuL1VidW50dTogYXB0IGluc3RhbGwgcGxhbmtcbi0gRmVkb3JhL1JIRUw6IGRuZiBpbnN0YWxsIHBsYW5rXG4tIEFyY2g6IHBhY21hbiAtUyBwbGFua1xuXG4qKiBUaGlzIGV4dGVuc2lvbiBkb2VzIE5PVCBXT1JLIG9uIFdBWUxBTkQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGFzaC10by1wbGFuayIsCiAgIm5hbWUiOiAiRGFzaCB0byBQbGFuayIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXNoLXRvLXBsYW5rIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hhcmRwaXhlbC9kYXNoLXRvLXBsYW5rIiwKICAidXVpZCI6ICJkYXNoLXRvLXBsYW5rQGhhcmRwaXhlbC5ldSIsCiAgInZlcnNpb24iOiA5Cn0="}, "40": {"version": "9", "sha256": "0hkhqkab8xj84sq6c4i03z51z6g78799lwl6fp8ldyh5fbfif9x4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdOT01FIFNoZWxsIGludGVncmF0aW9uIGZvciBQbGFuaywgdGhlIHNpbXBsZXN0IGRvY2sgb24gdGhlIHBsYW5ldC4gVG8gdXNlIHRoaXMgZXh0ZW5zaW9uLCB5b3UgbXVzdCBoYXZlIFBsYW5rIGluc3RhbGxlZCBvbiB5b3VyIHN5c3RlbS5cblxuVGhpcyBleHRlbnNpb24gZGVwZW5kcyBvbiBQbGFuay4gVG8gaW5zdGFsbCBpdDpcbi0gRGViaWFuL1VidW50dTogYXB0IGluc3RhbGwgcGxhbmtcbi0gRmVkb3JhL1JIRUw6IGRuZiBpbnN0YWxsIHBsYW5rXG4tIEFyY2g6IHBhY21hbiAtUyBwbGFua1xuXG4qKiBUaGlzIGV4dGVuc2lvbiBkb2VzIE5PVCBXT1JLIG9uIFdBWUxBTkQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGFzaC10by1wbGFuayIsCiAgIm5hbWUiOiAiRGFzaCB0byBQbGFuayIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXNoLXRvLXBsYW5rIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hhcmRwaXhlbC9kYXNoLXRvLXBsYW5rIiwKICAidXVpZCI6ICJkYXNoLXRvLXBsYW5rQGhhcmRwaXhlbC5ldSIsCiAgInZlcnNpb24iOiA5Cn0="}}}
 , {"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": "2", "sha256": "1432bvjcknhw57j6ngpppclvkdnpy9dcqv0na4vqcvl2l035bbxv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZXMgcm91bmRlZCBjb3JuZXJzIGZyb20gbWFpbiBwYW5lbCBvciB0b3AgYmFyIiwKICAibmFtZSI6ICJSZW1vdmUgUm91bmRlZCBDb3JuZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL29nYXJjaWEvcmVtb3ZlLXJvdW5kZWQtY29ybmVycyIsCiAgInV1aWQiOiAicnJjQG9nYXJjaWEubWUiLAogICJ2ZXJzaW9uIjogMgp9"}}}
 , {"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": "3", "sha256": "16zw6r3qizw0fksq277l0kwwl1gyqkyv40al3wg33xlacbz41r1h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZpZXcgbGl2ZSBzY29yZXMgZm9yIHlvdXIgZmF2b3JpdGUgc3BvcnRzIHRlYW1zLiIsCiAgIm5hbWUiOiAiQ29sb3NzZXVtIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NlcmVuZWJsdWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWNvbG9zc2V1bSIsCiAgInV1aWQiOiAiY29sb3NzZXVtQHNlcmVuZWJsdWUiLAogICJ2ZXJzaW9uIjogMwp9"}}}
+, {"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": "5", "sha256": "1c7z3754vxwhaakziy65yjc5z0k91g8sx22h6riswy5fyys3i4ka", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZpZXcgbGl2ZSBzY29yZXMgZm9yIHlvdXIgZmF2b3JpdGUgc3BvcnRzIHRlYW1zLiIsCiAgIm5hbWUiOiAiQ29sb3NzZXVtIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NlcmVuZWJsdWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWNvbG9zc2V1bSIsCiAgInV1aWQiOiAiY29sb3NzZXVtQHNlcmVuZWJsdWUiLAogICJ2ZXJzaW9uIjogNQp9"}}}
 , {"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\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": "6", "sha256": "1cga3yimxqkf0lz701a7xcwi9q2iqwisgv4md0f3s484raxpvan4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGhvdCBlZGdlIHRoYXQgYWN0aXZhdGVzIHRoZSBvdmVydmlldyB0byB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uIFRoaXMgbWluaW1pemVzIHRoZSBwb2ludGVyIHRyYXZlbCByZXF1aXJlZCB0byBhY2Nlc3MgdGhlIGRhc2ggd2hlbiB1c2luZyB0aGUgbmV3IEdOT01FIFNoZWxsIDQwIG92ZXJ2aWV3IGxheW91dC5cblxuWW91IGNhbiBmaW5kIG1vcmUgZG9jdW1lbnRhdGlvbiBhdCBodHRwczovL2dpdGh1Yi5jb20vamRvZGEvaG90ZWRnZS9ibG9iL21haW4vUkVBRE1FLm1kIGFuZCByZXBvcnQgaXNzdWVzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS9qZG9kYS9ob3RlZGdlL2lzc3VlcyAuIiwKICAibmFtZSI6ICJIb3QgRWRnZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qZG9kYS9ob3RlZGdlIiwKICAidXVpZCI6ICJob3RlZGdlQGpvbmF0aGFuLmpkb2RhLmNhIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
-, {"uuid": "gnome-citeurl-search-provider@raindrum.github.io", "name": "CiteURL 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.\n\nBy default, CiteURL 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": "4", "sha256": "1lx1hifm5z8nk6a3nzl186rcrj5zyypnazvwdbkawiwkmilbcz3z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGxldHMgeW91IGxvb2sgdXAgVS5TLiBzdGF0ZSBhbmQgZmVkZXJhbCBsYXdzIGFuZCBjb3VydCBjYXNlcyBieSB0eXBpbmcgY2l0YXRpb25zIChsaWtlIFwiNDIgVVNDIDE5ODNcIiBvciBcIlUuUy4gQ29uc3RpdHV0aW9uIEFydC4gSSwgU2VjLiAzXCIpIGludG8gdGhlIHNlYXJjaCBiYXIuXG5cbkJ5IGRlZmF1bHQsIENpdGVVUkwgc3VwcG9ydHMgdGhlIFUuUy4gQ29kZSBhbmQgZmVkZXJhbCBjb25zdGl0dXRpb24sIGFzIHdlbGwgYXMgbmVhcmx5IGFsbCBjb2RpZmllZCBzdGF0ZSBsYXdzIGFuZCBjb25zdGl0dXRpb25zLCBhbW9uZyBvdGhlciBzb3VyY2VzIG9mIGxhdy4gWW91IGNhbiBhbHNvIGFkZCBtb3JlIHR5cGVzIG9mIGNpdGF0aW9uIGJ5IGZvbGxvd2luZyB0aGUgaW5zdHJ1Y3Rpb25zIG9uIHRoZSBHaXRIdWIgcGFnZS4iLAogICJuYW1lIjogIkNpdGVVUkwgU2VhcmNoIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmNpdGV1cmwtc2VhcmNoLXByb3ZpZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3JhaW5kcnVtL2dub21lLWNpdGV1cmwtc2VhcmNoLXByb3ZpZGVyIiwKICAidXVpZCI6ICJnbm9tZS1jaXRldXJsLXNlYXJjaC1wcm92aWRlckByYWluZHJ1bS5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "4", "sha256": "1lx1hifm5z8nk6a3nzl186rcrj5zyypnazvwdbkawiwkmilbcz3z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGxldHMgeW91IGxvb2sgdXAgVS5TLiBzdGF0ZSBhbmQgZmVkZXJhbCBsYXdzIGFuZCBjb3VydCBjYXNlcyBieSB0eXBpbmcgY2l0YXRpb25zIChsaWtlIFwiNDIgVVNDIDE5ODNcIiBvciBcIlUuUy4gQ29uc3RpdHV0aW9uIEFydC4gSSwgU2VjLiAzXCIpIGludG8gdGhlIHNlYXJjaCBiYXIuXG5cbkJ5IGRlZmF1bHQsIENpdGVVUkwgc3VwcG9ydHMgdGhlIFUuUy4gQ29kZSBhbmQgZmVkZXJhbCBjb25zdGl0dXRpb24sIGFzIHdlbGwgYXMgbmVhcmx5IGFsbCBjb2RpZmllZCBzdGF0ZSBsYXdzIGFuZCBjb25zdGl0dXRpb25zLCBhbW9uZyBvdGhlciBzb3VyY2VzIG9mIGxhdy4gWW91IGNhbiBhbHNvIGFkZCBtb3JlIHR5cGVzIG9mIGNpdGF0aW9uIGJ5IGZvbGxvd2luZyB0aGUgaW5zdHJ1Y3Rpb25zIG9uIHRoZSBHaXRIdWIgcGFnZS4iLAogICJuYW1lIjogIkNpdGVVUkwgU2VhcmNoIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmNpdGV1cmwtc2VhcmNoLXByb3ZpZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3JhaW5kcnVtL2dub21lLWNpdGV1cmwtc2VhcmNoLXByb3ZpZGVyIiwKICAidXVpZCI6ICJnbm9tZS1jaXRldXJsLXNlYXJjaC1wcm92aWRlckByYWluZHJ1bS5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNAp9"}}}
-, {"uuid": "wireless-hid@chlumskyvaclav.gmail.com", "name": "Wireless HID", "pname": "wireless-hid", "description": "This extension shows the battery of the wireless keyboards and mice in percentages and colors. Multiple devices are supported.", "link": "https://extensions.gnome.org/extension/4228/wireless-hid/", "shell_version_map": {"38": {"version": "1", "sha256": "1818hdgzg7n39dwxgfsdhkf112pynw0kwd96za2vcq48la5vrlyr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHNob3dzIHRoZSBiYXR0ZXJ5IG9mIHRoZSB3aXJlbGVzcyBrZXlib2FyZHMgYW5kIG1pY2UgaW4gcGVyY2VudGFnZXMgYW5kIGNvbG9ycy4gTXVsdGlwbGUgZGV2aWNlcyBhcmUgc3VwcG9ydGVkLiIsCiAgImdldHRleHQtZG9tYWluIjogIndpcmVsZXNzLWhpZCIsCiAgIm5hbWUiOiAiV2lyZWxlc3MgSElEIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImNobHVtc2t5dmFjbGF2QGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vd2lyZWxlc3MtaGlkIiwKICAidXVpZCI6ICJ3aXJlbGVzcy1oaWRAY2hsdW1za3l2YWNsYXYuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDEKfQ=="}, "40": {"version": "1", "sha256": "1818hdgzg7n39dwxgfsdhkf112pynw0kwd96za2vcq48la5vrlyr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHNob3dzIHRoZSBiYXR0ZXJ5IG9mIHRoZSB3aXJlbGVzcyBrZXlib2FyZHMgYW5kIG1pY2UgaW4gcGVyY2VudGFnZXMgYW5kIGNvbG9ycy4gTXVsdGlwbGUgZGV2aWNlcyBhcmUgc3VwcG9ydGVkLiIsCiAgImdldHRleHQtZG9tYWluIjogIndpcmVsZXNzLWhpZCIsCiAgIm5hbWUiOiAiV2lyZWxlc3MgSElEIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImNobHVtc2t5dmFjbGF2QGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vd2lyZWxlc3MtaGlkIiwKICAidXVpZCI6ICJ3aXJlbGVzcy1oaWRAY2hsdW1za3l2YWNsYXYuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
-, {"uuid": "better-osd@hllvc", "name": "Better OSD - Gnome 40", "pname": "better-osd-gnome-40", "description": "Better OSD for Gnome 40 (move and resize the OSD popups).\n- forked from original Better OSD\n\nYou think the default volume popup is too big, and stays for too long? This allows you to move it out of the way, reduce its size, add transparency and set the hiding delay.", "link": "https://extensions.gnome.org/extension/4231/better-osd-gnome-40/", "shell_version_map": {"40": {"version": "1", "sha256": "1daa64rjbzhzr87gkbqmgc1bcl8mbkjxfpdp6rbk6qxnjk914796", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJldHRlciBPU0QgZm9yIEdub21lIDQwIChtb3ZlIGFuZCByZXNpemUgdGhlIE9TRCBwb3B1cHMpLlxuLSBmb3JrZWQgZnJvbSBvcmlnaW5hbCBCZXR0ZXIgT1NEXG5cbllvdSB0aGluayB0aGUgZGVmYXVsdCB2b2x1bWUgcG9wdXAgaXMgdG9vIGJpZywgYW5kIHN0YXlzIGZvciB0b28gbG9uZz8gVGhpcyBhbGxvd3MgeW91IHRvIG1vdmUgaXQgb3V0IG9mIHRoZSB3YXksIHJlZHVjZSBpdHMgc2l6ZSwgYWRkIHRyYW5zcGFyZW5jeSBhbmQgc2V0IHRoZSBoaWRpbmcgZGVsYXkuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmV0dGVyLW9zZCIsCiAgIm5hbWUiOiAiQmV0dGVyIE9TRCAtIEdub21lIDQwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hsbHZjL2JldHRlci1vc2QiLAogICJ1dWlkIjogImJldHRlci1vc2RAaGxsdmMiLAogICJ2ZXJzaW9uIjogMQp9"}}}
+, {"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": "2", "sha256": "0w33qnpz8sh1bxhkq1q4xsqrl5ypsiwkr90nxkwwdgn9i4d0g0cf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHNob3dzIHRoZSBiYXR0ZXJ5IG9mIHRoZSB3aXJlbGVzcyBrZXlib2FyZHMsIG1pY2UsIGFuZCBnYW1lIGNvbnRyb2xsZXJzIGluIHBlcmNlbnRhZ2VzIGFuZCBjb2xvcnMuIE11bHRpcGxlIGRldmljZXMgYXJlIHN1cHBvcnRlZC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ3aXJlbGVzcy1oaWQiLAogICJuYW1lIjogIldpcmVsZXNzIEhJRCIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJjaGx1bXNreXZhY2xhdkBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdmNobHVtL3dpcmVsZXNzLWhpZCIsCiAgInV1aWQiOiAid2lyZWxlc3MtaGlkQGNobHVtc2t5dmFjbGF2LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "0w33qnpz8sh1bxhkq1q4xsqrl5ypsiwkr90nxkwwdgn9i4d0g0cf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHNob3dzIHRoZSBiYXR0ZXJ5IG9mIHRoZSB3aXJlbGVzcyBrZXlib2FyZHMsIG1pY2UsIGFuZCBnYW1lIGNvbnRyb2xsZXJzIGluIHBlcmNlbnRhZ2VzIGFuZCBjb2xvcnMuIE11bHRpcGxlIGRldmljZXMgYXJlIHN1cHBvcnRlZC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ3aXJlbGVzcy1oaWQiLAogICJuYW1lIjogIldpcmVsZXNzIEhJRCIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJjaGx1bXNreXZhY2xhdkBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdmNobHVtL3dpcmVsZXNzLWhpZCIsCiAgInV1aWQiOiAid2lyZWxlc3MtaGlkQGNobHVtc2t5dmFjbGF2LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}}}
+, {"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": "4", "sha256": "026c4kh6ri023b635kynmvb5zxxdywf5bbnyq1lb2p7iirb6vn0i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6ZSB5b3VyIE9TRCBwb3B1cHMuIE1vdmUsIHJlc2l6ZSwgc2V0IGRlbGF5IGFuZCB0cmFuc3BhcmVuY3khIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmV0dGVyLW9zZCIsCiAgIm5hbWUiOiAiQmV0dGVyIE9TRCAtIEdub21lIDQwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hsbHZjL2JldHRlci1vc2QiLAogICJ1dWlkIjogImJldHRlci1vc2RAaGxsdmMiLAogICJ2ZXJzaW9uIjogNAp9"}}}
 , {"uuid": "arbttstats@gervasioperez.ar", "name": "Arbtt time tracker stats", "pname": "arbtt-stats", "description": "Show simple arbtt time tracker stats on the panel.\n\nSee extension homepage for a brief tutorial.", "link": "https://extensions.gnome.org/extension/4234/arbtt-stats/", "shell_version_map": {"38": {"version": "7", "sha256": "0p91qyh2r42jbi8s7yzw6s82m91m4acs4y43vav4w4002y2f25cs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgc2ltcGxlIGFyYnR0IHRpbWUgdHJhY2tlciBzdGF0cyBvbiB0aGUgcGFuZWwuXG5cblNlZSBleHRlbnNpb24gaG9tZXBhZ2UgZm9yIGEgYnJpZWYgdHV0b3JpYWwuIiwKICAibmFtZSI6ICJBcmJ0dCB0aW1lIHRyYWNrZXIgc3RhdHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc2hlcndvb2RpbmMvYXJidHQtc3RhdHMtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJhcmJ0dHN0YXRzQGdlcnZhc2lvcGVyZXouYXIiLAogICJ2ZXJzaW9uIjogNwp9"}, "40": {"version": "7", "sha256": "0p91qyh2r42jbi8s7yzw6s82m91m4acs4y43vav4w4002y2f25cs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgc2ltcGxlIGFyYnR0IHRpbWUgdHJhY2tlciBzdGF0cyBvbiB0aGUgcGFuZWwuXG5cblNlZSBleHRlbnNpb24gaG9tZXBhZ2UgZm9yIGEgYnJpZWYgdHV0b3JpYWwuIiwKICAibmFtZSI6ICJBcmJ0dCB0aW1lIHRyYWNrZXIgc3RhdHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc2hlcndvb2RpbmMvYXJidHQtc3RhdHMtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJhcmJ0dHN0YXRzQGdlcnZhc2lvcGVyZXouYXIiLAogICJ2ZXJzaW9uIjogNwp9"}}}
-, {"uuid": "blur-me@nunchucks", "name": "Blur Me", "pname": "blur-me", "description": "Blur: Applications | Top Panel | Overview | Dash | More!\n\n\nCredit where it's due: Overview and dash blur are based on blur my shell", "link": "https://extensions.gnome.org/extension/4236/blur-me/", "shell_version_map": {"40": {"version": "10", "sha256": "0kifrwp8znkfwhq7f5i8qajwlxmyhhaizzbq5p2h7y2xy80n0lwq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJsdXI6IEFwcGxpY2F0aW9ucyB8IFRvcCBQYW5lbCB8IE92ZXJ2aWV3IHwgRGFzaCB8IE1vcmUhXG5cblxuQ3JlZGl0IHdoZXJlIGl0J3MgZHVlOiBPdmVydmlldyBhbmQgZGFzaCBibHVyIGFyZSBiYXNlZCBvbiBibHVyIG15IHNoZWxsIiwKICAibmFtZSI6ICJCbHVyIE1lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4xIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NraXNzYW5lL2JsdXItbWUiLAogICJ1dWlkIjogImJsdXItbWVAbnVuY2h1Y2tzIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
-, {"uuid": "gestureImprovements@gestures", "name": "Gesture improvements", "pname": "gesture-improvements", "description": "Touchpad Gesture improvements\n\nThis extension adds following gestures.\n\n1. Switch windows from current workspace using 3-finger horizontal swipe.\n2. Cyclic gestures between Desktop-Overview-AppGrid using 3 or 4 finger vertical swipe.\n3. Override 3-finger gesture with 4-finger for switching workspace.\n\n* This also adds option to configure speed of gestures. (1.0 is default)\n\n\n# Bugs\nReport bugs on gitlab.", "link": "https://extensions.gnome.org/extension/4245/gesture-improvements/", "shell_version_map": {"40": {"version": "8", "sha256": "0gxxxgdb6qmgkj5p4ks1y3lvsb9iv2wgdr64yhcksjak5l9plj4l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvdWNocGFkIEdlc3R1cmUgaW1wcm92ZW1lbnRzXG5cblRoaXMgZXh0ZW5zaW9uIGFkZHMgZm9sbG93aW5nIGdlc3R1cmVzLlxuXG4xLiBTd2l0Y2ggd2luZG93cyBmcm9tIGN1cnJlbnQgd29ya3NwYWNlIHVzaW5nIDMtZmluZ2VyIGhvcml6b250YWwgc3dpcGUuXG4yLiBDeWNsaWMgZ2VzdHVyZXMgYmV0d2VlbiBEZXNrdG9wLU92ZXJ2aWV3LUFwcEdyaWQgdXNpbmcgMyBvciA0IGZpbmdlciB2ZXJ0aWNhbCBzd2lwZS5cbjMuIE92ZXJyaWRlIDMtZmluZ2VyIGdlc3R1cmUgd2l0aCA0LWZpbmdlciBmb3Igc3dpdGNoaW5nIHdvcmtzcGFjZS5cblxuKiBUaGlzIGFsc28gYWRkcyBvcHRpb24gdG8gY29uZmlndXJlIHNwZWVkIG9mIGdlc3R1cmVzLiAoMS4wIGlzIGRlZmF1bHQpXG5cblxuIyBCdWdzXG5SZXBvcnQgYnVncyBvbiBnaXRsYWIuIiwKICAibmFtZSI6ICJHZXN0dXJlIGltcHJvdmVtZW50cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nZXN0dXJlSW1wcm92ZW1lbnRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL2hhcnNoYWRnYXZhbGkvZ25vbWUtZ2VzdHVyZXMiLAogICJ1dWlkIjogImdlc3R1cmVJbXByb3ZlbWVudHNAZ2VzdHVyZXMiLAogICJ2ZXJzaW9uIjogOAp9"}}}
-, {"uuid": "eclipse@blackjackshellac.ca", "name": "eclipse", "pname": "eclipse", "description": "eclipse gpaste interface with clipboard item encryption\n\nEclipse now uses dbus to communicate with the gpaste daemon\nAdded encryption of clipboard items with eclipse feature.\n\nThe following utilities are required, on fedora,\n\n$ sudo dnf install gpaste gpaste-ui gpaste-libs openssl\n\nIf updating the extension reports an ERROR it should work after the next reboot or if you logout and login again.\nPlease report issues on github.", "link": "https://extensions.gnome.org/extension/4246/eclipse/", "shell_version_map": {"38": {"version": "6", "sha256": "1i6aq6f59mc1ilx8kwkg431zn1v3an6yvf45qp3ka08y60cq57fm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImVjbGlwc2UgZ3Bhc3RlIGludGVyZmFjZSB3aXRoIGNsaXBib2FyZCBpdGVtIGVuY3J5cHRpb25cblxuRWNsaXBzZSBub3cgdXNlcyBkYnVzIHRvIGNvbW11bmljYXRlIHdpdGggdGhlIGdwYXN0ZSBkYWVtb25cbkFkZGVkIGVuY3J5cHRpb24gb2YgY2xpcGJvYXJkIGl0ZW1zIHdpdGggZWNsaXBzZSBmZWF0dXJlLlxuXG5UaGUgZm9sbG93aW5nIHV0aWxpdGllcyBhcmUgcmVxdWlyZWQsIG9uIGZlZG9yYSxcblxuJCBzdWRvIGRuZiBpbnN0YWxsIGdwYXN0ZSBncGFzdGUtdWkgZ3Bhc3RlLWxpYnMgb3BlbnNzbFxuXG5JZiB1cGRhdGluZyB0aGUgZXh0ZW5zaW9uIHJlcG9ydHMgYW4gRVJST1IgaXQgc2hvdWxkIHdvcmsgYWZ0ZXIgdGhlIG5leHQgcmVib290IG9yIGlmIHlvdSBsb2dvdXQgYW5kIGxvZ2luIGFnYWluLlxuUGxlYXNlIHJlcG9ydCBpc3N1ZXMgb24gZ2l0aHViLiIsCiAgImdldHRleHQtZG9tYWluIjogImVjbGlwc2UtYmxhY2tqYWNrc2hlbGxhYyIsCiAgIm5hbWUiOiAiZWNsaXBzZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5lY2xpcHNlLWJsYWNramFja3NoZWxsYWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYmxhY2tqYWNrc2hlbGxhYy9lY2xpcHNlIiwKICAidXVpZCI6ICJlY2xpcHNlQGJsYWNramFja3NoZWxsYWMuY2EiLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "6", "sha256": "1i6aq6f59mc1ilx8kwkg431zn1v3an6yvf45qp3ka08y60cq57fm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImVjbGlwc2UgZ3Bhc3RlIGludGVyZmFjZSB3aXRoIGNsaXBib2FyZCBpdGVtIGVuY3J5cHRpb25cblxuRWNsaXBzZSBub3cgdXNlcyBkYnVzIHRvIGNvbW11bmljYXRlIHdpdGggdGhlIGdwYXN0ZSBkYWVtb25cbkFkZGVkIGVuY3J5cHRpb24gb2YgY2xpcGJvYXJkIGl0ZW1zIHdpdGggZWNsaXBzZSBmZWF0dXJlLlxuXG5UaGUgZm9sbG93aW5nIHV0aWxpdGllcyBhcmUgcmVxdWlyZWQsIG9uIGZlZG9yYSxcblxuJCBzdWRvIGRuZiBpbnN0YWxsIGdwYXN0ZSBncGFzdGUtdWkgZ3Bhc3RlLWxpYnMgb3BlbnNzbFxuXG5JZiB1cGRhdGluZyB0aGUgZXh0ZW5zaW9uIHJlcG9ydHMgYW4gRVJST1IgaXQgc2hvdWxkIHdvcmsgYWZ0ZXIgdGhlIG5leHQgcmVib290IG9yIGlmIHlvdSBsb2dvdXQgYW5kIGxvZ2luIGFnYWluLlxuUGxlYXNlIHJlcG9ydCBpc3N1ZXMgb24gZ2l0aHViLiIsCiAgImdldHRleHQtZG9tYWluIjogImVjbGlwc2UtYmxhY2tqYWNrc2hlbGxhYyIsCiAgIm5hbWUiOiAiZWNsaXBzZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5lY2xpcHNlLWJsYWNramFja3NoZWxsYWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYmxhY2tqYWNrc2hlbGxhYy9lY2xpcHNlIiwKICAidXVpZCI6ICJlY2xpcHNlQGJsYWNramFja3NoZWxsYWMuY2EiLAogICJ2ZXJzaW9uIjogNgp9"}}}
+, {"uuid": "blur-me@nunchucks", "name": "Blur Me", "pname": "blur-me", "description": "Blur: Applications | Top Panel | Overview | Dash | More!\n\n\nCredit where it's due: Overview and dash blur are based on blur my shell", "link": "https://extensions.gnome.org/extension/4236/blur-me/", "shell_version_map": {"40": {"version": "11", "sha256": "13r77isf7ih0sklnms7blsk9a7av05d21rmjrnyr8jisr512991k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJsdXI6IEFwcGxpY2F0aW9ucyB8IFRvcCBQYW5lbCB8IE92ZXJ2aWV3IHwgRGFzaCB8IE1vcmUhXG5cblxuQ3JlZGl0IHdoZXJlIGl0J3MgZHVlOiBPdmVydmlldyBhbmQgZGFzaCBibHVyIGFyZSBiYXNlZCBvbiBibHVyIG15IHNoZWxsIiwKICAibmFtZSI6ICJCbHVyIE1lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4xIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NraXNzYW5lL2JsdXItbWUiLAogICJ1dWlkIjogImJsdXItbWVAbnVuY2h1Y2tzIiwKICAidmVyc2lvbiI6IDExCn0="}}}
+, {"uuid": "gestureImprovements@gestures", "name": "Gesture Improvements", "pname": "gesture-improvements", "description": "Improve touchpad gestures for Wayland/X11.\n\nThis extension adds following features:\n\n• Switch windows from current workspace using 3-finger horizontal swipe\n• Cyclic gestures between Desktop/Overview/AppGrid using 4 vertical swipe\n• Switch app-pages using 3-finger swipe gesture on AppGrid\n• Maximize/unmaximize/half-tiling using 3-finger vertical &amp;amp;amp; horizontal gesture\n• Override 3-finger gesture with 4-finger for switching workspace\n• Configure speed of gestures\n• Support for X11\n   \nOn X11, you need to install https://github.com/harshadgavali/gnome-x11-gesture-daemon\n\nReport any bugs/requests on GitHub (link directly below)", "link": "https://extensions.gnome.org/extension/4245/gesture-improvements/", "shell_version_map": {"40": {"version": "15", "sha256": "006c2gh6yffplcp9mw94yr1vgs1v6755slci2p8krbfdkbs45066", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkltcHJvdmUgdG91Y2hwYWQgZ2VzdHVyZXMgZm9yIFdheWxhbmQvWDExLlxuXG5UaGlzIGV4dGVuc2lvbiBhZGRzIGZvbGxvd2luZyBmZWF0dXJlczpcblxuXHUyMDIyIFN3aXRjaCB3aW5kb3dzIGZyb20gY3VycmVudCB3b3Jrc3BhY2UgdXNpbmcgMy1maW5nZXIgaG9yaXpvbnRhbCBzd2lwZVxuXHUyMDIyIEN5Y2xpYyBnZXN0dXJlcyBiZXR3ZWVuIERlc2t0b3AvT3ZlcnZpZXcvQXBwR3JpZCB1c2luZyA0IHZlcnRpY2FsIHN3aXBlXG5cdTIwMjIgU3dpdGNoIGFwcC1wYWdlcyB1c2luZyAzLWZpbmdlciBzd2lwZSBnZXN0dXJlIG9uIEFwcEdyaWRcblx1MjAyMiBNYXhpbWl6ZS91bm1heGltaXplL2hhbGYtdGlsaW5nIHVzaW5nIDMtZmluZ2VyIHZlcnRpY2FsICZhbXA7YW1wO2FtcDsgaG9yaXpvbnRhbCBnZXN0dXJlXG5cdTIwMjIgT3ZlcnJpZGUgMy1maW5nZXIgZ2VzdHVyZSB3aXRoIDQtZmluZ2VyIGZvciBzd2l0Y2hpbmcgd29ya3NwYWNlXG5cdTIwMjIgQ29uZmlndXJlIHNwZWVkIG9mIGdlc3R1cmVzXG5cdTIwMjIgU3VwcG9ydCBmb3IgWDExXG4gICBcbk9uIFgxMSwgeW91IG5lZWQgdG8gaW5zdGFsbCBodHRwczovL2dpdGh1Yi5jb20vaGFyc2hhZGdhdmFsaS9nbm9tZS14MTEtZ2VzdHVyZS1kYWVtb25cblxuUmVwb3J0IGFueSBidWdzL3JlcXVlc3RzIG9uIEdpdEh1YiAobGluayBkaXJlY3RseSBiZWxvdykiLAogICJuYW1lIjogIkdlc3R1cmUgSW1wcm92ZW1lbnRzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdlc3R1cmVJbXByb3ZlbWVudHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGFyc2hhZGdhdmFsaS9nbm9tZS1nZXN0dXJlLWltcHJvdmVtZW50cyIsCiAgInV1aWQiOiAiZ2VzdHVyZUltcHJvdmVtZW50c0BnZXN0dXJlcyIsCiAgInZlcnNpb24iOiAxNQp9"}}}
+, {"uuid": "eclipse@blackjackshellac.ca", "name": "eclipse", "pname": "eclipse", "description": "eclipse clipboard interface with item encryption\n\nAdded encryption of clipboard items. Encrypted items can be\nsaved to disk in a folder of your choice. These items are persisted\nbetween sessions using openssl to encrypt the content.\n\nEclipse uses dbus to communicate with the gpaste daemon.\n\nThe following utilities are required,\n\n# for example, on fedora (add gpaste-ui for gpaste settings gui)\n$ sudo dnf install gpaste openssl\n# ubuntu\n$ sudo apt install gpaste openssl\n\nNow works with Gpaste 1 and Gpaste 2 on GS 3.36, 3.38 and 40\n\nIf updating the extension reports an ERROR it should work after the next reboot or if you logout and login again. If you're not running on Wayland you should be able to just restart the shell (Alt+F2,r).\n\nPlease report issues on github.\n", "link": "https://extensions.gnome.org/extension/4246/eclipse/", "shell_version_map": {"38": {"version": "8", "sha256": "09j5f8p23m4v2bdad582497r194z05x4izc2wywp9nhv1nldcs3n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImVjbGlwc2UgY2xpcGJvYXJkIGludGVyZmFjZSB3aXRoIGl0ZW0gZW5jcnlwdGlvblxuXG5BZGRlZCBlbmNyeXB0aW9uIG9mIGNsaXBib2FyZCBpdGVtcy4gRW5jcnlwdGVkIGl0ZW1zIGNhbiBiZVxuc2F2ZWQgdG8gZGlzayBpbiBhIGZvbGRlciBvZiB5b3VyIGNob2ljZS4gVGhlc2UgaXRlbXMgYXJlIHBlcnNpc3RlZFxuYmV0d2VlbiBzZXNzaW9ucyB1c2luZyBvcGVuc3NsIHRvIGVuY3J5cHQgdGhlIGNvbnRlbnQuXG5cbkVjbGlwc2UgdXNlcyBkYnVzIHRvIGNvbW11bmljYXRlIHdpdGggdGhlIGdwYXN0ZSBkYWVtb24uXG5cblRoZSBmb2xsb3dpbmcgdXRpbGl0aWVzIGFyZSByZXF1aXJlZCxcblxuIyBmb3IgZXhhbXBsZSwgb24gZmVkb3JhIChhZGQgZ3Bhc3RlLXVpIGZvciBncGFzdGUgc2V0dGluZ3MgZ3VpKVxuJCBzdWRvIGRuZiBpbnN0YWxsIGdwYXN0ZSBvcGVuc3NsXG4jIHVidW50dVxuJCBzdWRvIGFwdCBpbnN0YWxsIGdwYXN0ZSBvcGVuc3NsXG5cbk5vdyB3b3JrcyB3aXRoIEdwYXN0ZSAxIGFuZCBHcGFzdGUgMiBvbiBHUyAzLjM2LCAzLjM4IGFuZCA0MFxuXG5JZiB1cGRhdGluZyB0aGUgZXh0ZW5zaW9uIHJlcG9ydHMgYW4gRVJST1IgaXQgc2hvdWxkIHdvcmsgYWZ0ZXIgdGhlIG5leHQgcmVib290IG9yIGlmIHlvdSBsb2dvdXQgYW5kIGxvZ2luIGFnYWluLiBJZiB5b3UncmUgbm90IHJ1bm5pbmcgb24gV2F5bGFuZCB5b3Ugc2hvdWxkIGJlIGFibGUgdG8ganVzdCByZXN0YXJ0IHRoZSBzaGVsbCAoQWx0K0YyLHIpLlxuXG5QbGVhc2UgcmVwb3J0IGlzc3VlcyBvbiBnaXRodWIuXG4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJlY2xpcHNlLWJsYWNramFja3NoZWxsYWMiLAogICJuYW1lIjogImVjbGlwc2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZWNsaXBzZS1ibGFja2phY2tzaGVsbGFjIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JsYWNramFja3NoZWxsYWMvZWNsaXBzZSIsCiAgInV1aWQiOiAiZWNsaXBzZUBibGFja2phY2tzaGVsbGFjLmNhIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "40": {"version": "8", "sha256": "09j5f8p23m4v2bdad582497r194z05x4izc2wywp9nhv1nldcs3n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImVjbGlwc2UgY2xpcGJvYXJkIGludGVyZmFjZSB3aXRoIGl0ZW0gZW5jcnlwdGlvblxuXG5BZGRlZCBlbmNyeXB0aW9uIG9mIGNsaXBib2FyZCBpdGVtcy4gRW5jcnlwdGVkIGl0ZW1zIGNhbiBiZVxuc2F2ZWQgdG8gZGlzayBpbiBhIGZvbGRlciBvZiB5b3VyIGNob2ljZS4gVGhlc2UgaXRlbXMgYXJlIHBlcnNpc3RlZFxuYmV0d2VlbiBzZXNzaW9ucyB1c2luZyBvcGVuc3NsIHRvIGVuY3J5cHQgdGhlIGNvbnRlbnQuXG5cbkVjbGlwc2UgdXNlcyBkYnVzIHRvIGNvbW11bmljYXRlIHdpdGggdGhlIGdwYXN0ZSBkYWVtb24uXG5cblRoZSBmb2xsb3dpbmcgdXRpbGl0aWVzIGFyZSByZXF1aXJlZCxcblxuIyBmb3IgZXhhbXBsZSwgb24gZmVkb3JhIChhZGQgZ3Bhc3RlLXVpIGZvciBncGFzdGUgc2V0dGluZ3MgZ3VpKVxuJCBzdWRvIGRuZiBpbnN0YWxsIGdwYXN0ZSBvcGVuc3NsXG4jIHVidW50dVxuJCBzdWRvIGFwdCBpbnN0YWxsIGdwYXN0ZSBvcGVuc3NsXG5cbk5vdyB3b3JrcyB3aXRoIEdwYXN0ZSAxIGFuZCBHcGFzdGUgMiBvbiBHUyAzLjM2LCAzLjM4IGFuZCA0MFxuXG5JZiB1cGRhdGluZyB0aGUgZXh0ZW5zaW9uIHJlcG9ydHMgYW4gRVJST1IgaXQgc2hvdWxkIHdvcmsgYWZ0ZXIgdGhlIG5leHQgcmVib290IG9yIGlmIHlvdSBsb2dvdXQgYW5kIGxvZ2luIGFnYWluLiBJZiB5b3UncmUgbm90IHJ1bm5pbmcgb24gV2F5bGFuZCB5b3Ugc2hvdWxkIGJlIGFibGUgdG8ganVzdCByZXN0YXJ0IHRoZSBzaGVsbCAoQWx0K0YyLHIpLlxuXG5QbGVhc2UgcmVwb3J0IGlzc3VlcyBvbiBnaXRodWIuXG4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJlY2xpcHNlLWJsYWNramFja3NoZWxsYWMiLAogICJuYW1lIjogImVjbGlwc2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZWNsaXBzZS1ibGFja2phY2tzaGVsbGFjIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JsYWNramFja3NoZWxsYWMvZWNsaXBzZSIsCiAgInV1aWQiOiAiZWNsaXBzZUBibGFja2phY2tzaGVsbGFjLmNhIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
 , {"uuid": "audio-switcher@albertomosconi", "name": "Audio Switcher 40", "pname": "audio-switcher-40", "description": "Adds a switch for choosing audio input/output to the system menu in GNOME 40. (Makes InputSlider always visible)", "link": "https://extensions.gnome.org/extension/4248/audio-switcher-40/", "shell_version_map": {"38": {"version": "4", "sha256": "0mvc4f6i7vsqijq8l4adcixdyycfxmd7kvw13d5h0vx4hg6vam1g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBzd2l0Y2ggZm9yIGNob29zaW5nIGF1ZGlvIGlucHV0L291dHB1dCB0byB0aGUgc3lzdGVtIG1lbnUgaW4gR05PTUUgNDAuIChNYWtlcyBJbnB1dFNsaWRlciBhbHdheXMgdmlzaWJsZSkiLAogICJuYW1lIjogIkF1ZGlvIFN3aXRjaGVyIDQwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4xIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cDovL2dpdGh1Yi5jb20vYWxiZXJ0b21vc2NvbmkvYXVkaW8tc3dpdGNoZXIiLAogICJ1dWlkIjogImF1ZGlvLXN3aXRjaGVyQGFsYmVydG9tb3Njb25pIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "4", "sha256": "0mvc4f6i7vsqijq8l4adcixdyycfxmd7kvw13d5h0vx4hg6vam1g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBzd2l0Y2ggZm9yIGNob29zaW5nIGF1ZGlvIGlucHV0L291dHB1dCB0byB0aGUgc3lzdGVtIG1lbnUgaW4gR05PTUUgNDAuIChNYWtlcyBJbnB1dFNsaWRlciBhbHdheXMgdmlzaWJsZSkiLAogICJuYW1lIjogIkF1ZGlvIFN3aXRjaGVyIDQwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4xIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cDovL2dpdGh1Yi5jb20vYWxiZXJ0b21vc2NvbmkvYXVkaW8tc3dpdGNoZXIiLAogICJ1dWlkIjogImF1ZGlvLXN3aXRjaGVyQGFsYmVydG9tb3Njb25pIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
-, {"uuid": "fedoramenu@tofu", "name": "Fedora Menu (Deprecated)", "pname": "fedora-menu", "description": "Fedora Menu - Menu similar to Apple's macOS menu for the GNOME Desktop\n\nDeprecated, please use Tofu Menu (https://extensions.gnome.org/extension/4272/tofu-menu/)", "link": "https://extensions.gnome.org/extension/4251/fedora-menu/", "shell_version_map": {"40": {"version": "6", "sha256": "0n4h6lsiv2lw8ff9aczhqcpxls261xidyr5dzmj1d4h48blil34l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZlZG9yYSBNZW51IC0gTWVudSBzaW1pbGFyIHRvIEFwcGxlJ3MgbWFjT1MgbWVudSBmb3IgdGhlIEdOT01FIERlc2t0b3BcblxuRGVwcmVjYXRlZCwgcGxlYXNlIHVzZSBUb2Z1IE1lbnUgKGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzQyNzIvdG9mdS1tZW51LykiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmZWRvcmEtbWVudSIsCiAgIm5hbWUiOiAiRmVkb3JhIE1lbnUgKERlcHJlY2F0ZWQpIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy50b2Z1LmZlZG9yYS1tZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJmZWRvcmFtZW51QHRvZnUiLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "shell-configurator@adeswanta", "name": "Shell Configurator", "pname": "shell-configurator", "description": "Configure and customize GNOME Shell with advanced settings.", "link": "https://extensions.gnome.org/extension/4254/shell-configurator/", "shell_version_map": {"38": {"version": "4", "sha256": "18dcbxizgj295v34m2dsz1dq9wxlk1s9cgqcgwd1k6r2v2f4p00z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbmZpZ3VyZSBhbmQgY3VzdG9taXplIEdOT01FIFNoZWxsIHdpdGggYWR2YW5jZWQgc2V0dGluZ3MuIiwKICAiaWQiOiAic2hlbGwtY29uZmlndXJhdG9yIiwKICAiaW5zdGFsbC10eXBlIjogIlVzZXIiLAogICJuYW1lIjogIlNoZWxsIENvbmZpZ3VyYXRvciIsCiAgInJlbGVhc2Utc3RhdGUiOiAicmVsZWFzZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vYWRlc3dhbnRhVGVjaHMvc2hlbGwtY29uZmlndXJhdG9yIiwKICAidXVpZCI6ICJzaGVsbC1jb25maWd1cmF0b3JAYWRlc3dhbnRhIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "4", "sha256": "18dcbxizgj295v34m2dsz1dq9wxlk1s9cgqcgwd1k6r2v2f4p00z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbmZpZ3VyZSBhbmQgY3VzdG9taXplIEdOT01FIFNoZWxsIHdpdGggYWR2YW5jZWQgc2V0dGluZ3MuIiwKICAiaWQiOiAic2hlbGwtY29uZmlndXJhdG9yIiwKICAiaW5zdGFsbC10eXBlIjogIlVzZXIiLAogICJuYW1lIjogIlNoZWxsIENvbmZpZ3VyYXRvciIsCiAgInJlbGVhc2Utc3RhdGUiOiAicmVsZWFzZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vYWRlc3dhbnRhVGVjaHMvc2hlbGwtY29uZmlndXJhdG9yIiwKICAidXVpZCI6ICJzaGVsbC1jb25maWd1cmF0b3JAYWRlc3dhbnRhIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
-, {"uuid": "io.github.mreditor.gnome-shell-extensions.scroll-panel", "name": "Scroll Panel", "pname": "scroll-panel", "description": "This extension allows switching between windows or workspaces by scrolling Gnome Shell topbar with mouse (both in overview and workspace modes).", "link": "https://extensions.gnome.org/extension/4257/scroll-panel/", "shell_version_map": {"40": {"version": "3", "sha256": "0gz0fsszripivgglly03gfl9pa1dj3wcpgwzmimipr79ykbi5h6q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGFsbG93cyBzd2l0Y2hpbmcgYmV0d2VlbiB3aW5kb3dzIG9yIHdvcmtzcGFjZXMgYnkgc2Nyb2xsaW5nIEdub21lIFNoZWxsIHRvcGJhciB3aXRoIG1vdXNlIChib3RoIGluIG92ZXJ2aWV3IGFuZCB3b3Jrc3BhY2UgbW9kZXMpLiIsCiAgImdldHRleHQtZG9tYWluIjogImlvLmdpdGh1Yi5tcmVkaXRvci5nbm9tZS1zaGVsbC1leHRlbnNpb25zLnNjcm9sbC1wYW5lbCIsCiAgIm5hbWUiOiAiU2Nyb2xsIFBhbmVsIiwKICAic2VtYW50aWMtdmVyc2lvbiI6ICI0LjEuMStnaXQtMmYxNWI0YiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJpby5naXRodWIubXJlZGl0b3IuZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5zY3JvbGwtcGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbXJFRGl0b3IvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNjcm9sbC1wYW5lbCIsCiAgInV1aWQiOiAiaW8uZ2l0aHViLm1yZWRpdG9yLmdub21lLXNoZWxsLWV4dGVuc2lvbnMuc2Nyb2xsLXBhbmVsIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
-, {"uuid": "FuzzyClock@kk2020.info", "name": "あいまい時計", "pname": "extension", "description": "トップバーの時計をあいまいにします。", "link": "https://extensions.gnome.org/extension/4260/extension/", "shell_version_map": {"38": {"version": "2", "sha256": "0d5j69khnv6fyywkfkavl0fcrvqnzlqvspbsvvff3vxknl1japhh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlx1MzBjOFx1MzBjM1x1MzBkN1x1MzBkMFx1MzBmY1x1MzA2ZVx1NjY0Mlx1OGEwOFx1MzA5Mlx1MzA0Mlx1MzA0NFx1MzA3ZVx1MzA0NFx1MzA2Ylx1MzA1N1x1MzA3ZVx1MzA1OVx1MzAwMiIsCiAgIm5hbWUiOiAiXHUzMDQyXHUzMDQ0XHUzMDdlXHUzMDQ0XHU2NjQyXHU4YTA4IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIkZ1enp5Q2xvY2tAa2syMDIwLmluZm8iLAogICJ2ZXJzaW9uIjogMgp9"}, "40": {"version": "2", "sha256": "0d5j69khnv6fyywkfkavl0fcrvqnzlqvspbsvvff3vxknl1japhh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlx1MzBjOFx1MzBjM1x1MzBkN1x1MzBkMFx1MzBmY1x1MzA2ZVx1NjY0Mlx1OGEwOFx1MzA5Mlx1MzA0Mlx1MzA0NFx1MzA3ZVx1MzA0NFx1MzA2Ylx1MzA1N1x1MzA3ZVx1MzA1OVx1MzAwMiIsCiAgIm5hbWUiOiAiXHUzMDQyXHUzMDQ0XHUzMDdlXHUzMDQ0XHU2NjQyXHU4YTA4IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIkZ1enp5Q2xvY2tAa2syMDIwLmluZm8iLAogICJ2ZXJzaW9uIjogMgp9"}}}
-, {"uuid": "wb@pwall.github.com", "name": "WindowButtons", "pname": "windowbuttons", "description": "This is an extension for Gnome 3.38 which puts minimize and close buttons in the top panel.", "link": "https://extensions.gnome.org/extension/4261/windowbuttons/", "shell_version_map": {"38": {"version": "3", "sha256": "024yhfbibj556mx1f2jzg0zj4p0ywm9rnvaff971pzni22m4biyj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgaXMgYW4gZXh0ZW5zaW9uIGZvciBHbm9tZSAzLjM4IHdoaWNoIHB1dHMgbWluaW1pemUgYW5kIGNsb3NlIGJ1dHRvbnMgaW4gdGhlIHRvcCBwYW5lbC4iLAogICJuYW1lIjogIldpbmRvd0J1dHRvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9QV2FsbDIyMjIvV0IiLAogICJ1dWlkIjogIndiQHB3YWxsLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}}}
+, {"uuid": "io.github.mreditor.gnome-shell-extensions.scroll-panel", "name": "Scroll Panel", "pname": "scroll-panel", "description": "This extension allows switching between windows or workspaces by scrolling Gnome Shell topbar with mouse (both in overview and workspace modes).", "link": "https://extensions.gnome.org/extension/4257/scroll-panel/", "shell_version_map": {"40": {"version": "5", "sha256": "0qhgazsrbk8sflj19whcqk0wmjrsbyg1cxcys5ynxi37vsh0ispw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGFsbG93cyBzd2l0Y2hpbmcgYmV0d2VlbiB3aW5kb3dzIG9yIHdvcmtzcGFjZXMgYnkgc2Nyb2xsaW5nIEdub21lIFNoZWxsIHRvcGJhciB3aXRoIG1vdXNlIChib3RoIGluIG92ZXJ2aWV3IGFuZCB3b3Jrc3BhY2UgbW9kZXMpLiIsCiAgImdldHRleHQtZG9tYWluIjogImlvLmdpdGh1Yi5tcmVkaXRvci5nbm9tZS1zaGVsbC1leHRlbnNpb25zLnNjcm9sbC1wYW5lbCIsCiAgIm5hbWUiOiAiU2Nyb2xsIFBhbmVsIiwKICAic2VtYW50aWMtdmVyc2lvbiI6ICI0LjEuMytnaXQtNTIzZjA4ZiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJpby5naXRodWIubXJlZGl0b3IuZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5zY3JvbGwtcGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbXJFRGl0b3IvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNjcm9sbC1wYW5lbCIsCiAgInV1aWQiOiAiaW8uZ2l0aHViLm1yZWRpdG9yLmdub21lLXNoZWxsLWV4dGVuc2lvbnMuc2Nyb2xsLXBhbmVsIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
+, {"uuid": "wb@pwall.github.com", "name": "WindowButtons", "pname": "windowbuttons", "description": "This is an extension for Gnome 3.38 which puts minimize and close buttons in the top panel.", "link": "https://extensions.gnome.org/extension/4261/windowbuttons/", "shell_version_map": {"38": {"version": "6", "sha256": "1w9j3rmn8yhppfkxrgyfvws2hsr24ki60vi8d73hdhifpnfps2sy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgaXMgYW4gZXh0ZW5zaW9uIGZvciBHbm9tZSAzLjM4IHdoaWNoIHB1dHMgbWluaW1pemUgYW5kIGNsb3NlIGJ1dHRvbnMgaW4gdGhlIHRvcCBwYW5lbC4iLAogICJuYW1lIjogIldpbmRvd0J1dHRvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9QV2FsbDIyMjIvV0IiLAogICJ1dWlkIjogIndiQHB3YWxsLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"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": "1", "sha256": "0la28hsib8hvzkf8l4mppqml0pl7s0g620nc7q47cbvgjfs8zh62", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplL3VubWluaW1pemUgYWxsIG9wZW4gd2luZG93cyB3aXRoIGEgc2luZ2xlIGNsaWNrLlxuXG5Gb3JrZWQgZnJvbSBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8xMTk0L3Nob3ctZGVza3RvcC1idXR0b24vXG5cbkZlYXR1cmVzOlxuLSBXaW5kb3dzLWxpa2UgYmVoYXZpb3Jcbi0gQ2FuIGJlIHBsYWNlZCBhdCB0aGUgZW5kIG9mIHBhbmVsXG4tIEhvdGtleSBzdXBwb3J0IChjYW4gYmUgYWN0aXZhdGVkIGluIHNldHRpbmdzKSIsCiAgImV4dGVuc2lvbi1pZCI6ICJzaG93LWRlc2t0b3AtYXBwbGV0IiwKICAiZ2V0dGV4dC1kb21haW4iOiAic2hvdy1kZXNrdG9wLWFwcGxldCIsCiAgImxvY2FsZWRpciI6ICIvdXNyL3NoYXJlL2xvY2FsZSIsCiAgIm5hbWUiOiAiU2hvdyBEZXNrdG9wIEFwcGxldCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaG93LWRlc2t0b3AtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1ZhbGVudC1pbi9TaG93LURlc2t0b3AtQXBwbGV0IiwKICAidXVpZCI6ICJzaG93LWRlc2t0b3AtYXBwbGV0QHZhbGVudC1pbiIsCiAgInZlcnNpb24iOiAxCn0="}, "40": {"version": "1", "sha256": "0la28hsib8hvzkf8l4mppqml0pl7s0g620nc7q47cbvgjfs8zh62", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplL3VubWluaW1pemUgYWxsIG9wZW4gd2luZG93cyB3aXRoIGEgc2luZ2xlIGNsaWNrLlxuXG5Gb3JrZWQgZnJvbSBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8xMTk0L3Nob3ctZGVza3RvcC1idXR0b24vXG5cbkZlYXR1cmVzOlxuLSBXaW5kb3dzLWxpa2UgYmVoYXZpb3Jcbi0gQ2FuIGJlIHBsYWNlZCBhdCB0aGUgZW5kIG9mIHBhbmVsXG4tIEhvdGtleSBzdXBwb3J0IChjYW4gYmUgYWN0aXZhdGVkIGluIHNldHRpbmdzKSIsCiAgImV4dGVuc2lvbi1pZCI6ICJzaG93LWRlc2t0b3AtYXBwbGV0IiwKICAiZ2V0dGV4dC1kb21haW4iOiAic2hvdy1kZXNrdG9wLWFwcGxldCIsCiAgImxvY2FsZWRpciI6ICIvdXNyL3NoYXJlL2xvY2FsZSIsCiAgIm5hbWUiOiAiU2hvdyBEZXNrdG9wIEFwcGxldCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaG93LWRlc2t0b3AtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1ZhbGVudC1pbi9TaG93LURlc2t0b3AtQXBwbGV0IiwKICAidXVpZCI6ICJzaG93LWRlc2t0b3AtYXBwbGV0QHZhbGVudC1pbiIsCiAgInZlcnNpb24iOiAxCn0="}}}
-, {"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": "4", "sha256": "1dvkw39a9ihz2wbakk9mi48k3lypasz3290lv7ppqilb0dbp99yx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlc3RvcmUgdGhlIGFscGhhYmV0aWNhbCBvcmRlcmluZyBvZiB0aGUgYXBwIGdyaWQiLAogICJuYW1lIjogIkFscGhhYmV0aWNhbCBBcHAgR3JpZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9hbHBoYWJldGljYWwtZ3JpZC1leHRlbnNpb24iLAogICJ1dWlkIjogIkFscGhhYmV0aWNhbEFwcEdyaWRAc3R1YXJ0aGF5aHVyc3QiLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "4", "sha256": "1dvkw39a9ihz2wbakk9mi48k3lypasz3290lv7ppqilb0dbp99yx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlc3RvcmUgdGhlIGFscGhhYmV0aWNhbCBvcmRlcmluZyBvZiB0aGUgYXBwIGdyaWQiLAogICJuYW1lIjogIkFscGhhYmV0aWNhbCBBcHAgR3JpZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9hbHBoYWJldGljYWwtZ3JpZC1leHRlbnNpb24iLAogICJ1dWlkIjogIkFscGhhYmV0aWNhbEFwcEdyaWRAc3R1YXJ0aGF5aHVyc3QiLAogICJ2ZXJzaW9uIjogNAp9"}}}
+, {"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": "2", "sha256": "0ybzzr3gmii29lpjqzh7yad9yyvz1fg8gb3ip6lki2l84hs3aa0c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplL3VubWluaW1pemUgYWxsIG9wZW4gd2luZG93cyB3aXRoIGEgc2luZ2xlIGNsaWNrLlxuXG5Gb3JrZWQgZnJvbSBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8xMTk0L3Nob3ctZGVza3RvcC1idXR0b24vXG5cbkZlYXR1cmVzOlxuLSBXaW5kb3dzLWxpa2UgYmVoYXZpb3Jcbi0gQ2FuIGJlIHBsYWNlZCBhdCB0aGUgZW5kIG9mIHBhbmVsXG4tIEhvdGtleSBzdXBwb3J0IChjYW4gYmUgYWN0aXZhdGVkIGluIHNldHRpbmdzKSIsCiAgImV4dGVuc2lvbi1pZCI6ICJzaG93LWRlc2t0b3AtYXBwbGV0IiwKICAiZ2V0dGV4dC1kb21haW4iOiAic2hvdy1kZXNrdG9wLWFwcGxldCIsCiAgImxvY2FsZWRpciI6ICIvdXNyL3NoYXJlL2xvY2FsZSIsCiAgIm5hbWUiOiAiU2hvdyBEZXNrdG9wIEFwcGxldCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaG93LWRlc2t0b3AtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1ZhbGVudC1pbi9TaG93LURlc2t0b3AtQXBwbGV0IiwKICAidXVpZCI6ICJzaG93LWRlc2t0b3AtYXBwbGV0QHZhbGVudC1pbiIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "0ybzzr3gmii29lpjqzh7yad9yyvz1fg8gb3ip6lki2l84hs3aa0c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplL3VubWluaW1pemUgYWxsIG9wZW4gd2luZG93cyB3aXRoIGEgc2luZ2xlIGNsaWNrLlxuXG5Gb3JrZWQgZnJvbSBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8xMTk0L3Nob3ctZGVza3RvcC1idXR0b24vXG5cbkZlYXR1cmVzOlxuLSBXaW5kb3dzLWxpa2UgYmVoYXZpb3Jcbi0gQ2FuIGJlIHBsYWNlZCBhdCB0aGUgZW5kIG9mIHBhbmVsXG4tIEhvdGtleSBzdXBwb3J0IChjYW4gYmUgYWN0aXZhdGVkIGluIHNldHRpbmdzKSIsCiAgImV4dGVuc2lvbi1pZCI6ICJzaG93LWRlc2t0b3AtYXBwbGV0IiwKICAiZ2V0dGV4dC1kb21haW4iOiAic2hvdy1kZXNrdG9wLWFwcGxldCIsCiAgImxvY2FsZWRpciI6ICIvdXNyL3NoYXJlL2xvY2FsZSIsCiAgIm5hbWUiOiAiU2hvdyBEZXNrdG9wIEFwcGxldCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaG93LWRlc2t0b3AtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1ZhbGVudC1pbi9TaG93LURlc2t0b3AtQXBwbGV0IiwKICAidXVpZCI6ICJzaG93LWRlc2t0b3AtYXBwbGV0QHZhbGVudC1pbiIsCiAgInZlcnNpb24iOiAyCn0="}}}
+, {"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": "11", "sha256": "0xv73xzsr9jsx97mi4gg7bbwi06yk7qziqmxwfiv160dx5fvzkjg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlYnVnIjogZmFsc2UsCiAgImRlc2NyaXB0aW9uIjogIlJlc3RvcmUgdGhlIGFscGhhYmV0aWNhbCBvcmRlcmluZyBvZiB0aGUgYXBwIGdyaWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJBbHBoYWJldGljYWxBcHBHcmlkQHN0dWFydGhheWh1cnN0IiwKICAibmFtZSI6ICJBbHBoYWJldGljYWwgQXBwIEdyaWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYWxwaGFiZXRpY2FsLWFwcC1ncmlkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N0dWFydGhheWh1cnN0L2FscGhhYmV0aWNhbC1ncmlkLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiQWxwaGFiZXRpY2FsQXBwR3JpZEBzdHVhcnRoYXlodXJzdCIsCiAgInZlcnNpb24iOiAxMQp9"}, "40": {"version": "11", "sha256": "0xv73xzsr9jsx97mi4gg7bbwi06yk7qziqmxwfiv160dx5fvzkjg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlYnVnIjogZmFsc2UsCiAgImRlc2NyaXB0aW9uIjogIlJlc3RvcmUgdGhlIGFscGhhYmV0aWNhbCBvcmRlcmluZyBvZiB0aGUgYXBwIGdyaWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJBbHBoYWJldGljYWxBcHBHcmlkQHN0dWFydGhheWh1cnN0IiwKICAibmFtZSI6ICJBbHBoYWJldGljYWwgQXBwIEdyaWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYWxwaGFiZXRpY2FsLWFwcC1ncmlkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N0dWFydGhheWh1cnN0L2FscGhhYmV0aWNhbC1ncmlkLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiQWxwaGFiZXRpY2FsQXBwR3JpZEBzdHVhcnRoYXlodXJzdCIsCiAgInZlcnNpb24iOiAxMQp9"}}}
 , {"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": "3", "sha256": "1qy8kyif3ayy3dkb8i6525cvpj5pvbw7a3qpinm3fp0471c0xjbh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvcl91cmwiOiAiaHR0cHM6Ly9maWxpZG9yd2llc2UubmwiLAogICJkZXNjcmlwdGlvbiI6ICJLZWVwIGFuIGV5ZSBvbiB0aGUgcmVhbCB0aW1lIHZhbHVlIG9mIHlvdXIgY3J5cHRvIGNvaW5zIGNvbGxlY3Rpb25zLlxuXG5Zb3UgY2FuIGNyZWF0ZSBtdWx0aXBsZSBcInN0YXNoZXNcIiAocG9ydGZvbGlvcykgb2YgY29pbnMgYW5kIG1vbml0b3IgdGhlIGFjY3VtdWxhdGVkIHZhbHVlIGluIFVTRCBvciBFVVIuIE9yIGlmIHlvdSBwcmVmZXIsIHlvdSBjYW4gc2ltcGx5IHRyYWNrIHRoZSBjdXJyZW50IHZhbHVlIG9mIHlvdXIgZmF2b3JpdGUgY29pbi4iLAogICJuYW1lIjogIkNyeXB0b1N0YXNoIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmNyeXB0by1zdGFzaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ0YWciOiAxLjIsCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZmlsaWRvcndpZXNlL2dub21lLXNoZWxsLWNyeXB0by1zdGFzaCIsCiAgInV1aWQiOiAiY3J5cHRvc3Rhc2hAZmlsaWRvcndpZXNlLm5sIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
-, {"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": "1", "sha256": "0sksz7n2acvk9kg696qgd98m4d7221wgxvfg6chlzxfi2mx3yddh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZpeGVzIHRoZSBYTUwtQ29kZXMgZGlzcGxheWluZyBpbnN0ZWFkIG9mIHRoZSBjaGFyYWN0ZXJzIG9uIG5vdGlmaWNhdGlvbnMuIiwKICAibmFtZSI6ICJYTUwtRml4IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUFdhbGwyMjIyL1hNTEZpeCIsCiAgInV1aWQiOiAieG1sZml4QHB3YWxsLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
+, {"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"}}}
 , {"uuid": "gnometoggle@foreverxml.github.io", "name": "Gnome Toggle", "pname": "gnome-toggle", "description": "Turn on your GNOME dark mode! (For up-to-date versions, download from GitHub.)", "link": "https://extensions.gnome.org/extension/4287/gnome-toggle/", "shell_version_map": {"38": {"version": "1", "sha256": "1a1qvrdq0xglr0lf4pglaxhn03k9qxhh77n4g0d51r419l4y6n2r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR1cm4gb24geW91ciBHTk9NRSBkYXJrIG1vZGUhIChGb3IgdXAtdG8tZGF0ZSB2ZXJzaW9ucywgZG93bmxvYWQgZnJvbSBHaXRIdWIuKSIsCiAgIm5hbWUiOiAiR25vbWUgVG9nZ2xlIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImZvcmV2ZXJ4bWxAdHV0YS5pbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mb3JldmVyeG1sL2dub21lLXRvZ2dsZSIsCiAgInV1aWQiOiAiZ25vbWV0b2dnbGVAZm9yZXZlcnhtbC5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMQp9"}, "40": {"version": "1", "sha256": "1a1qvrdq0xglr0lf4pglaxhn03k9qxhh77n4g0d51r419l4y6n2r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR1cm4gb24geW91ciBHTk9NRSBkYXJrIG1vZGUhIChGb3IgdXAtdG8tZGF0ZSB2ZXJzaW9ucywgZG93bmxvYWQgZnJvbSBHaXRIdWIuKSIsCiAgIm5hbWUiOiAiR25vbWUgVG9nZ2xlIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImZvcmV2ZXJ4bWxAdHV0YS5pbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mb3JldmVyeG1sL2dub21lLXRvZ2dsZSIsCiAgInV1aWQiOiAiZ25vbWV0b2dnbGVAZm9yZXZlcnhtbC5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMQp9"}}}
-, {"uuid": "instantworkspaceswitcher@amalantony.net", "name": "Disable Workspace Switch Animation for GNOME 40+", "pname": "disable-workspace-switch-animation-for-gnome-40", "description": "Disables the workspace switch animation while preserving all other animations - instantly switch between workspaces with keyboard shortcuts.", "link": "https://extensions.gnome.org/extension/4290/disable-workspace-switch-animation-for-gnome-40/", "shell_version_map": {"40": {"version": "2", "sha256": "1iz7ik036567skkiklra6kfw8mxgv1nxfgqwc9sni0xk5xm4lgf8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGVzIHRoZSB3b3Jrc3BhY2Ugc3dpdGNoIGFuaW1hdGlvbiB3aGlsZSBwcmVzZXJ2aW5nIGFsbCBvdGhlciBhbmltYXRpb25zIC0gaW5zdGFudGx5IHN3aXRjaCBiZXR3ZWVuIHdvcmtzcGFjZXMgd2l0aCBrZXlib2FyZCBzaG9ydGN1dHMuIiwKICAibmFtZSI6ICJEaXNhYmxlIFdvcmtzcGFjZSBTd2l0Y2ggQW5pbWF0aW9uIGZvciBHTk9NRSA0MCsiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYW1hbGFudG9ueS9nbm9tZS1zaGVsbC1leHRlbnNpb24taW5zdGFudC13b3Jrc3BhY2Utc3dpdGNoZXIiLAogICJ1dWlkIjogImluc3RhbnR3b3Jrc3BhY2Vzd2l0Y2hlckBhbWFsYW50b255Lm5ldCIsCiAgInZlcnNpb24iOiAyCn0="}}}
-, {"uuid": "top-panel-notification-icons@5th0.github.com", "name": "Top Panel Notification Icons", "pname": "top-panel-notification-icons", "description": "Display notification icons in the Top Panel", "link": "https://extensions.gnome.org/extension/4293/top-panel-notification-icons/", "shell_version_map": {"38": {"version": "1", "sha256": "189wyvbyzhcbf2ipq2yf51b4pl1ycm3m118h63idgapjazndgkp7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgbm90aWZpY2F0aW9uIGljb25zIGluIHRoZSBUb3AgUGFuZWwiLAogICJuYW1lIjogIlRvcCBQYW5lbCBOb3RpZmljYXRpb24gSWNvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInRvcC1wYW5lbC1ub3RpZmljYXRpb24taWNvbnNANXRoMC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEKfQ=="}, "40": {"version": "1", "sha256": "189wyvbyzhcbf2ipq2yf51b4pl1ycm3m118h63idgapjazndgkp7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgbm90aWZpY2F0aW9uIGljb25zIGluIHRoZSBUb3AgUGFuZWwiLAogICJuYW1lIjogIlRvcCBQYW5lbCBOb3RpZmljYXRpb24gSWNvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInRvcC1wYW5lbC1ub3RpZmljYXRpb24taWNvbnNANXRoMC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
-, {"uuid": "clean-system-menu@astrapi.de", "name": "Clean System Menu", "pname": "clean-system-menu", "description": "Cleanup the System Menu from Power Options", "link": "https://extensions.gnome.org/extension/4298/clean-system-menu/", "shell_version_map": {"40": {"version": "1", "sha256": "1cdja7aj7r7bs4cac1x2rxx0wwj2ssd0fgqnvaglwgvx6zr989cl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsZWFudXAgdGhlIFN5c3RlbSBNZW51IGZyb20gUG93ZXIgT3B0aW9ucyIsCiAgIm5hbWUiOiAiQ2xlYW4gU3lzdGVtIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImNsZWFuLXN5c3RlbS1tZW51QGFzdHJhcGkuZGUiLAogICJ2ZXJzaW9uIjogMQp9"}}}
+, {"uuid": "instantworkspaceswitcher@amalantony.net", "name": "Disable Workspace Switch Animation for GNOME 40+", "pname": "disable-workspace-switch-animation-for-gnome-40", "description": "Disables the workspace switch animation while preserving all other animations - instantly switch between workspaces with keyboard shortcuts, akin to a window manager like i3.", "link": "https://extensions.gnome.org/extension/4290/disable-workspace-switch-animation-for-gnome-40/", "shell_version_map": {"40": {"version": "2", "sha256": "11b5cym8x6p0zi9r5lk94c2f4jkbx1x04wzzfbmnpf0hrp60j6ic", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGVzIHRoZSB3b3Jrc3BhY2Ugc3dpdGNoIGFuaW1hdGlvbiB3aGlsZSBwcmVzZXJ2aW5nIGFsbCBvdGhlciBhbmltYXRpb25zIC0gaW5zdGFudGx5IHN3aXRjaCBiZXR3ZWVuIHdvcmtzcGFjZXMgd2l0aCBrZXlib2FyZCBzaG9ydGN1dHMsIGFraW4gdG8gYSB3aW5kb3cgbWFuYWdlciBsaWtlIGkzLiIsCiAgIm5hbWUiOiAiRGlzYWJsZSBXb3Jrc3BhY2UgU3dpdGNoIEFuaW1hdGlvbiBmb3IgR05PTUUgNDArIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FtYWxhbnRvbnkvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWluc3RhbnQtd29ya3NwYWNlLXN3aXRjaGVyIiwKICAidXVpZCI6ICJpbnN0YW50d29ya3NwYWNlc3dpdGNoZXJAYW1hbGFudG9ueS5uZXQiLAogICJ2ZXJzaW9uIjogMgp9"}}}
+, {"uuid": "top-panel-notification-icons@5th0.github.com", "name": "Top Panel Notification Icons", "pname": "top-panel-notification-icons", "description": "Display notification icons in the Top", "link": "https://extensions.gnome.org/extension/4293/top-panel-notification-icons/", "shell_version_map": {"38": {"version": "1", "sha256": "0s84r45nc1kyv6sc6a9jbxv981f1ih8g2nfdzrzd33n3032f30px", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgbm90aWZpY2F0aW9uIGljb25zIGluIHRoZSBUb3AiLAogICJuYW1lIjogIlRvcCBQYW5lbCBOb3RpZmljYXRpb24gSWNvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInRvcC1wYW5lbC1ub3RpZmljYXRpb24taWNvbnNANXRoMC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEKfQ=="}, "40": {"version": "1", "sha256": "0s84r45nc1kyv6sc6a9jbxv981f1ih8g2nfdzrzd33n3032f30px", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgbm90aWZpY2F0aW9uIGljb25zIGluIHRoZSBUb3AiLAogICJuYW1lIjogIlRvcCBQYW5lbCBOb3RpZmljYXRpb24gSWNvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInRvcC1wYW5lbC1ub3RpZmljYXRpb24taWNvbnNANXRoMC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
+, {"uuid": "custom-menu-panel@AndreaBenini", "name": "custom-menu-panel", "pname": "custom-menu-panel", "description": "Quick custom menu for launching your favorite applications", "link": "https://extensions.gnome.org/extension/4295/custom-menu-panel/", "shell_version_map": {"40": {"version": "2", "sha256": "12d8p8cmsq93pmyd6y07jx7r0ls4h7pfqlhp8bvmsw48gmiv5sq8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlF1aWNrIGN1c3RvbSBtZW51IGZvciBsYXVuY2hpbmcgeW91ciBmYXZvcml0ZSBhcHBsaWNhdGlvbnMiLAogICJuYW1lIjogImN1c3RvbS1tZW51LXBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJjdXN0b20tbWVudS1wYW5lbEBBbmRyZWFCZW5pbmkiLAogICJ2ZXJzaW9uIjogMgp9"}}}
+, {"uuid": "clean-system-menu@astrapi.de", "name": "Clean System Menu", "pname": "clean-system-menu", "description": "Cleanup the System Menu from Power Options", "link": "https://extensions.gnome.org/extension/4298/clean-system-menu/", "shell_version_map": {"40": {"version": "4", "sha256": "1x3fvi8qbbbqa9nc5xqp7ql2djcrch2w5azw0xq1dampdgz1976q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsZWFudXAgdGhlIFN5c3RlbSBNZW51IGZyb20gUG93ZXIgT3B0aW9ucyIsCiAgIm5hbWUiOiAiQ2xlYW4gU3lzdGVtIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvYXN0cmFwaS9jbGVhbi1zeXN0ZW0tbWVudSIsCiAgInV1aWQiOiAiY2xlYW4tc3lzdGVtLW1lbnVAYXN0cmFwaS5kZSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
+, {"uuid": "spindown-harddisk@johannes.bittner.gmail.com", "name": "Spin down hard disk", "pname": "spin-down-hard-disk", "description": "Spins down the hard disk (and keeps it spun down)", "link": "https://extensions.gnome.org/extension/4299/spin-down-hard-disk/", "shell_version_map": {"38": {"version": "2", "sha256": "0cfjjbfk7rbj9dsy56sq8ga6i5wkz5p3xqbykxv16xbhgh4i2n01", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNwaW5zIGRvd24gdGhlIGhhcmQgZGlzayAoYW5kIGtlZXBzIGl0IHNwdW4gZG93bikiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzcGluZG93bi1oYXJkZGlzayIsCiAgIm5hbWUiOiAiU3BpbiBkb3duIGhhcmQgZGlzayIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zcGluZG93bi1oYXJkZGlzayIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic3BpbmRvd24taGFyZGRpc2tAam9oYW5uZXMuYml0dG5lci5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}, "40": {"version": "2", "sha256": "0cfjjbfk7rbj9dsy56sq8ga6i5wkz5p3xqbykxv16xbhgh4i2n01", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNwaW5zIGRvd24gdGhlIGhhcmQgZGlzayAoYW5kIGtlZXBzIGl0IHNwdW4gZG93bikiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzcGluZG93bi1oYXJkZGlzayIsCiAgIm5hbWUiOiAiU3BpbiBkb3duIGhhcmQgZGlzayIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zcGluZG93bi1oYXJkZGlzayIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic3BpbmRvd24taGFyZGRpc2tAam9oYW5uZXMuYml0dG5lci5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}}}
+, {"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", "pname": "umi-coin-rate", "description": "Add UMI coin rate to the panel", "link": "https://extensions.gnome.org/extension/4307/umi-coin-rate/", "shell_version_map": {"38": {"version": "5", "sha256": "13fh82kwma7qdis6ny0c5bw9fxx103p6mj2434fsgfra3d1k8aqh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBVTUkgY29pbiByYXRlIHRvIHRoZSBwYW5lbCIsCiAgIm5hbWUiOiAiVU1JIENvaW4gUmF0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9FeHBvc2VkQ2F0L3VtaS1jb2luLXJhdGUiLAogICJ1dWlkIjogInVtaS1jb2luLXJhdGVAZXhwb3NlZGNhdCIsCiAgInZlcnNpb24iOiA1Cn0="}, "40": {"version": "5", "sha256": "13fh82kwma7qdis6ny0c5bw9fxx103p6mj2434fsgfra3d1k8aqh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBVTUkgY29pbiByYXRlIHRvIHRoZSBwYW5lbCIsCiAgIm5hbWUiOiAiVU1JIENvaW4gUmF0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9FeHBvc2VkQ2F0L3VtaS1jb2luLXJhdGUiLAogICJ1dWlkIjogInVtaS1jb2luLXJhdGVAZXhwb3NlZGNhdCIsCiAgInZlcnNpb24iOiA1Cn0="}}}
+, {"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.", "link": "https://extensions.gnome.org/extension/4308/network-stats/", "shell_version_map": {"38": {"version": "7", "sha256": "038p5z4f6463hc96nhkxx232nwz7jnpcimww7cprfgqr8fl7pncv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIGludGVybmV0IHVwbG9hZCBzcGVlZCwgZG93bmxvYWQgc3BlZWQsIGJhbmR3aWR0aCwgZGF0YSB1c2FnZS4gXG5cbiB2aXNpdCBnaXRodWIgcGFnZSBmb3IgaW5zdHJ1Y3Rpb25zLiIsCiAgImdldHRleHQtZG9tYWluIjogIm5ldHdvcmstc3RhdHMiLAogICJuYW1lIjogIk5ldHdvcmsgU3RhdHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubmV0d29yay1zdGF0cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL25vcm9hZHNsZWZ0MDAwL2dub21lLW5ldHdvcmstc3RhdHMiLAogICJ1dWlkIjogIm5ldHdvcmstc3RhdHNAZ25vbWUubm9yb2Fkc2xlZnQueHl6IiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
+, {"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": "1", "sha256": "16ww0hcdgl9mdkh38l2p0fsc5166mvid7q9r0fbym5xzfzxvhkw7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGhlIG9uLXNjcmVlbiBrZXlib2FyZCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhlIHRvdWNoIG1vZGUgaXMgZW5hYmxlZCIsCiAgIm5hbWUiOiAiRm9yY2UgU2hvdyBPU0siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MS5hbHBoYSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2tpcmJ5a2V2aW5zb24vZm9yY2Utc2hvdy1vc2siLAogICJ1dWlkIjogImZvcmNlLXNob3ctb3NrQGJydWgubHRkIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
+, {"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": "2", "sha256": "1n2kl02h66hjy18jf0biqfb6f1w13g90rypcmv3jxp2fnksgyi6s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYXJnbmluZyBtb2RlIGluZGljYXRvciBmb3IgbGFwdG9wcy4gQWxsb3dzIHRvIHN3aXRjaCB0aGUgY2hhcmdpbmcgbW9kZSBmcm9tIGNvbnNlcnZhdGl2ZSBvciBoZWFsdGh5IHRvIG5vcm1hbCBtb2RlLiBJbmRpY2F0ZXMgYWxzbyB3aGljaCBtb2RlIHlvdSBhcmUgdXNpbmcgbm93LiBXb3JrcyBvbiBMZW5vdm8gU2xpbSA3LlxuXG5QbGVhc2UgUmVwb3J0IFByb2JsZW1zIG9yIGlzc3VlcyBvbiBHaXRsYWIgYXQ6XG5cbmh0dHBzOi8vZ2l0bGFiLmNvbS9hbm5leGhhY2svY29uc2VydmF0aW9uLW1vZGUtbGVub3ZvIiwKICAibmFtZSI6ICJpZGVhcGFkIG1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vYW5uZXhoYWNrL2NvbnNlcnZhdGlvbi1tb2RlLWxlbm92byIsCiAgInV1aWQiOiAiaWRlYXBhZC1tb2RlQGFubmV4aGFjay5pbmNlcHRpdmUucnUiLAogICJ2ZXJzaW9uIjogMgp9"}}}
+, {"uuid": "ubuntu-yaru-appearance@itzlightyhd", "name": "Ubuntu Appearance (GNOME 40)", "pname": "ubuntu-appearance-gnome-40", "description": "Adds a toggle between the default Ubuntu themes on GNOME 40. Forked from https://github.com/Muqtxdir/yaru-remix-theme-toggle.\n\nIt requires the `gnome-shell-extension-prefs` package installed on your Linux environment.", "link": "https://extensions.gnome.org/extension/4335/ubuntu-appearance-gnome-40/", "shell_version_map": {"40": {"version": "1", "sha256": "16068sihwydg99w82nw6qr3lrnq1vh8jl8fbr3q27i3zyds4xyja", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvcnMiOiBbCiAgICAiQXBleGllRGV2ZWxvcG1lbnQiLAogICAgIkl0ekxpZ2h0eUhEIgogIF0sCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSB0b2dnbGUgYmV0d2VlbiB0aGUgZGVmYXVsdCBVYnVudHUgdGhlbWVzIG9uIEdOT01FIDQwLiBGb3JrZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vTXVxdHhkaXIveWFydS1yZW1peC10aGVtZS10b2dnbGUuXG5cbkl0IHJlcXVpcmVzIHRoZSBgZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXByZWZzYCBwYWNrYWdlIGluc3RhbGxlZCBvbiB5b3VyIExpbnV4IGVudmlyb25tZW50LiIsCiAgIm5hbWUiOiAiVWJ1bnR1IEFwcGVhcmFuY2UgKEdOT01FIDQwKSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9BcGV4aWVEZXZlbG9wbWVudC91YnVudHUteWFydS1hcHBlYXJhbmNlIiwKICAidXVpZCI6ICJ1YnVudHUteWFydS1hcHBlYXJhbmNlQGl0emxpZ2h0eWhkIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
+, {"uuid": "desktopicons-neo@darkdemon", "name": "Desktop Icons: Neo", "pname": "desktop-icons-neo", "description": "This adds desktop icons to GNOME. A fork of Desktop Icons NG with a massive amount of customizations (like icon shapes and curved corners), features, bug fixes, and overall polish.", "link": "https://extensions.gnome.org/extension/4337/desktop-icons-neo/", "shell_version_map": {"38": {"version": "5", "sha256": "0g1bm8day6jn9zbw661dqgdk96vgl1jd3snzwwfgmlkxgxshbq09", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgYWRkcyBkZXNrdG9wIGljb25zIHRvIEdOT01FLiBBIGZvcmsgb2YgRGVza3RvcCBJY29ucyBORyB3aXRoIGEgbWFzc2l2ZSBhbW91bnQgb2YgY3VzdG9taXphdGlvbnMgKGxpa2UgaWNvbiBzaGFwZXMgYW5kIGN1cnZlZCBjb3JuZXJzKSwgZmVhdHVyZXMsIGJ1ZyBmaXhlcywgYW5kIG92ZXJhbGwgcG9saXNoLiIsCiAgIm5hbWUiOiAiRGVza3RvcCBJY29uczogTmVvIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0RFTTBOQXNzaXNzYW43L2Rlc2t0b3AtaWNvbnMtbmVvIiwKICAidXVpZCI6ICJkZXNrdG9waWNvbnMtbmVvQGRhcmtkZW1vbiIsCiAgInZlcnNpb24iOiA1Cn0="}, "40": {"version": "5", "sha256": "0g1bm8day6jn9zbw661dqgdk96vgl1jd3snzwwfgmlkxgxshbq09", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgYWRkcyBkZXNrdG9wIGljb25zIHRvIEdOT01FLiBBIGZvcmsgb2YgRGVza3RvcCBJY29ucyBORyB3aXRoIGEgbWFzc2l2ZSBhbW91bnQgb2YgY3VzdG9taXphdGlvbnMgKGxpa2UgaWNvbiBzaGFwZXMgYW5kIGN1cnZlZCBjb3JuZXJzKSwgZmVhdHVyZXMsIGJ1ZyBmaXhlcywgYW5kIG92ZXJhbGwgcG9saXNoLiIsCiAgIm5hbWUiOiAiRGVza3RvcCBJY29uczogTmVvIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0RFTTBOQXNzaXNzYW43L2Rlc2t0b3AtaWNvbnMtbmVvIiwKICAidXVpZCI6ICJkZXNrdG9waWNvbnMtbmVvQGRhcmtkZW1vbiIsCiAgInZlcnNpb24iOiA1Cn0="}}}
+, {"uuid": "allowlockedremotedesktop@kamens.us", "name": "Allow Locked Remote Desktop", "pname": "allow-locked-remote-desktop", "description": "Allow remote desktop connections when the screen is locked", "link": "https://extensions.gnome.org/extension/4338/allow-locked-remote-desktop/", "shell_version_map": {"38": {"version": "1", "sha256": "1ilb4rzvng2ndzs4va2f6v5l5rfs2xk15skiw9cch9vazsfshk0c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHJlbW90ZSBkZXNrdG9wIGNvbm5lY3Rpb25zIHdoZW4gdGhlIHNjcmVlbiBpcyBsb2NrZWQiLAogICJuYW1lIjogIkFsbG93IExvY2tlZCBSZW1vdGUgRGVza3RvcCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJhbGxvd2xvY2tlZHJlbW90ZWRlc2t0b3BAa2FtZW5zLnVzIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
+, {"uuid": "mumble-ping@maweil.github.com", "name": "MumblePing", "pname": "mumbleping", "description": "Displays how many users are currently online on a mumble server", "link": "https://extensions.gnome.org/extension/4341/mumbleping/", "shell_version_map": {"38": {"version": "1", "sha256": "1xvz9dshkhgil1ivsj47lil3d5g2k6l7l3phdqb11kpd14873xa5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIGhvdyBtYW55IHVzZXJzIGFyZSBjdXJyZW50bHkgb25saW5lIG9uIGEgbXVtYmxlIHNlcnZlciIsCiAgImdldHRleHQtZG9tYWluIjogIm11bWJsZS1waW5nIiwKICAibmFtZSI6ICJNdW1ibGVQaW5nIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm11bWJsZS1waW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21hd2VpbC9nbm9tZS1zaGVsbC1leHRlbnNpb24tbXVtYmxlLXBpbmciLAogICJ1dWlkIjogIm11bWJsZS1waW5nQG1hd2VpbC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEKfQ=="}, "40": {"version": "1", "sha256": "1xvz9dshkhgil1ivsj47lil3d5g2k6l7l3phdqb11kpd14873xa5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIGhvdyBtYW55IHVzZXJzIGFyZSBjdXJyZW50bHkgb25saW5lIG9uIGEgbXVtYmxlIHNlcnZlciIsCiAgImdldHRleHQtZG9tYWluIjogIm11bWJsZS1waW5nIiwKICAibmFtZSI6ICJNdW1ibGVQaW5nIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm11bWJsZS1waW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21hd2VpbC9nbm9tZS1zaGVsbC1leHRlbnNpb24tbXVtYmxlLXBpbmciLAogICJ1dWlkIjogIm11bWJsZS1waW5nQG1hd2VpbC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
+, {"uuid": "simply.workspaces@andyrichardson.dev", "name": "Simply Workspaces", "pname": "simply-workspaces", "description": "Workspace indication with an i3/polybar style.", "link": "https://extensions.gnome.org/extension/4343/simply-workspaces/", "shell_version_map": {"40": {"version": "5", "sha256": "1gkmzf93xnkv58g6vxzvnr8bsybqlwm5qjipvqx3iv3rhygk8i86", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0aW9uIHdpdGggYW4gaTMvcG9seWJhciBzdHlsZS4iLAogICJuYW1lIjogIlNpbXBseSBXb3Jrc3BhY2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FuZHlyaWNoYXJkc29uL3NpbXBseS13b3Jrc3BhY2VzIiwKICAidXVpZCI6ICJzaW1wbHkud29ya3NwYWNlc0BhbmR5cmljaGFyZHNvbi5kZXYiLAogICJ2ZXJzaW9uIjogNQp9"}}}
+, {"uuid": "nonblockingswitcher@scottworley.com", "name": "Non-Blocking Switcher", "pname": "non-blocking-switcher", "description": "Application switching oughtn't stop all other keyboard shortcuts", "link": "https://extensions.gnome.org/extension/4347/non-blocking-switcher/", "shell_version_map": {"40": {"version": "2", "sha256": "05a59fi1454kxh2q8p5qp3an7ss243v3d67jm37k6xggwd59v5fn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxpY2F0aW9uIHN3aXRjaGluZyBvdWdodG4ndCBzdG9wIGFsbCBvdGhlciBrZXlib2FyZCBzaG9ydGN1dHMiLAogICJuYW1lIjogIk5vbi1CbG9ja2luZyBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMiIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9jaHVjay9ub24tYmxvY2tpbmctc3dpdGNoZXIiLAogICJ1dWlkIjogIm5vbmJsb2NraW5nc3dpdGNoZXJAc2NvdHR3b3JsZXkuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
+, {"uuid": "fluoroom-gnome-top-bar@fluoroom.github.com", "name": "fluoroom's Top Bar", "pname": "fluorooms-top-bar", "description": "Persistent top bar based on Gnome's default style, with some modifications.\n\nThis extension makes black background and screen corners persistent and makes buttons round, but it will respect your current theme's fonts, margins and icons.", "link": "https://extensions.gnome.org/extension/4350/fluorooms-top-bar/", "shell_version_map": {"40": {"version": "4", "sha256": "1gm6ijr66nrs4r7cp2ksdy4sppf3vrg88lvf1gs993q6r894li89", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBlcnNpc3RlbnQgdG9wIGJhciBiYXNlZCBvbiBHbm9tZSdzIGRlZmF1bHQgc3R5bGUsIHdpdGggc29tZSBtb2RpZmljYXRpb25zLlxuXG5UaGlzIGV4dGVuc2lvbiBtYWtlcyBibGFjayBiYWNrZ3JvdW5kIGFuZCBzY3JlZW4gY29ybmVycyBwZXJzaXN0ZW50IGFuZCBtYWtlcyBidXR0b25zIHJvdW5kLCBidXQgaXQgd2lsbCByZXNwZWN0IHlvdXIgY3VycmVudCB0aGVtZSdzIGZvbnRzLCBtYXJnaW5zIGFuZCBpY29ucy4iLAogICJuYW1lIjogImZsdW9yb29tJ3MgVG9wIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mbHVvcm9vbS9mbHVvcm9vbS1nbm9tZS10b3AtYmFyIiwKICAidXVpZCI6ICJmbHVvcm9vbS1nbm9tZS10b3AtYmFyQGZsdW9yb29tLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNAp9"}}}
+, {"uuid": "mbpbat@prithvivishak.gmail.com", "name": "MacBook Battery Percentage Corrector", "pname": "macbook-battery-percentage-corrector", "description": "Corrects only the battery percentage shown in the panel aggregate menu.\nDoes not mess with UPower or other subsystems.\nThe battery percentage shown on MacBooks does not account for battery degradation. This extension corrects for this.\nSee https://mysorelug.indriyallc.net/articles/2021/06/writing-gnome-extension/index.html for more details.", "link": "https://extensions.gnome.org/extension/4353/macbook-battery-percentage-corrector/", "shell_version_map": {"38": {"version": "2", "sha256": "1vnq9yz0i75gmh6dqn6q6qz6xcbbyjnz763vhrbmmn6qk4siixhm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvcnJlY3RzIG9ubHkgdGhlIGJhdHRlcnkgcGVyY2VudGFnZSBzaG93biBpbiB0aGUgcGFuZWwgYWdncmVnYXRlIG1lbnUuXG5Eb2VzIG5vdCBtZXNzIHdpdGggVVBvd2VyIG9yIG90aGVyIHN1YnN5c3RlbXMuXG5UaGUgYmF0dGVyeSBwZXJjZW50YWdlIHNob3duIG9uIE1hY0Jvb2tzIGRvZXMgbm90IGFjY291bnQgZm9yIGJhdHRlcnkgZGVncmFkYXRpb24uIFRoaXMgZXh0ZW5zaW9uIGNvcnJlY3RzIGZvciB0aGlzLlxuU2VlIGh0dHBzOi8vbXlzb3JlbHVnLmluZHJpeWFsbGMubmV0L2FydGljbGVzLzIwMjEvMDYvd3JpdGluZy1nbm9tZS1leHRlbnNpb24vaW5kZXguaHRtbCBmb3IgbW9yZSBkZXRhaWxzLiIsCiAgIm5hbWUiOiAiTWFjQm9vayBCYXR0ZXJ5IFBlcmNlbnRhZ2UgQ29ycmVjdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9iaXRidWNrZXQub3JnL3B2cHVibGljL21icGJhdC9zcmMvbWFzdGVyLyIsCiAgInV1aWQiOiAibWJwYmF0QHByaXRodml2aXNoYWsuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "1vnq9yz0i75gmh6dqn6q6qz6xcbbyjnz763vhrbmmn6qk4siixhm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvcnJlY3RzIG9ubHkgdGhlIGJhdHRlcnkgcGVyY2VudGFnZSBzaG93biBpbiB0aGUgcGFuZWwgYWdncmVnYXRlIG1lbnUuXG5Eb2VzIG5vdCBtZXNzIHdpdGggVVBvd2VyIG9yIG90aGVyIHN1YnN5c3RlbXMuXG5UaGUgYmF0dGVyeSBwZXJjZW50YWdlIHNob3duIG9uIE1hY0Jvb2tzIGRvZXMgbm90IGFjY291bnQgZm9yIGJhdHRlcnkgZGVncmFkYXRpb24uIFRoaXMgZXh0ZW5zaW9uIGNvcnJlY3RzIGZvciB0aGlzLlxuU2VlIGh0dHBzOi8vbXlzb3JlbHVnLmluZHJpeWFsbGMubmV0L2FydGljbGVzLzIwMjEvMDYvd3JpdGluZy1nbm9tZS1leHRlbnNpb24vaW5kZXguaHRtbCBmb3IgbW9yZSBkZXRhaWxzLiIsCiAgIm5hbWUiOiAiTWFjQm9vayBCYXR0ZXJ5IFBlcmNlbnRhZ2UgQ29ycmVjdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9iaXRidWNrZXQub3JnL3B2cHVibGljL21icGJhdC9zcmMvbWFzdGVyLyIsCiAgInV1aWQiOiAibWJwYmF0QHByaXRodml2aXNoYWsuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
+, {"uuid": "top-bar-organizer@julian.gse.jsts.xyz", "name": "Top Bar Organizer", "pname": "top-bar-organizer", "description": "Organize the items of the top (menu)bar.\nThis extension required Gnome Shell version 40.\nOrganize the items by going into the extensions settings.\n\n!!! Please make sure you're fully on Gnome 40 / you're using a distribution, which is fully on Gnome 40, since otherwise this extension might not work correctly. This was the case for Manjaro Stable until recently and is probably the case for Ubuntu 21.04 right now. !!!", "link": "https://extensions.gnome.org/extension/4356/top-bar-organizer/", "shell_version_map": {"40": {"version": "3", "sha256": "121a8r063ifv4lv5s07pglxj4h90n3lp6f0jyw4lnbg38v0nqv28", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk9yZ2FuaXplIHRoZSBpdGVtcyBvZiB0aGUgdG9wIChtZW51KWJhci5cblRoaXMgZXh0ZW5zaW9uIHJlcXVpcmVkIEdub21lIFNoZWxsIHZlcnNpb24gNDAuXG5Pcmdhbml6ZSB0aGUgaXRlbXMgYnkgZ29pbmcgaW50byB0aGUgZXh0ZW5zaW9ucyBzZXR0aW5ncy5cblxuISEhIFBsZWFzZSBtYWtlIHN1cmUgeW91J3JlIGZ1bGx5IG9uIEdub21lIDQwIC8geW91J3JlIHVzaW5nIGEgZGlzdHJpYnV0aW9uLCB3aGljaCBpcyBmdWxseSBvbiBHbm9tZSA0MCwgc2luY2Ugb3RoZXJ3aXNlIHRoaXMgZXh0ZW5zaW9uIG1pZ2h0IG5vdCB3b3JrIGNvcnJlY3RseS4gVGhpcyB3YXMgdGhlIGNhc2UgZm9yIE1hbmphcm8gU3RhYmxlIHVudGlsIHJlY2VudGx5IGFuZCBpcyBwcm9iYWJseSB0aGUgY2FzZSBmb3IgVWJ1bnR1IDIxLjA0IHJpZ2h0IG5vdy4gISEhIiwKICAibmFtZSI6ICJUb3AgQmFyIE9yZ2FuaXplciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50b3AtYmFyLW9yZ2FuaXplciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9qdWxpYW5zY2hhY2hlci90b3AtYmFyLW9yZ2FuaXplciIsCiAgInV1aWQiOiAidG9wLWJhci1vcmdhbml6ZXJAanVsaWFuLmdzZS5qc3RzLnh5eiIsCiAgInZlcnNpb24iOiAzCn0="}}}
+, {"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": "3", "sha256": "1gm56qkk98ymhf3q6kwvsx5a5662fap087wy1nyji90kxn6zx7ss", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRoZSB0b3AgcGFuZWwgdG8gdGhlIHNlY29uZGFyeSBtb25pdG9yIGlmIHRoZSBwcmltYXJ5IGlzIGluIGZ1bGxzY3JlZW4iLAogICJleHRlbnNpb24taWQiOiAiZnVsbHNjcmVlbi1hdm9pZGVyIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiRnVsbHNjcmVlbiBBdm9pZGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZ1bGxzY3JlZW4tYXZvaWRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Ob29ic2FpL2Z1bGxzY3JlZW4tYXZvaWRlciIsCiAgInV1aWQiOiAiZnVsbHNjcmVlbi1hdm9pZGVyQG5vb2JzYWkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}}}
+, {"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": "5", "sha256": "054y4a1fflmdi7k9dd7ipgkzmprjr6v6fhkxxmnw47yavyvm2p0l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIG9wZW5lZCB3aW5kb3dzIGluIHZlcnRpY2FsIHBhbmVsIHdpdGggcHJvZHVjdGl2aXR5IHBlcmtzXG5cbi0gbGVmdCBjbGljayB0byBvcGVuIGZhdm9yaXRlcy9hY3RpdmF0ZSB3aW5kb3dcbi0gcmlnaHQgY2xpY2sgdG8gY2xvc2Vcbi0gbWlkZGxlIGNsaWNrIHRvIHJlbmFtZVxuLSBkcmFnLWFuZC1kcm9wIHRvIHJlLWFycmFuZ2Vcbi0gQWx0LVRhYiB0byBjeWNsZVxuLSBhZGp1c3QgcGFuZWwgd2lkdGgsIHRyYW5zcGFyZW5jeSBhbmQgaWNvbiBzaXplIGluIGV4dGVuc2lvbiBzZXR0aW5ncyIsCiAgIm5hbWUiOiAiVmVydGljYWwgV2luZG93IExpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vc3R1ZGVudC92ZXJ0aWNhbC13aW5kb3ctbGlzdCIsCiAgInV1aWQiOiAidmVydGljYWwtd2luZG93LWxpc3RAc3R1ZGVudC5naXRsYWIuY29tIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
+, {"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": "14", "sha256": "15lcxnkqcna0al51nqfz4vdz4h4pyq5da1x7gvgiqk9w72ynf6dq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNodXRkb3duL3JlYm9vdC9zdXNwZW5kIHRoZSBkZXZpY2UgYWZ0ZXIgYSBzcGVjaWZpYyB0aW1lIG9yIHdha2Ugd2l0aCBhIHJ0YyBhbGFybS5cblxuVGhlIHNjcmVlbiBzYXZlciB3aWxsIG5vdCBpbnRlcnJ1cHQgdGhlIHRpbWVyLiBBIHByaXZpbGVnZWQgY29udHJvbCBzY3JpcHQgbWF5IGJlIGluc3RhbGxlZCB0byBjb250cm9sIHNodXRkb3duIGFuZCBydGN3YWtlIGFzIHVzZXIuIEFkZGl0aW9uYWxseSwgYSBjaGVjayBjb21tYW5kIG1heSBiZSBjb25maWd1cmVkIGJlZm9yZSBzaHV0ZG93bi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJTaHV0ZG93blRpbWVyIiwKICAibmFtZSI6ICJTaHV0ZG93biBUaW1lciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaHV0ZG93bnRpbWVyLWRlbWluZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0RlbWluZGVyL1NodXRkb3duVGltZXIiLAogICJ1dWlkIjogIlNodXRkb3duVGltZXJAZGVtaW5kZXIiLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "40": {"version": "14", "sha256": "15lcxnkqcna0al51nqfz4vdz4h4pyq5da1x7gvgiqk9w72ynf6dq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNodXRkb3duL3JlYm9vdC9zdXNwZW5kIHRoZSBkZXZpY2UgYWZ0ZXIgYSBzcGVjaWZpYyB0aW1lIG9yIHdha2Ugd2l0aCBhIHJ0YyBhbGFybS5cblxuVGhlIHNjcmVlbiBzYXZlciB3aWxsIG5vdCBpbnRlcnJ1cHQgdGhlIHRpbWVyLiBBIHByaXZpbGVnZWQgY29udHJvbCBzY3JpcHQgbWF5IGJlIGluc3RhbGxlZCB0byBjb250cm9sIHNodXRkb3duIGFuZCBydGN3YWtlIGFzIHVzZXIuIEFkZGl0aW9uYWxseSwgYSBjaGVjayBjb21tYW5kIG1heSBiZSBjb25maWd1cmVkIGJlZm9yZSBzaHV0ZG93bi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJTaHV0ZG93blRpbWVyIiwKICAibmFtZSI6ICJTaHV0ZG93biBUaW1lciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaHV0ZG93bnRpbWVyLWRlbWluZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0RlbWluZGVyL1NodXRkb3duVGltZXIiLAogICJ1dWlkIjogIlNodXRkb3duVGltZXJAZGVtaW5kZXIiLAogICJ2ZXJzaW9uIjogMTQKfQ=="}}}
+, {"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 and allows selection of a different context using a GUI menu.\n\nRequires kubectl to be installed.", "link": "https://extensions.gnome.org/extension/4377/kubectl-context/", "shell_version_map": {"38": {"version": "1", "sha256": "0divql89gq1z1fjrgf8brvlvjxsibas9c5j72k2g4rhmhcn4wsq2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIGt1YmVjdGwgY3VycmVudC1jb250ZXh0IGFuZCBhbGxvd3Mgc2VsZWN0aW9uIG9mIGEgZGlmZmVyZW50IGNvbnRleHQgdXNpbmcgYSBHVUkgbWVudS5cblxuUmVxdWlyZXMga3ViZWN0bCB0byBiZSBpbnN0YWxsZWQuIiwKICAibmFtZSI6ICJrdWJlY3RsIGNvbnRleHQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iZXJub3QtZGV2L2t1YmVjdGwtY29udGV4dCIsCiAgInV1aWQiOiAia3ViZWN0bC1jb250ZXh0QGJlcm5vdC5kZXYiLAogICJ2ZXJzaW9uIjogMQp9"}}}
+, {"uuid": "kill-port@empios.github.com", "name": "Kill Port", "pname": "kill-port", "description": "Extension to easly kill all process on port", "link": "https://extensions.gnome.org/extension/4378/kill-port/", "shell_version_map": {"38": {"version": "4", "sha256": "1q471wv519rgxdb88gdf2a1q0zaa1v84syrqn8wmfvmkfxszgxzh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4dGVuc2lvbiB0byBlYXNseSBraWxsIGFsbCBwcm9jZXNzIG9uIHBvcnQiLAogICJuYW1lIjogIktpbGwgUG9ydCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOC41IgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImtpbGwtcG9ydEBlbXBpb3MuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
+, {"uuid": "tuned-profile-switcher@vint21h.pp.ua", "name": "TuneD Profile Switcher", "pname": "tuned-profile-switcher", "description": "Displays a list of the TuneD profiles and allows to switch between them.\nOf course, this is works only when TuneD installed and running.", "link": "https://extensions.gnome.org/extension/4381/tuned-profile-switcher/", "shell_version_map": {"40": {"version": "2", "sha256": "04k0l1wa78k5px2d6hbs205x58026fg6swhn6yhb2rqikk65qjym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIGEgbGlzdCBvZiB0aGUgVHVuZUQgcHJvZmlsZXMgYW5kIGFsbG93cyB0byBzd2l0Y2ggYmV0d2VlbiB0aGVtLlxuT2YgY291cnNlLCB0aGlzIGlzIHdvcmtzIG9ubHkgd2hlbiBUdW5lRCBpbnN0YWxsZWQgYW5kIHJ1bm5pbmcuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidHVuZWQtcHJvZmlsZS1zd2l0Y2hlciIsCiAgIm5hbWUiOiAiVHVuZUQgUHJvZmlsZSBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92aW50MjFoL2dub21lLXNoZWxsLWV4dGVuc2lvbi10dW5lZC1wcm9maWxlLXN3aXRjaGVyLyIsCiAgInV1aWQiOiAidHVuZWQtcHJvZmlsZS1zd2l0Y2hlckB2aW50MjFoLnBwLnVhIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
+, {"uuid": "center-area-horizontal-spacing-fixed@trblwlf.tk", "name": "Center Area Horizontal Spacing Fixed", "pname": "center-area-horizontal-spacing-fixed", "description": "Reduce the horizontal spacing between icons in the top-center icon area.\nFork of the \"Status Area Horizontal Spacing\" extension, but for the CENTER area. \nThank you to the original author: mathematical.coffee", "link": "https://extensions.gnome.org/extension/4384/center-area-horizontal-spacing-fixed/", "shell_version_map": {"38": {"version": "2", "sha256": "1i1mrw0yi5qwlxb31qkf9n14w5y2j097iqwpsd79mpxc4njf70nj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlZHVjZSB0aGUgaG9yaXpvbnRhbCBzcGFjaW5nIGJldHdlZW4gaWNvbnMgaW4gdGhlIHRvcC1jZW50ZXIgaWNvbiBhcmVhLlxuRm9yayBvZiB0aGUgXCJTdGF0dXMgQXJlYSBIb3Jpem9udGFsIFNwYWNpbmdcIiBleHRlbnNpb24sIGJ1dCBmb3IgdGhlIENFTlRFUiBhcmVhLiBcblRoYW5rIHlvdSB0byB0aGUgb3JpZ2luYWwgYXV0aG9yOiBtYXRoZW1hdGljYWwuY29mZmVlIiwKICAiZGV2LXZlcnNpb24iOiAiMy4wIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiQ2VudGVyIEFyZWEgSG9yaXpvbnRhbCBTcGFjaW5nIEZpeGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmNlbnRlci1hcmVhLWhvcml6b250YWwtc3BhY2luZyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy40IiwKICAgICIzLjYiLAogICAgIjMuOCIsCiAgICAiMy4xMCIsCiAgICAiMy4xMiIsCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1RhcmJhbGx3YWxmL0dOT01FLWNlbnRlci1hcmVhLWhvcml6b250YWwtc3BhY2luZy1maXhlZCIsCiAgInV1aWQiOiAiY2VudGVyLWFyZWEtaG9yaXpvbnRhbC1zcGFjaW5nLWZpeGVkQHRyYmx3bGYudGsiLAogICJ2ZXJzaW9uIjogMgp9"}}}
+, {"uuid": "icon-area-horizontal-spacing-fixed@trblwlf.tk", "name": "Icon Area Horizontal Spacing Fixed", "pname": "icon-area-horizontal-spacing-fixed", "description": "Reduce the horizontal spacing between icons in the top-left icon area.\nFork of the \"Status Area Horizontal Spacing\" extension, but for the LEFT side. \nThank you to the original author: mathematical.coffee", "link": "https://extensions.gnome.org/extension/4387/icon-area-horizontal-spacing-fixed/", "shell_version_map": {"38": {"version": "1", "sha256": "07pnz6w2hmjhc9x5nbj1cvir169hfva16igik1f8fm08qg4rrv03", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlZHVjZSB0aGUgaG9yaXpvbnRhbCBzcGFjaW5nIGJldHdlZW4gaWNvbnMgaW4gdGhlIHRvcC1sZWZ0IGljb24gYXJlYS5cbkZvcmsgb2YgdGhlIFwiU3RhdHVzIEFyZWEgSG9yaXpvbnRhbCBTcGFjaW5nXCIgZXh0ZW5zaW9uLCBidXQgZm9yIHRoZSBMRUZUIHNpZGUuIFxuVGhhbmsgeW91IHRvIHRoZSBvcmlnaW5hbCBhdXRob3I6IG1hdGhlbWF0aWNhbC5jb2ZmZWUiLAogICJkZXYtdmVyc2lvbiI6ICIyLjEiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJJY29uIEFyZWEgSG9yaXpvbnRhbCBTcGFjaW5nIEZpeGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmljb24tYXJlYS1ob3Jpem9udGFsLXNwYWNpbmciLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuNCIsCiAgICAiMy42IiwKICAgICIzLjgiLAogICAgIjMuMTAiLAogICAgIjMuMTIiLAogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiaWNvbi1hcmVhLWhvcml6b250YWwtc3BhY2luZy1maXhlZEB0cmJsd2xmLnRrIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
+, {"uuid": "move-ws-switcher-popup@G-dH.github.com", "name": "Move WS Switcher Popup", "pname": "move-ws-switcher-popup", "description": "Move the workspace switcher popup out of the screen center - down for horizontal layout (Gnome 40), to the right for vertical (Gnome 3)", "link": "https://extensions.gnome.org/extension/4396/move-ws-switcher-popup/", "shell_version_map": {"38": {"version": "1", "sha256": "0nsw8qn30rqavnlvfpzvl3qr3rb3mnsqnxwcagdapx9qs10c3g81", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgdGhlIHdvcmtzcGFjZSBzd2l0Y2hlciBwb3B1cCBvdXQgb2YgdGhlIHNjcmVlbiBjZW50ZXIgLSBkb3duIGZvciBob3Jpem9udGFsIGxheW91dCAoR25vbWUgNDApLCB0byB0aGUgcmlnaHQgZm9yIHZlcnRpY2FsIChHbm9tZSAzKSIsCiAgIm5hbWUiOiAiTW92ZSBXUyBTd2l0Y2hlciBQb3B1cCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAibW92ZS13cy1zd2l0Y2hlci1wb3B1cEBHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}, "40": {"version": "1", "sha256": "0nsw8qn30rqavnlvfpzvl3qr3rb3mnsqnxwcagdapx9qs10c3g81", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgdGhlIHdvcmtzcGFjZSBzd2l0Y2hlciBwb3B1cCBvdXQgb2YgdGhlIHNjcmVlbiBjZW50ZXIgLSBkb3duIGZvciBob3Jpem9udGFsIGxheW91dCAoR25vbWUgNDApLCB0byB0aGUgcmlnaHQgZm9yIHZlcnRpY2FsIChHbm9tZSAzKSIsCiAgIm5hbWUiOiAiTW92ZSBXUyBTd2l0Y2hlciBQb3B1cCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAibW92ZS13cy1zd2l0Y2hlci1wb3B1cEBHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
+, {"uuid": "move-workspaceSwitcherPopup@GithubUser699.github.com", "name": "Move Workspace Switcher Popup", "pname": "move-workspace-switcher-popup", "description": "Change the position of the WorkspaceSwitcherPopup", "link": "https://extensions.gnome.org/extension/4401/move-workspace-switcher-popup/", "shell_version_map": {"38": {"version": "3", "sha256": "0i2wd06b8x85jblcd1mhh4vwz5s6isilq1p54bl93nvawqixrf2m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB0aGUgcG9zaXRpb24gb2YgdGhlIFdvcmtzcGFjZVN3aXRjaGVyUG9wdXAiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJtb3ZlLXdvcmtzcGFjZXN3aXRjaGVycG9wdXAiLAogICJuYW1lIjogIk1vdmUgV29ya3NwYWNlIFN3aXRjaGVyIFBvcHVwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0dpdGh1YlVzZXI2OTkvTW92ZS13b3Jrc3BhY2VTd2l0Y2hlclBvcHVwLUdOT01FLUV4dGVuc2lvbiIsCiAgInV1aWQiOiAibW92ZS13b3Jrc3BhY2VTd2l0Y2hlclBvcHVwQEdpdGh1YlVzZXI2OTkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "3", "sha256": "0i2wd06b8x85jblcd1mhh4vwz5s6isilq1p54bl93nvawqixrf2m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB0aGUgcG9zaXRpb24gb2YgdGhlIFdvcmtzcGFjZVN3aXRjaGVyUG9wdXAiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJtb3ZlLXdvcmtzcGFjZXN3aXRjaGVycG9wdXAiLAogICJuYW1lIjogIk1vdmUgV29ya3NwYWNlIFN3aXRjaGVyIFBvcHVwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0dpdGh1YlVzZXI2OTkvTW92ZS13b3Jrc3BhY2VTd2l0Y2hlclBvcHVwLUdOT01FLUV4dGVuc2lvbiIsCiAgInV1aWQiOiAibW92ZS13b3Jrc3BhY2VTd2l0Y2hlclBvcHVwQEdpdGh1YlVzZXI2OTkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}}}
+, {"uuid": "print-website@ermeso.com", "name": "Print Website", "pname": "print-website", "description": "A extension for print websites.", "link": "https://extensions.gnome.org/extension/4404/print-website/", "shell_version_map": {"40": {"version": "9", "sha256": "1cg1awvfyhhc7ri7vppsjr28c1zwgw9rasyv1jcclgxr558n3n6w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZXh0ZW5zaW9uIGZvciBwcmludCB3ZWJzaXRlcy4iLAogICJuYW1lIjogIlByaW50IFdlYnNpdGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZXJtZXNvbnNhbXBhaW8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXByaW50LXdlYnNpdGUiLAogICJ1dWlkIjogInByaW50LXdlYnNpdGVAZXJtZXNvLmNvbSIsCiAgInZlcnNpb24iOiA5Cn0="}}}
+, {"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": "4", "sha256": "1diqvyr5dxhp4dn0l3i478b6x5lf863aspylz19fiqnr4dnfq4vm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgU2ltcGxlIEV4dGVuc2lvbiB0byBDaGFuZ2UgJ0FjdGl2aXRpZXMnIExhYmVsIHdpdGggTG9nbyBhbmQgVGV4dC5cbllvdSBjYW4gS2VlcCBFaXRoZXJcbjEuIExvZ28gb3JcbjIuIFRleHQgb3JcbjMuIEJvdGggb3JcbjQuIE5vbmUgYXQgYWxsIiwKICAibmFtZSI6ICJSZXBsYWNlIEFjdGl2aXRpZXMgVGV4dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1BSQVRBUC1LVU1BUi9BY3Rpdml0aWVzVGV4dCIsCiAgInV1aWQiOiAicmVwbGFjZUFjdGl2aXRpZXNUZXh0QHByYXRhcC5mYXN0bWFpbC5mbSIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "7", "sha256": "1fs71hzmpw4asm1r5bpvlc5awwalnp61w8zb9i2bsk6sk5jd6c1c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgU2ltcGxlIEV4dGVuc2lvbiB0byBDaGFuZ2UgJ0FjdGl2aXRpZXMnIExhYmVsIHdpdGggTG9nbyBhbmQgVGV4dC5cbllvdSBjYW4gS2VlcCBFaXRoZXJcbjEuIExvZ28gb3JcbjIuIFRleHQgb3JcbjMuIEJvdGggb3JcbjQuIE5vbmUgYXQgYWxsIiwKICAibmFtZSI6ICJSZXBsYWNlIEFjdGl2aXRpZXMgVGV4dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9QUkFUQVAtS1VNQVIvQWN0aXZpdGllc1RleHQiLAogICJ1dWlkIjogInJlcGxhY2VBY3Rpdml0aWVzVGV4dEBwcmF0YXAuZmFzdG1haWwuZm0iLAogICJ2ZXJzaW9uIjogNwp9"}}}
+, {"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": "1", "sha256": "1a9yadm0b2jyiwg771iwzb84yifbnixs6fnhxqmcsz9ivyaidfrf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSBTeW1ib2xpYyBJY29ucyBhbmQgU2F0dXJhdGlvbiBFZmZlY3QgZm9yIEFwcCBNZW51IEljb24iLAogICJuYW1lIjogIkNvbG9yZWQgQXBwbGljYXRpb24gTWVudSBJY29uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJhcHBNZW51SWNvbkBwcmF0YXAuZmFzdG1haWwuZm0iLAogICJ2ZXJzaW9uIjogMQp9"}, "40": {"version": "1", "sha256": "1a9yadm0b2jyiwg771iwzb84yifbnixs6fnhxqmcsz9ivyaidfrf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSBTeW1ib2xpYyBJY29ucyBhbmQgU2F0dXJhdGlvbiBFZmZlY3QgZm9yIEFwcCBNZW51IEljb24iLAogICJuYW1lIjogIkNvbG9yZWQgQXBwbGljYXRpb24gTWVudSBJY29uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJhcHBNZW51SWNvbkBwcmF0YXAuZmFzdG1haWwuZm0iLAogICJ2ZXJzaW9uIjogMQp9"}}}
+, {"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="}}}
+, {"uuid": "advanced-alt-tab@G-dH.github.com", "name": "Advanced Alt+Tab Window Switcher", "pname": "advanced-alttab-window-switcher", "description": "Replacement of Alt+Tab Window Switcher that offers direct activation, type to search, various filtering and sorting settings (switchable on the fly), workspace switching and hotkeys for window control. You can also adjust size of the window previews and app icons.\n\nNote that it's replacement of the \"window switcher\", not the \"app switcher\" - set your keyboard shortcut in Gnome Settings.\n\nHotkeys (in Type to Search mode with the Shift key):\n\n    H/L, Left/Right         - window selection\n    J/K, Up/Down, PgUp/Down - workspace selection\n    Space, KP_0/KP_Ins      - Show selected window - switch to window workspace and bring it to the front\n    Q                       - Switch window filter mode - ALL / WS / MONITOR\n    ;/~/` (key above Tab)   - Sort windows by applications, each subsequent key press jumps to the first window of the next app\n    G                       - Toggle sort by workspaces, when base filter is set to ALL\n    1/+/!                   - Filter out all windows that don't belong to the application of selected window\n    E/Insert                - Activates the \"Type to Search\" mode, the `Insert` key can turn it off, `Delete` deletes whole typed pattern\n    W                       - Close selected window\n    Shift+Del               - Force close - kill -9 to application of selected window\n    C                       - Close all windows from window list that belong to the same application as selected window\n    A                       - Toggle window 'Always on Top'. Also switch to window workspace and rise the window. Indicated by the front icon on top instead of bottom. When you press the 'A' key twice, it's actually equivalent to one press of hotkey for 'Show selected window'\n    S                       - Toggle window 'Always on Visible Workspace', indicated by the 'pin' icon. You can move selected window to the current workspace by pressing this key twice.\n    X/click outside switcher- Move selected window to the current workspace and to the monitor with mouse pointer\n    N                       - Create New Window of selected application, if the app soupports it.\n    V                       - Move window to selected workspace and maximize it.\n    F                       - Move window to empty workspace next to its current workspace and switch it to fullscreen mode. Next use of this action on the same window moves the window back to its original workspace and turn off the fullscreen mode.\n    O                       - Show application grid, if you need to launch new application.\n    T                       - Creates an thumbnail preview of selected window and place it to the bottom right of the current monitor. You can move the thumbnail anywhere on the screen and you can make as many thumbnails you want\n    P                       - Open preferences window for this extension\n\nFor more information and bug reports follow the link below.\nRestart your Gnome Shell after every update, before you post a bug report.", "link": "https://extensions.gnome.org/extension/4412/advanced-alttab-window-switcher/", "shell_version_map": {"38": {"version": "4", "sha256": "1fvbiw8fis6m2dr970pxpvqyx61k2kb54gcnsqx861j2q4931akq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2VtZW50IG9mIEFsdCtUYWIgV2luZG93IFN3aXRjaGVyIHRoYXQgb2ZmZXJzIGRpcmVjdCBhY3RpdmF0aW9uLCB0eXBlIHRvIHNlYXJjaCwgdmFyaW91cyBmaWx0ZXJpbmcgYW5kIHNvcnRpbmcgc2V0dGluZ3MgKHN3aXRjaGFibGUgb24gdGhlIGZseSksIHdvcmtzcGFjZSBzd2l0Y2hpbmcgYW5kIGhvdGtleXMgZm9yIHdpbmRvdyBjb250cm9sLiBZb3UgY2FuIGFsc28gYWRqdXN0IHNpemUgb2YgdGhlIHdpbmRvdyBwcmV2aWV3cyBhbmQgYXBwIGljb25zLlxuXG5Ob3RlIHRoYXQgaXQncyByZXBsYWNlbWVudCBvZiB0aGUgXCJ3aW5kb3cgc3dpdGNoZXJcIiwgbm90IHRoZSBcImFwcCBzd2l0Y2hlclwiIC0gc2V0IHlvdXIga2V5Ym9hcmQgc2hvcnRjdXQgaW4gR25vbWUgU2V0dGluZ3MuXG5cbkhvdGtleXMgKGluIFR5cGUgdG8gU2VhcmNoIG1vZGUgd2l0aCB0aGUgU2hpZnQga2V5KTpcblxuICAgIEgvTCwgTGVmdC9SaWdodCAgICAgICAgIC0gd2luZG93IHNlbGVjdGlvblxuICAgIEovSywgVXAvRG93biwgUGdVcC9Eb3duIC0gd29ya3NwYWNlIHNlbGVjdGlvblxuICAgIFNwYWNlLCBLUF8wL0tQX0lucyAgICAgIC0gU2hvdyBzZWxlY3RlZCB3aW5kb3cgLSBzd2l0Y2ggdG8gd2luZG93IHdvcmtzcGFjZSBhbmQgYnJpbmcgaXQgdG8gdGhlIGZyb250XG4gICAgUSAgICAgICAgICAgICAgICAgICAgICAgLSBTd2l0Y2ggd2luZG93IGZpbHRlciBtb2RlIC0gQUxMIC8gV1MgLyBNT05JVE9SXG4gICAgOy9+L2AgKGtleSBhYm92ZSBUYWIpICAgLSBTb3J0IHdpbmRvd3MgYnkgYXBwbGljYXRpb25zLCBlYWNoIHN1YnNlcXVlbnQga2V5IHByZXNzIGp1bXBzIHRvIHRoZSBmaXJzdCB3aW5kb3cgb2YgdGhlIG5leHQgYXBwXG4gICAgRyAgICAgICAgICAgICAgICAgICAgICAgLSBUb2dnbGUgc29ydCBieSB3b3Jrc3BhY2VzLCB3aGVuIGJhc2UgZmlsdGVyIGlzIHNldCB0byBBTExcbiAgICAxLysvISAgICAgICAgICAgICAgICAgICAtIEZpbHRlciBvdXQgYWxsIHdpbmRvd3MgdGhhdCBkb24ndCBiZWxvbmcgdG8gdGhlIGFwcGxpY2F0aW9uIG9mIHNlbGVjdGVkIHdpbmRvd1xuICAgIEUvSW5zZXJ0ICAgICAgICAgICAgICAgIC0gQWN0aXZhdGVzIHRoZSBcIlR5cGUgdG8gU2VhcmNoXCIgbW9kZSwgdGhlIGBJbnNlcnRgIGtleSBjYW4gdHVybiBpdCBvZmYsIGBEZWxldGVgIGRlbGV0ZXMgd2hvbGUgdHlwZWQgcGF0dGVyblxuICAgIFcgICAgICAgICAgICAgICAgICAgICAgIC0gQ2xvc2Ugc2VsZWN0ZWQgd2luZG93XG4gICAgU2hpZnQrRGVsICAgICAgICAgICAgICAgLSBGb3JjZSBjbG9zZSAtIGtpbGwgLTkgdG8gYXBwbGljYXRpb24gb2Ygc2VsZWN0ZWQgd2luZG93XG4gICAgQyAgICAgICAgICAgICAgICAgICAgICAgLSBDbG9zZSBhbGwgd2luZG93cyBmcm9tIHdpbmRvdyBsaXN0IHRoYXQgYmVsb25nIHRvIHRoZSBzYW1lIGFwcGxpY2F0aW9uIGFzIHNlbGVjdGVkIHdpbmRvd1xuICAgIEEgICAgICAgICAgICAgICAgICAgICAgIC0gVG9nZ2xlIHdpbmRvdyAnQWx3YXlzIG9uIFRvcCcuIEFsc28gc3dpdGNoIHRvIHdpbmRvdyB3b3Jrc3BhY2UgYW5kIHJpc2UgdGhlIHdpbmRvdy4gSW5kaWNhdGVkIGJ5IHRoZSBmcm9udCBpY29uIG9uIHRvcCBpbnN0ZWFkIG9mIGJvdHRvbS4gV2hlbiB5b3UgcHJlc3MgdGhlICdBJyBrZXkgdHdpY2UsIGl0J3MgYWN0dWFsbHkgZXF1aXZhbGVudCB0byBvbmUgcHJlc3Mgb2YgaG90a2V5IGZvciAnU2hvdyBzZWxlY3RlZCB3aW5kb3cnXG4gICAgUyAgICAgICAgICAgICAgICAgICAgICAgLSBUb2dnbGUgd2luZG93ICdBbHdheXMgb24gVmlzaWJsZSBXb3Jrc3BhY2UnLCBpbmRpY2F0ZWQgYnkgdGhlICdwaW4nIGljb24uIFlvdSBjYW4gbW92ZSBzZWxlY3RlZCB3aW5kb3cgdG8gdGhlIGN1cnJlbnQgd29ya3NwYWNlIGJ5IHByZXNzaW5nIHRoaXMga2V5IHR3aWNlLlxuICAgIFgvY2xpY2sgb3V0c2lkZSBzd2l0Y2hlci0gTW92ZSBzZWxlY3RlZCB3aW5kb3cgdG8gdGhlIGN1cnJlbnQgd29ya3NwYWNlIGFuZCB0byB0aGUgbW9uaXRvciB3aXRoIG1vdXNlIHBvaW50ZXJcbiAgICBOICAgICAgICAgICAgICAgICAgICAgICAtIENyZWF0ZSBOZXcgV2luZG93IG9mIHNlbGVjdGVkIGFwcGxpY2F0aW9uLCBpZiB0aGUgYXBwIHNvdXBwb3J0cyBpdC5cbiAgICBWICAgICAgICAgICAgICAgICAgICAgICAtIE1vdmUgd2luZG93IHRvIHNlbGVjdGVkIHdvcmtzcGFjZSBhbmQgbWF4aW1pemUgaXQuXG4gICAgRiAgICAgICAgICAgICAgICAgICAgICAgLSBNb3ZlIHdpbmRvdyB0byBlbXB0eSB3b3Jrc3BhY2UgbmV4dCB0byBpdHMgY3VycmVudCB3b3Jrc3BhY2UgYW5kIHN3aXRjaCBpdCB0byBmdWxsc2NyZWVuIG1vZGUuIE5leHQgdXNlIG9mIHRoaXMgYWN0aW9uIG9uIHRoZSBzYW1lIHdpbmRvdyBtb3ZlcyB0aGUgd2luZG93IGJhY2sgdG8gaXRzIG9yaWdpbmFsIHdvcmtzcGFjZSBhbmQgdHVybiBvZmYgdGhlIGZ1bGxzY3JlZW4gbW9kZS5cbiAgICBPICAgICAgICAgICAgICAgICAgICAgICAtIFNob3cgYXBwbGljYXRpb24gZ3JpZCwgaWYgeW91IG5lZWQgdG8gbGF1bmNoIG5ldyBhcHBsaWNhdGlvbi5cbiAgICBUICAgICAgICAgICAgICAgICAgICAgICAtIENyZWF0ZXMgYW4gdGh1bWJuYWlsIHByZXZpZXcgb2Ygc2VsZWN0ZWQgd2luZG93IGFuZCBwbGFjZSBpdCB0byB0aGUgYm90dG9tIHJpZ2h0IG9mIHRoZSBjdXJyZW50IG1vbml0b3IuIFlvdSBjYW4gbW92ZSB0aGUgdGh1bWJuYWlsIGFueXdoZXJlIG9uIHRoZSBzY3JlZW4gYW5kIHlvdSBjYW4gbWFrZSBhcyBtYW55IHRodW1ibmFpbHMgeW91IHdhbnRcbiAgICBQICAgICAgICAgICAgICAgICAgICAgICAtIE9wZW4gcHJlZmVyZW5jZXMgd2luZG93IGZvciB0aGlzIGV4dGVuc2lvblxuXG5Gb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgYnVnIHJlcG9ydHMgZm9sbG93IHRoZSBsaW5rIGJlbG93LlxuUmVzdGFydCB5b3VyIEdub21lIFNoZWxsIGFmdGVyIGV2ZXJ5IHVwZGF0ZSwgYmVmb3JlIHlvdSBwb3N0IGEgYnVnIHJlcG9ydC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhZHZhbmNlZC1hbHQtdGFiLXdpbmRvdy1zd2l0Y2hlciIsCiAgIm5hbWUiOiAiQWR2YW5jZWQgQWx0K1RhYiBXaW5kb3cgU3dpdGNoZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYWR2YW5jZWQtYWx0LXRhYi13aW5kb3ctc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRy1kSC9hZHZhbmNlZC1hbHR0YWItd2luZG93LXN3aXRjaGVyIiwKICAidXVpZCI6ICJhZHZhbmNlZC1hbHQtdGFiQEctZEguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "1fvbiw8fis6m2dr970pxpvqyx61k2kb54gcnsqx861j2q4931akq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2VtZW50IG9mIEFsdCtUYWIgV2luZG93IFN3aXRjaGVyIHRoYXQgb2ZmZXJzIGRpcmVjdCBhY3RpdmF0aW9uLCB0eXBlIHRvIHNlYXJjaCwgdmFyaW91cyBmaWx0ZXJpbmcgYW5kIHNvcnRpbmcgc2V0dGluZ3MgKHN3aXRjaGFibGUgb24gdGhlIGZseSksIHdvcmtzcGFjZSBzd2l0Y2hpbmcgYW5kIGhvdGtleXMgZm9yIHdpbmRvdyBjb250cm9sLiBZb3UgY2FuIGFsc28gYWRqdXN0IHNpemUgb2YgdGhlIHdpbmRvdyBwcmV2aWV3cyBhbmQgYXBwIGljb25zLlxuXG5Ob3RlIHRoYXQgaXQncyByZXBsYWNlbWVudCBvZiB0aGUgXCJ3aW5kb3cgc3dpdGNoZXJcIiwgbm90IHRoZSBcImFwcCBzd2l0Y2hlclwiIC0gc2V0IHlvdXIga2V5Ym9hcmQgc2hvcnRjdXQgaW4gR25vbWUgU2V0dGluZ3MuXG5cbkhvdGtleXMgKGluIFR5cGUgdG8gU2VhcmNoIG1vZGUgd2l0aCB0aGUgU2hpZnQga2V5KTpcblxuICAgIEgvTCwgTGVmdC9SaWdodCAgICAgICAgIC0gd2luZG93IHNlbGVjdGlvblxuICAgIEovSywgVXAvRG93biwgUGdVcC9Eb3duIC0gd29ya3NwYWNlIHNlbGVjdGlvblxuICAgIFNwYWNlLCBLUF8wL0tQX0lucyAgICAgIC0gU2hvdyBzZWxlY3RlZCB3aW5kb3cgLSBzd2l0Y2ggdG8gd2luZG93IHdvcmtzcGFjZSBhbmQgYnJpbmcgaXQgdG8gdGhlIGZyb250XG4gICAgUSAgICAgICAgICAgICAgICAgICAgICAgLSBTd2l0Y2ggd2luZG93IGZpbHRlciBtb2RlIC0gQUxMIC8gV1MgLyBNT05JVE9SXG4gICAgOy9+L2AgKGtleSBhYm92ZSBUYWIpICAgLSBTb3J0IHdpbmRvd3MgYnkgYXBwbGljYXRpb25zLCBlYWNoIHN1YnNlcXVlbnQga2V5IHByZXNzIGp1bXBzIHRvIHRoZSBmaXJzdCB3aW5kb3cgb2YgdGhlIG5leHQgYXBwXG4gICAgRyAgICAgICAgICAgICAgICAgICAgICAgLSBUb2dnbGUgc29ydCBieSB3b3Jrc3BhY2VzLCB3aGVuIGJhc2UgZmlsdGVyIGlzIHNldCB0byBBTExcbiAgICAxLysvISAgICAgICAgICAgICAgICAgICAtIEZpbHRlciBvdXQgYWxsIHdpbmRvd3MgdGhhdCBkb24ndCBiZWxvbmcgdG8gdGhlIGFwcGxpY2F0aW9uIG9mIHNlbGVjdGVkIHdpbmRvd1xuICAgIEUvSW5zZXJ0ICAgICAgICAgICAgICAgIC0gQWN0aXZhdGVzIHRoZSBcIlR5cGUgdG8gU2VhcmNoXCIgbW9kZSwgdGhlIGBJbnNlcnRgIGtleSBjYW4gdHVybiBpdCBvZmYsIGBEZWxldGVgIGRlbGV0ZXMgd2hvbGUgdHlwZWQgcGF0dGVyblxuICAgIFcgICAgICAgICAgICAgICAgICAgICAgIC0gQ2xvc2Ugc2VsZWN0ZWQgd2luZG93XG4gICAgU2hpZnQrRGVsICAgICAgICAgICAgICAgLSBGb3JjZSBjbG9zZSAtIGtpbGwgLTkgdG8gYXBwbGljYXRpb24gb2Ygc2VsZWN0ZWQgd2luZG93XG4gICAgQyAgICAgICAgICAgICAgICAgICAgICAgLSBDbG9zZSBhbGwgd2luZG93cyBmcm9tIHdpbmRvdyBsaXN0IHRoYXQgYmVsb25nIHRvIHRoZSBzYW1lIGFwcGxpY2F0aW9uIGFzIHNlbGVjdGVkIHdpbmRvd1xuICAgIEEgICAgICAgICAgICAgICAgICAgICAgIC0gVG9nZ2xlIHdpbmRvdyAnQWx3YXlzIG9uIFRvcCcuIEFsc28gc3dpdGNoIHRvIHdpbmRvdyB3b3Jrc3BhY2UgYW5kIHJpc2UgdGhlIHdpbmRvdy4gSW5kaWNhdGVkIGJ5IHRoZSBmcm9udCBpY29uIG9uIHRvcCBpbnN0ZWFkIG9mIGJvdHRvbS4gV2hlbiB5b3UgcHJlc3MgdGhlICdBJyBrZXkgdHdpY2UsIGl0J3MgYWN0dWFsbHkgZXF1aXZhbGVudCB0byBvbmUgcHJlc3Mgb2YgaG90a2V5IGZvciAnU2hvdyBzZWxlY3RlZCB3aW5kb3cnXG4gICAgUyAgICAgICAgICAgICAgICAgICAgICAgLSBUb2dnbGUgd2luZG93ICdBbHdheXMgb24gVmlzaWJsZSBXb3Jrc3BhY2UnLCBpbmRpY2F0ZWQgYnkgdGhlICdwaW4nIGljb24uIFlvdSBjYW4gbW92ZSBzZWxlY3RlZCB3aW5kb3cgdG8gdGhlIGN1cnJlbnQgd29ya3NwYWNlIGJ5IHByZXNzaW5nIHRoaXMga2V5IHR3aWNlLlxuICAgIFgvY2xpY2sgb3V0c2lkZSBzd2l0Y2hlci0gTW92ZSBzZWxlY3RlZCB3aW5kb3cgdG8gdGhlIGN1cnJlbnQgd29ya3NwYWNlIGFuZCB0byB0aGUgbW9uaXRvciB3aXRoIG1vdXNlIHBvaW50ZXJcbiAgICBOICAgICAgICAgICAgICAgICAgICAgICAtIENyZWF0ZSBOZXcgV2luZG93IG9mIHNlbGVjdGVkIGFwcGxpY2F0aW9uLCBpZiB0aGUgYXBwIHNvdXBwb3J0cyBpdC5cbiAgICBWICAgICAgICAgICAgICAgICAgICAgICAtIE1vdmUgd2luZG93IHRvIHNlbGVjdGVkIHdvcmtzcGFjZSBhbmQgbWF4aW1pemUgaXQuXG4gICAgRiAgICAgICAgICAgICAgICAgICAgICAgLSBNb3ZlIHdpbmRvdyB0byBlbXB0eSB3b3Jrc3BhY2UgbmV4dCB0byBpdHMgY3VycmVudCB3b3Jrc3BhY2UgYW5kIHN3aXRjaCBpdCB0byBmdWxsc2NyZWVuIG1vZGUuIE5leHQgdXNlIG9mIHRoaXMgYWN0aW9uIG9uIHRoZSBzYW1lIHdpbmRvdyBtb3ZlcyB0aGUgd2luZG93IGJhY2sgdG8gaXRzIG9yaWdpbmFsIHdvcmtzcGFjZSBhbmQgdHVybiBvZmYgdGhlIGZ1bGxzY3JlZW4gbW9kZS5cbiAgICBPICAgICAgICAgICAgICAgICAgICAgICAtIFNob3cgYXBwbGljYXRpb24gZ3JpZCwgaWYgeW91IG5lZWQgdG8gbGF1bmNoIG5ldyBhcHBsaWNhdGlvbi5cbiAgICBUICAgICAgICAgICAgICAgICAgICAgICAtIENyZWF0ZXMgYW4gdGh1bWJuYWlsIHByZXZpZXcgb2Ygc2VsZWN0ZWQgd2luZG93IGFuZCBwbGFjZSBpdCB0byB0aGUgYm90dG9tIHJpZ2h0IG9mIHRoZSBjdXJyZW50IG1vbml0b3IuIFlvdSBjYW4gbW92ZSB0aGUgdGh1bWJuYWlsIGFueXdoZXJlIG9uIHRoZSBzY3JlZW4gYW5kIHlvdSBjYW4gbWFrZSBhcyBtYW55IHRodW1ibmFpbHMgeW91IHdhbnRcbiAgICBQICAgICAgICAgICAgICAgICAgICAgICAtIE9wZW4gcHJlZmVyZW5jZXMgd2luZG93IGZvciB0aGlzIGV4dGVuc2lvblxuXG5Gb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgYnVnIHJlcG9ydHMgZm9sbG93IHRoZSBsaW5rIGJlbG93LlxuUmVzdGFydCB5b3VyIEdub21lIFNoZWxsIGFmdGVyIGV2ZXJ5IHVwZGF0ZSwgYmVmb3JlIHlvdSBwb3N0IGEgYnVnIHJlcG9ydC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhZHZhbmNlZC1hbHQtdGFiLXdpbmRvdy1zd2l0Y2hlciIsCiAgIm5hbWUiOiAiQWR2YW5jZWQgQWx0K1RhYiBXaW5kb3cgU3dpdGNoZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYWR2YW5jZWQtYWx0LXRhYi13aW5kb3ctc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRy1kSC9hZHZhbmNlZC1hbHR0YWItd2luZG93LXN3aXRjaGVyIiwKICAidXVpZCI6ICJhZHZhbmNlZC1hbHQtdGFiQEctZEguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
+, {"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": "1", "sha256": "08jyn79vb055vcfhg5kgc6yj6xvhyvwghpaw0d1vncy3gvj2mrln", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIEdub21lJ3Mgb25zY3JlZW4ga2V5Ym9hcmQgbW9yZSB1c2VhYmxlIHdpdGggZS5nLiBtb3JlIGtleXMuXG5UaGlzIGV4dGVuc2lvbiBpcyBhIGZvcmsgb2YgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMzMzMC9pbXByb3ZlZC1vbnNjcmVlbi1rZXlib2FyZC8gYnkgU2ViYXN0aWFuTHVlYmtlLiIsCiAgIm5hbWUiOiAiSW1wcm92ZWQgT1NLIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL25pY2stc2hteXJldi9pbXByb3ZlZC1vc2stZ25vbWUtZXh0IiwKICAidXVpZCI6ICJpbXByb3ZlZG9za0BuaWNrLXNobXlyZXYuZGV2IiwKICAidmVyc2lvbiI6IDEKfQ=="}, "40": {"version": "1", "sha256": "08jyn79vb055vcfhg5kgc6yj6xvhyvwghpaw0d1vncy3gvj2mrln", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIEdub21lJ3Mgb25zY3JlZW4ga2V5Ym9hcmQgbW9yZSB1c2VhYmxlIHdpdGggZS5nLiBtb3JlIGtleXMuXG5UaGlzIGV4dGVuc2lvbiBpcyBhIGZvcmsgb2YgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMzMzMC9pbXByb3ZlZC1vbnNjcmVlbi1rZXlib2FyZC8gYnkgU2ViYXN0aWFuTHVlYmtlLiIsCiAgIm5hbWUiOiAiSW1wcm92ZWQgT1NLIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL25pY2stc2hteXJldi9pbXByb3ZlZC1vc2stZ25vbWUtZXh0IiwKICAidXVpZCI6ICJpbXByb3ZlZG9za0BuaWNrLXNobXlyZXYuZGV2IiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
+, {"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": "1", "sha256": "0sz69rs6z1fybva20xs8587bs4xaflb4frd14d729lqq5h1m8b2p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVwZGF0ZSBpbmRpY2F0b3IgZm9yIEZlZG9yYSBMaW51eCBhbmQgR05PTUUgU2hlbGwuIiwKICAibmFtZSI6ICJGZWRvcmEgTGludXggVXBkYXRlcyBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcGVwZTM4Ni9mZWRvcmEtdXBkYXRlIiwKICAidXVpZCI6ICJmZWRvcmEtdXBkYXRlQHBlcGUzODYiLAogICJ2ZXJzaW9uIjogMQp9"}}}
+, {"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": "9", "sha256": "0r6ccgha8gqdqyy9z8sqxgpm1prbxfbh7cc8iyfhba5g40b4lh9g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkl0IGlzIGEgZXh0ZW5zaW9uIGZvciBHbm9tZS1TaGVsbCB3aXRoIGFuIGVxdWl2YWxlbnQgZnVuY3Rpb24gdG8gYSByZWFkaW5nIGd1aWRlIG9uIHRoZSBjb21wdXRlciwgdGhhdCdzIHJlYWxseSB1c2VmdWwgZm9yIHBlb3BsZSB3aXRoIGR5c2xleGlhLiIsCiAgIm5hbWUiOiAiUmVhZGluZyBTdHJpcCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yZWFkaW5nc3RyaXAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbHVwYW50YW5vL3JlYWRpbmdzdHJpcCIsCiAgInV1aWQiOiAicmVhZGluZ3N0cmlwQGx1cGFudGFuby5naWh0aHViIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
+, {"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": "5", "sha256": "0bnp7bh7vpgn0qw1549297vs3l068s43jj6y8pzm7h366jihvidc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ25vbWUgc2hlbGwgZXh0ZW5zaW9uIHRvIG1hbmFnZSB5b3VyIGNsaXBib2FyZC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1jbGlwYm9hcmQiLAogICJuYW1lIjogIkdub21lIENsaXBib2FyZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2IwMGYvZ25vbWUtY2xpcGJvYXJkIiwKICAidXVpZCI6ICJnbm9tZS1jbGlwYm9hcmRAYjAwZi5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNQp9"}}}
+, {"uuid": "thanatophobia@yatx.one", "name": "Thanatophobia", "pname": "thanatophobia", "description": "Displays your age in real time. \n\nGreat source of motivation according to terror management theory!", "link": "https://extensions.gnome.org/extension/4425/thanatophobia/", "shell_version_map": {"40": {"version": "4", "sha256": "19xp2blv1fjha6lcssh4nvzrilrlc5fpyz7gwzy7wfpqg6xyaxlj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHlvdXIgYWdlIGluIHJlYWwgdGltZS4gXG5cbkdyZWF0IHNvdXJjZSBvZiBtb3RpdmF0aW9uIGFjY29yZGluZyB0byB0ZXJyb3IgbWFuYWdlbWVudCB0aGVvcnkhIiwKICAibmFtZSI6ICJUaGFuYXRvcGhvYmlhIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3lhdHhvbmUvdGhhbmF0b3Bob2JpYSIsCiAgInV1aWQiOiAidGhhbmF0b3Bob2JpYUB5YXR4Lm9uZSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
+, {"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="}}}
+, {"uuid": "dark-side@kamil-galek.pl", "name": "Dark side of Gnome", "pname": "dark-side-of-gnome", "description": "Join the dark side with some of your apps. For now it won't work with every app.", "link": "https://extensions.gnome.org/extension/4430/dark-side-of-gnome/", "shell_version_map": {"40": {"version": "2", "sha256": "08kzwpn22qwgyrps4khwkarn4rakr1rn57wg94wpfgd9pfbgb7ri", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkpvaW4gdGhlIGRhcmsgc2lkZSB3aXRoIHNvbWUgb2YgeW91ciBhcHBzLiBGb3Igbm93IGl0IHdvbid0IHdvcmsgd2l0aCBldmVyeSBhcHAuIiwKICAibmFtZSI6ICJEYXJrIHNpZGUgb2YgR25vbWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImRhcmstc2lkZUBrYW1pbC1nYWxlay5wbCIsCiAgInZlcnNpb24iOiAyCn0="}}}
+, {"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": "1", "sha256": "11alaa3dnpnlgd4bfzzzr47mpcc8a648b6l90dzv9dlwci9jacx2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgV2l6IENvbm5lY3RlZCBMaWdodHMgVGhyb3VnaCBHbm9tZSBTaGVsbFxuXG5SZXF1aXJlbWVudHM6XG4gICAgICAgICNXaXogZW5hYmxlZCBzbWFydCBidWxiXG4gICAgICAgICNweXRob24zICAoVG8gaW5zdGFsbCAgdXNlIGNvbW1hbmQgXCJzdWRvIGFwdCBpbnN0YWxsIHB5dGhvbjNcIilcbiAgICAgICAgI3B5d2l6bGlnaHQgKFRvIGluc3RhbGwgdXNlIGNvbW1hbmQgXCJwaXAzIGluc3RhbGwgcHl3aXpsaWdodFwiKVxuXG5UbyBVc2UgZ28gdG8gdGhlIGxvY2F0aW9uIHdoZXJlIGV4dGVuc2lvbiBpcyBpbnN0YWxsZWQgKHVzdWFsbHkgc3RvcmVkIGluIFwifi8ubG9jYWwvc2hhcmUvZ25vbWUtc2hlbGwvZXh0ZW5zaW9uc1wiKSBhbmQgY2hhbmdlIElQIGFkZHJlc3MgaW4gZXh0ZW5zaW9uLmpzIGZpbGUgdG8geW91ciBzbWFydCBidWxiJ3MgSVAgYWRkcmVzcyBhbmQgdGhlbiBleHRlbnNpb24gc2hvdWxkIHdvcmsuIiwKICAibmFtZSI6ICJXaXogTGlnaHQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbHBoYXNwZWFyL1dpei1MaWdodCIsCiAgInV1aWQiOiAid2l6bGlnaHRAaWFiaGlsYXNoam9zaGkiLAogICJ2ZXJzaW9uIjogMQp9"}}}
+, {"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": "5", "sha256": "0gfas7p7mjg0zlwglx6al4yy4g2zfyj0ijgcy3sniwfkvqspw69g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk9yZ2FuaXplIHdpbmRvd3MgaW4gY3VzdG9taXphYmxlIHNuYXAgem9uZXMgbGlrZSBGYW5jeVpvbmVzIG9uIHdpbmRvd3MuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3NuYXBAbWljYWhvc2Jvcm5lIiwKICAibmFtZSI6ICJnU25hcCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nc25hcCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9taWNhaG9zYm9ybmUvZ1NuYXAiLAogICJ1dWlkIjogImdTbmFwQG1pY2Fob3Nib3JuZSIsCiAgInZlcnNpb24iOiA1Cn0="}}}
+, {"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\n\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\nThis extension is a fork of - https://github.com/tofutech/tofumenu\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": "2", "sha256": "0rw6s2pg8vcx3y9dz8n62nm449bqb01vlp31fnhphv7pn6wmv2l9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvZ28gTWVudSAtIE1lbnUgc2ltaWxhciB0byBBcHBsZSdzIG1hY09TIG1lbnUgZm9yIHRoZSBHTk9NRSBEZXNrdG9wXG5cblRoaXMgZXh0ZW5zaW9uIGdpdmVzIGEgc2ltcGxlIG1lbnUgYWxvbmcgd2l0aCB0aGUgYWJpbGl0eSB0byBnZXQgdGhlIGljb24gb2YgeW91ciBkaXN0cm8gb24gdG9wIGxlZnQgcGFydCBvZiB0aGUgcGFuZWwgZm9yIGEgZ3JlYXQgbG9vay5cblRoZSBJY29uIGNhbiBiZSBjdXN0b21pemVkIHRocm91Z2ggc2V0dGluZ3MsIGl0IGhhcyBib3RoIExpbnV4IGFuZCBCU0QgbG9nb3MuXG5mb3IgbW9yZSBzY3JlZW5zaG90cywgdmlzaXQgR2l0SHViLlxuXG5UaGlzIGV4dGVuc2lvbiBpcyBhIGZvcmsgb2YgLSBodHRwczovL2dpdGh1Yi5jb20vdG9mdXRlY2gvdG9mdW1lbnVcblRoZSBvcmlnaW5hbCBwcm9qZWN0IGlzIG5vIG1vcmUgc3VwcG9ydGVkIHRodXMgSSBtYWRlIHRoaXMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibG9nby1tZW51IiwKICAibmFtZSI6ICJMb2dvIE1lbnUiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmFyeWFuX2subG9nby1tZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FyeWFuMjAvTG9nb21lbnUiLAogICJ1dWlkIjogImxvZ29tZW51QGFyeWFuX2siLAogICJ2ZXJzaW9uIjogMgp9"}, "40": {"version": "2", "sha256": "0rw6s2pg8vcx3y9dz8n62nm449bqb01vlp31fnhphv7pn6wmv2l9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvZ28gTWVudSAtIE1lbnUgc2ltaWxhciB0byBBcHBsZSdzIG1hY09TIG1lbnUgZm9yIHRoZSBHTk9NRSBEZXNrdG9wXG5cblRoaXMgZXh0ZW5zaW9uIGdpdmVzIGEgc2ltcGxlIG1lbnUgYWxvbmcgd2l0aCB0aGUgYWJpbGl0eSB0byBnZXQgdGhlIGljb24gb2YgeW91ciBkaXN0cm8gb24gdG9wIGxlZnQgcGFydCBvZiB0aGUgcGFuZWwgZm9yIGEgZ3JlYXQgbG9vay5cblRoZSBJY29uIGNhbiBiZSBjdXN0b21pemVkIHRocm91Z2ggc2V0dGluZ3MsIGl0IGhhcyBib3RoIExpbnV4IGFuZCBCU0QgbG9nb3MuXG5mb3IgbW9yZSBzY3JlZW5zaG90cywgdmlzaXQgR2l0SHViLlxuXG5UaGlzIGV4dGVuc2lvbiBpcyBhIGZvcmsgb2YgLSBodHRwczovL2dpdGh1Yi5jb20vdG9mdXRlY2gvdG9mdW1lbnVcblRoZSBvcmlnaW5hbCBwcm9qZWN0IGlzIG5vIG1vcmUgc3VwcG9ydGVkIHRodXMgSSBtYWRlIHRoaXMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibG9nby1tZW51IiwKICAibmFtZSI6ICJMb2dvIE1lbnUiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmFyeWFuX2subG9nby1tZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FyeWFuMjAvTG9nb21lbnUiLAogICJ1dWlkIjogImxvZ29tZW51QGFyeWFuX2siLAogICJ2ZXJzaW9uIjogMgp9"}}}
+, {"uuid": "rog-manager@rog", "name": "Rog Asus Manager", "pname": "rog-asus-manager", "description": "Asus ROG Manager is useful for controlling many aspects of various ASUS laptops.  Need to install asusctl dependency.", "link": "https://extensions.gnome.org/extension/4452/rog-asus-manager/", "shell_version_map": {"38": {"version": "3", "sha256": "0bzr6ba0h6jx4dgf3i54hqd8jr718fdm88szv32jdhsnigy9ix53", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFzdXMgUk9HIE1hbmFnZXIgaXMgdXNlZnVsIGZvciBjb250cm9sbGluZyBtYW55IGFzcGVjdHMgb2YgdmFyaW91cyBBU1VTIGxhcHRvcHMuICBOZWVkIHRvIGluc3RhbGwgYXN1c2N0bCBkZXBlbmRlbmN5LiIsCiAgImdldHRleHQtZG9tYWluIjogInJvZy1tYW5hZ2VyIiwKICAibmFtZSI6ICJSb2cgQXN1cyBNYW5hZ2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnJvZ21hbmFnZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGVqYW5kcm8tbW91cmFzL3JvZy1tYW5hZ2VyIiwKICAidXVpZCI6ICJyb2ctbWFuYWdlckByb2ciLAogICJ2ZXJzaW9uIjogMwp9"}}}
 ]
diff --git a/pkgs/development/compilers/ghc/8.10.2-binary.nix b/pkgs/development/compilers/ghc/8.10.2-binary.nix
index 3ef4ebb9b98..824794774ce 100644
--- a/pkgs/development/compilers/ghc/8.10.2-binary.nix
+++ b/pkgs/development/compilers/ghc/8.10.2-binary.nix
@@ -374,6 +374,6 @@ stdenv.mkDerivation rec {
     # `pkgsMusl`.
     platforms = builtins.attrNames ghcBinDists.${distSetName};
     hydraPlatforms = builtins.filter (p: minimal || p != "aarch64-linux") platforms;
-    maintainers = with lib.maintainers; [ lostnet ];
+    maintainers = with lib.maintainers; [ lostnet guibou ];
   };
 }
diff --git a/pkgs/development/compilers/ghc/8.10.5-binary.nix b/pkgs/development/compilers/ghc/8.10.7-binary.nix
index ce65929763d..34643dd2f87 100644
--- a/pkgs/development/compilers/ghc/8.10.5-binary.nix
+++ b/pkgs/development/compilers/ghc/8.10.7-binary.nix
@@ -17,7 +17,8 @@ assert stdenv.targetPlatform == stdenv.hostPlatform;
 let
   downloadsUrl = "https://downloads.haskell.org/ghc";
 
-  version = "8.10.5";
+  # Copy sha256 from https://downloads.haskell.org/~ghc/8.10.7/SHA256SUMS
+  version = "8.10.7";
 
   # Information about available bindists that we use in the build.
   #
@@ -42,7 +43,7 @@ let
       i686-linux = {
         src = {
           url = "${downloadsUrl}/${version}/ghc-${version}-i386-deb9-linux.tar.xz";
-          sha256 = "17cwmhhyz952psmp4j3pkdj0yrfxah3l2dawg5s4hdr228n5pjqc";
+          sha256 = "fbfc1ef194f4e7a4c0da8c11cc69b17458a4b928b609b3622c97acc4acd5c5ab";
         };
         exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
         archSpecificLibraries = [
@@ -55,7 +56,7 @@ let
       x86_64-linux = {
         src = {
           url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-deb10-linux.tar.xz";
-          sha256 = "11v76wgljyszc6mgz6r16i6wkifgl15a26q7ablihp2cr8h3qqmw";
+          sha256 = "a13719bca87a0d3ac0c7d4157a4e60887009a7f1a8dbe95c4759ec413e086d30";
         };
         exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
         archSpecificLibraries = [
@@ -65,7 +66,7 @@ let
       armv7l-linux = {
         src = {
           url = "${downloadsUrl}/${version}/ghc-${version}-armv7-deb10-linux.tar.xz";
-          sha256 = "0v5bvhb2z9j26yr0n9gc4xdq2lm37mr98g62p5z8pqahhhd0s5sn";
+          sha256 = "3949c31bdf7d3b4afb765ea8246bca4ca9707c5d988d9961a244f0da100956a2";
         };
         exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
         archSpecificLibraries = [
@@ -75,7 +76,7 @@ let
       aarch64-linux = {
         src = {
           url = "${downloadsUrl}/${version}/ghc-${version}-aarch64-deb10-linux.tar.xz";
-          sha256 = "1p0dgyn1m2nd8ax1g25lchaz9z2nk9jvyzf63biarq7qlzc5q24s";
+          sha256 = "fad2417f9b295233bf8ade79c0e6140896359e87be46cb61cd1d35863d9d0e55";
         };
         exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
         archSpecificLibraries = [
@@ -86,7 +87,7 @@ let
       x86_64-darwin = {
         src = {
           url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-apple-darwin.tar.xz";
-          sha256 = "08javwfqd21kglbr1bnhnbjw2cggz1n668vi8kx5hbcnz3plf3zg";
+          sha256 = "287db0f9c338c9f53123bfa8731b0996803ee50f6ee847fe388092e5e5132047";
         };
         exePathForLibraryCheck = null; # we don't have a library check for darwin yet
         archSpecificLibraries = [
@@ -97,7 +98,7 @@ let
       aarch64-darwin = {
         src = {
           url = "${downloadsUrl}/${version}/ghc-${version}-aarch64-apple-darwin.tar.xz";
-          sha256 = "02fbcrzcc6m25z3ji867isml38jkg4blry70ljwl3l03zxq4ws03";
+          sha256 = "dc469fc3c35fd2a33a5a575ffce87f13de7b98c2d349a41002e200a56d9bba1c";
         };
         exePathForLibraryCheck = null; # we don't have a library check for darwin yet
         archSpecificLibraries = [
@@ -111,7 +112,7 @@ let
       x86_64-linux = {
         src = {
           url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-alpine3.10-linux-integer-simple.tar.xz";
-          sha256 = "1ql2qxywbbv0b9syvrm9kyh5d8midnl676lw4698ajras6gcvmzl";
+          sha256 = "16903df850ef73d5246f2ff169cbf57ecab76c2ac5acfa9928934282cfad575c";
         };
         exePathForLibraryCheck = "bin/ghc";
         archSpecificLibraries = [
diff --git a/pkgs/development/compilers/ghc/8.10.6.nix b/pkgs/development/compilers/ghc/8.10.7.nix
index a11be3b47dc..f1078a0ad34 100644
--- a/pkgs/development/compilers/ghc/8.10.6.nix
+++ b/pkgs/development/compilers/ghc/8.10.7.nix
@@ -136,12 +136,12 @@ let
 
 in
 stdenv.mkDerivation (rec {
-  version = "8.10.6";
+  version = "8.10.7";
   name = "${targetPrefix}ghc-${version}";
 
   src = fetchurl {
     url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
-    sha256 = "43afba72a533408b42c1492bd047b5e37e5f7204e41a5cedd3182cc841610ce9";
+    sha256 = "e3eef6229ce9908dfe1ea41436befb0455fefb1932559e860ad4c606b0d03c9d";
   };
 
   enableParallelBuilding = true;
@@ -284,6 +284,10 @@ stdenv.mkDerivation (rec {
     # * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
     ++ lib.optional stdenv.targetPlatform.isMusl "pie";
 
+  # big-parallel allows us to build with more than 2 cores on
+  # Hydra which already warrants a significant speedup
+  requiredSystemFeatures = [ "big-parallel" ];
+
   postInstall = ''
     # Install the bash completion file.
     install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc
@@ -309,7 +313,7 @@ stdenv.mkDerivation (rec {
   meta = {
     homepage = "http://haskell.org/ghc";
     description = "The Glasgow Haskell Compiler";
-    maintainers = with lib.maintainers; [ marcweber andres peti ];
+    maintainers = with lib.maintainers; [ marcweber andres peti guibou ];
     timeout = 24 * 3600;
     inherit (ghc.meta) license platforms;
 
diff --git a/pkgs/development/compilers/ghc/8.6.5-binary.nix b/pkgs/development/compilers/ghc/8.6.5-binary.nix
index ea4542a38b2..c2fac6faf77 100644
--- a/pkgs/development/compilers/ghc/8.6.5-binary.nix
+++ b/pkgs/development/compilers/ghc/8.6.5-binary.nix
@@ -192,5 +192,6 @@ stdenv.mkDerivation rec {
     hydraPlatforms = builtins.filter (p: p != "aarch64-linux") platforms;
     # build segfaults, use ghc8102Binary which has proper musl support instead
     broken = stdenv.hostPlatform.isMusl;
+    maintainers = with lib.maintainers; [ guibou ];
   };
 }
diff --git a/pkgs/development/compilers/ghc/8.8.4.nix b/pkgs/development/compilers/ghc/8.8.4.nix
index bb2267c930d..66862fca731 100644
--- a/pkgs/development/compilers/ghc/8.8.4.nix
+++ b/pkgs/development/compilers/ghc/8.8.4.nix
@@ -316,7 +316,7 @@ stdenv.mkDerivation (rec {
   meta = {
     homepage = "http://haskell.org/ghc";
     description = "The Glasgow Haskell Compiler";
-    maintainers = with lib.maintainers; [ marcweber andres peti ];
+    maintainers = with lib.maintainers; [ marcweber andres peti guibou ];
     timeout = 24 * 3600;
     inherit (ghc.meta) license platforms;
 
diff --git a/pkgs/development/compilers/ghc/9.0.1.nix b/pkgs/development/compilers/ghc/9.0.1.nix
index 30a7f7a4f40..c2cc1358e82 100644
--- a/pkgs/development/compilers/ghc/9.0.1.nix
+++ b/pkgs/development/compilers/ghc/9.0.1.nix
@@ -268,6 +268,10 @@ stdenv.mkDerivation (rec {
     # * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
     ++ lib.optional stdenv.targetPlatform.isMusl "pie";
 
+  # big-parallel allows us to build with more than 2 cores on
+  # Hydra which already warrants a significant speedup
+  requiredSystemFeatures = [ "big-parallel" ];
+
   postInstall = ''
     # Install the bash completion file.
     install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc
@@ -293,7 +297,7 @@ stdenv.mkDerivation (rec {
   meta = {
     homepage = "http://haskell.org/ghc";
     description = "The Glasgow Haskell Compiler";
-    maintainers = with lib.maintainers; [ marcweber andres peti ];
+    maintainers = with lib.maintainers; [ marcweber andres peti guibou ];
     timeout = 24 * 3600;
     inherit (ghc.meta) license platforms;
 
diff --git a/pkgs/development/compilers/ghc/9.2.1.nix b/pkgs/development/compilers/ghc/9.2.1.nix
new file mode 100644
index 00000000000..4664ed834f5
--- /dev/null
+++ b/pkgs/development/compilers/ghc/9.2.1.nix
@@ -0,0 +1,320 @@
+{ lib, stdenv, pkgsBuildTarget, targetPackages
+
+# build-tools
+, bootPkgs
+, autoconf, automake, coreutils, fetchurl, perl, python3, m4, sphinx, xattr
+, bash
+
+, libiconv ? null, ncurses
+, glibcLocales ? null
+
+, # GHC can be built with system libffi or a bundled one.
+  libffi ? null
+
+, useLLVM ? !stdenv.targetPlatform.isx86
+, # LLVM is conceptually a run-time-only depedendency, but for
+  # non-x86, we need LLVM to bootstrap later stages, so it becomes a
+  # build-time dependency too.
+  buildLlvmPackages, llvmPackages
+
+, # If enabled, GHC will be built with the GPL-free but slower integer-simple
+  # library instead of the faster but GPLed integer-gmp library.
+  enableIntegerSimple ? !(lib.meta.availableOn stdenv.hostPlatform gmp), gmp
+
+, # If enabled, use -fPIC when compiling static libs.
+  enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
+
+  # aarch64 outputs otherwise exceed 2GB limit
+, enableProfiledLibs ? !stdenv.targetPlatform.isAarch64
+
+, # Whether to build dynamic libs for the standard library (on the target
+  # platform). Static libs are always built.
+  enableShared ? !stdenv.targetPlatform.isWindows && !stdenv.targetPlatform.useiOSPrebuilt
+
+, # Whether to build terminfo.
+  enableTerminfo ? !stdenv.targetPlatform.isWindows
+
+, # What flavour to build. An empty string indicates no
+  # specific flavour and falls back to ghc default values.
+  ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
+    (if useLLVM then "perf-cross" else "perf-cross-ncg")
+
+, #  Whether to build sphinx documentation.
+  enableDocs ? (
+    # Docs disabled for musl and cross because it's a large task to keep
+    # all `sphinx` dependencies building in those environments.
+    # `sphinx` pullls in among others:
+    # Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
+    (stdenv.targetPlatform == stdenv.hostPlatform)
+    && !stdenv.hostPlatform.isMusl
+  )
+
+, enableHaddockProgram ?
+    # Disabled for cross; see note [HADDOCK_DOCS].
+    (stdenv.targetPlatform == stdenv.hostPlatform)
+
+, # Whether to disable the large address space allocator
+  # necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
+  disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
+}:
+
+assert !enableIntegerSimple -> gmp != null;
+
+# Cross cannot currently build the `haddock` program for silly reasons,
+# see note [HADDOCK_DOCS].
+assert (stdenv.targetPlatform != stdenv.hostPlatform) -> !enableHaddockProgram;
+
+let
+  inherit (stdenv) buildPlatform hostPlatform targetPlatform;
+
+  inherit (bootPkgs) ghc;
+
+  # TODO(@Ericson2314) Make unconditional
+  targetPrefix = lib.optionalString
+    (targetPlatform != hostPlatform)
+    "${targetPlatform.config}-";
+
+  buildMK = ''
+    BuildFlavour = ${ghcFlavour}
+    ifneq \"\$(BuildFlavour)\" \"\"
+    include mk/flavours/\$(BuildFlavour).mk
+    endif
+    BUILD_SPHINX_HTML = ${if enableDocs then "YES" else "NO"}
+    BUILD_SPHINX_PDF = NO
+  '' +
+  # Note [HADDOCK_DOCS]:
+  # Unfortunately currently `HADDOCK_DOCS` controls both whether the `haddock`
+  # program is built (which we generally always want to have a complete GHC install)
+  # and whether it is run on the GHC sources to generate hyperlinked source code
+  # (which is impossible for cross-compilation); see:
+  # https://gitlab.haskell.org/ghc/ghc/-/issues/20077
+  # This implies that currently a cross-compiled GHC will never have a `haddock`
+  # program, so it can never generate haddocks for any packages.
+  # If this is solved in the future, we'd like to unconditionally
+  # build the haddock program (removing the `enableHaddockProgram` option).
+  ''
+    HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
+    DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
+    INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"}
+  '' + lib.optionalString (targetPlatform != hostPlatform) ''
+    Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
+    CrossCompilePrefix = ${targetPrefix}
+  '' + lib.optionalString (!enableProfiledLibs) ''
+    GhcLibWays = "v dyn"
+  '' + lib.optionalString enableRelocatedStaticLibs ''
+    GhcLibHcOpts += -fPIC
+    GhcRtsHcOpts += -fPIC
+  '' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
+    EXTRA_CC_OPTS += -std=gnu99
+  '';
+
+  # Splicer will pull out correct variations
+  libDeps = platform: lib.optional enableTerminfo ncurses
+    ++ [libffi]
+    ++ lib.optional (!enableIntegerSimple) gmp
+    ++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv;
+
+  toolsForTarget = [
+    pkgsBuildTarget.targetPackages.stdenv.cc
+  ] ++ lib.optional useLLVM buildLlvmPackages.llvm;
+
+  targetCC = builtins.head toolsForTarget;
+
+  # Use gold either following the default, or to avoid the BFD linker due to some bugs / perf issues.
+  # But we cannot avoid BFD when using musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856
+  # see #84670 and #49071 for more background.
+  useLdGold = targetPlatform.linker == "gold" || (targetPlatform.linker == "bfd" && !targetPlatform.isMusl);
+
+  runtimeDeps = [
+    targetPackages.stdenv.cc.bintools
+    coreutils
+  ]
+  # On darwin, we need unwrapped bintools as well (for otool)
+  ++ lib.optionals (stdenv.targetPlatform.linker == "cctools") [
+    targetPackages.stdenv.cc.bintools.bintools
+  ];
+
+in
+stdenv.mkDerivation (rec {
+  version = "9.2.0.20210821";
+  name = "${targetPrefix}ghc-${version}";
+
+  src = fetchurl {
+    url = "https://downloads.haskell.org/ghc/9.2.1-rc1/ghc-${version}-src.tar.xz";
+    sha256 = "1q2pppxv2avhykyxvyq72r5p97rkkiqp19b77yhp85ralbcp4ivw";
+  };
+
+  enableParallelBuilding = true;
+
+  outputs = [ "out" "doc" ];
+
+  postPatch = "patchShebangs .";
+
+  # GHC needs the locale configured during the Haddock phase.
+  LANG = "en_US.UTF-8";
+
+  # GHC is a bit confused on its cross terminology.
+  preConfigure = ''
+    for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do
+      export "''${env#TARGET_}=''${!env}"
+    done
+    # GHC is a bit confused on its cross terminology, as these would normally be
+    # the *host* tools.
+    export CC="${targetCC}/bin/${targetCC.targetPrefix}cc"
+    export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx"
+    # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177
+    export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}"
+    export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as"
+    export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar"
+    export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm"
+    export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib"
+    export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
+    export STRIP="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}strip"
+
+    echo -n "${buildMK}" > mk/build.mk
+    sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
+  '' + lib.optionalString (stdenv.isLinux && hostPlatform.libc == "glibc") ''
+    export LOCALE_ARCHIVE="${glibcLocales}/lib/locale/locale-archive"
+  '' + lib.optionalString (!stdenv.isDarwin) ''
+    export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}"
+  '' + lib.optionalString stdenv.isDarwin ''
+    export NIX_LDFLAGS+=" -no_dtrace_dof"
+  '' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
+    sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets
+  '' + lib.optionalString targetPlatform.isMusl ''
+      echo "patching llvm-targets for musl targets..."
+      echo "Cloning these existing '*-linux-gnu*' targets:"
+      grep linux-gnu llvm-targets | sed 's/^/  /'
+      echo "(go go gadget sed)"
+      sed -i 's,\(^.*linux-\)gnu\(.*\)$,\0\n\1musl\2,' llvm-targets
+      echo "llvm-targets now contains these '*-linux-musl*' targets:"
+      grep linux-musl llvm-targets | sed 's/^/  /'
+
+      echo "And now patching to preserve '-musleabi' as done with '-gnueabi'"
+      # (aclocal.m4 is actual source, but patch configure as well since we don't re-gen)
+      for x in configure aclocal.m4; do
+        substituteInPlace $x \
+          --replace '*-android*|*-gnueabi*)' \
+                    '*-android*|*-gnueabi*|*-musleabi*)'
+      done
+  '';
+
+  # TODO(@Ericson2314): Always pass "--target" and always prefix.
+  configurePlatforms = [ "build" "host" ]
+    ++ lib.optional (targetPlatform != hostPlatform) "target";
+
+  # `--with` flags for libraries needed for RTS linker
+  configureFlags = [
+    "--datadir=$doc/share/doc/ghc"
+    "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
+  ] ++ lib.optionals (libffi != null) [
+    "--with-system-libffi"
+    "--with-ffi-includes=${targetPackages.libffi.dev}/include"
+    "--with-ffi-libraries=${targetPackages.libffi.out}/lib"
+  ] ++ lib.optionals (targetPlatform == hostPlatform && !enableIntegerSimple) [
+    "--with-gmp-includes=${targetPackages.gmp.dev}/include"
+    "--with-gmp-libraries=${targetPackages.gmp.out}/lib"
+  ] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
+    "--with-iconv-includes=${libiconv}/include"
+    "--with-iconv-libraries=${libiconv}/lib"
+  ] ++ lib.optionals (targetPlatform != hostPlatform) [
+    "--enable-bootstrap-with-devel-snapshot"
+  ] ++ lib.optionals useLdGold [
+    "CFLAGS=-fuse-ld=gold"
+    "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold"
+    "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
+  ] ++ lib.optionals (disableLargeAddressSpace) [
+    "--disable-large-address-space"
+  ];
+
+  # Make sure we never relax`$PATH` and hooks support for compatibility.
+  strictDeps = true;
+
+  # Don’t add -liconv to LDFLAGS automatically so that GHC will add it itself.
+  dontAddExtraLibs = true;
+
+  nativeBuildInputs = [
+    perl autoconf automake m4 python3
+    ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
+  ] ++ lib.optionals enableDocs [
+    sphinx
+  ] ++ lib.optionals stdenv.isDarwin [
+    # TODO(@sternenseemann): use XATTR env var after backport of
+    # https://gitlab.haskell.org/ghc/ghc/-/merge_requests/6447
+    xattr
+  ];
+
+  # For building runtime libs
+  depsBuildTarget = toolsForTarget;
+
+  buildInputs = [ perl bash ] ++ (libDeps hostPlatform);
+
+  propagatedBuildInputs = [ targetPackages.stdenv.cc ]
+    ++ lib.optional useLLVM llvmPackages.llvm;
+
+  depsTargetTarget = map lib.getDev (libDeps targetPlatform);
+  depsTargetTargetPropagated = map (lib.getOutput "out") (libDeps targetPlatform);
+
+  # required, because otherwise all symbols from HSffi.o are stripped, and
+  # that in turn causes GHCi to abort
+  stripDebugFlags = [ "-S" ] ++ lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
+
+  checkTarget = "test";
+
+  hardeningDisable =
+    [ "format" ]
+    # In nixpkgs, musl based builds currently enable `pie` hardening by default
+    # (see `defaultHardeningFlags` in `make-derivation.nix`).
+    # But GHC cannot currently produce outputs that are ready for `-pie` linking.
+    # Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
+    # See:
+    # * https://github.com/NixOS/nixpkgs/issues/129247
+    # * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
+    ++ lib.optional stdenv.targetPlatform.isMusl "pie";
+
+  # big-parallel allows us to build with more than 2 cores on
+  # Hydra which already warrants a significant speedup
+  requiredSystemFeatures = [ "big-parallel" ];
+
+  postInstall = ''
+    # Install the bash completion file.
+    install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc
+
+    # Patch scripts to include "readelf" and "cat" in $PATH.
+    for i in "$out/bin/"*; do
+      test ! -h $i || continue
+      egrep --quiet '^#!' <(head -n 1 $i) || continue
+      sed -i -e '2i export PATH="$PATH:${lib.makeBinPath runtimeDeps}"' $i
+    done
+  '';
+
+  passthru = {
+    inherit bootPkgs targetPrefix;
+
+    inherit llvmPackages;
+    inherit enableShared;
+
+    # Our Cabal compiler name
+    haskellCompilerName = "ghc-${version}";
+  };
+
+  meta = {
+    homepage = "http://haskell.org/ghc";
+    description = "The Glasgow Haskell Compiler";
+    maintainers = with lib.maintainers; [ marcweber andres peti guibou ];
+    timeout = 24 * 3600;
+    inherit (ghc.meta) license platforms;
+
+    # integer-simple builds are broken when GHC links against musl.
+    # See https://github.com/NixOS/nixpkgs/pull/129606#issuecomment-881323743.
+    # Linker failure on macOS:
+    # https://gitlab.haskell.org/ghc/ghc/-/issues/19950#note_373726
+    broken = (enableIntegerSimple && hostPlatform.isMusl)
+      || stdenv.hostPlatform.isDarwin;
+  };
+
+} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt {
+  dontStrip = true;
+  dontPatchELF = true;
+  noAuditTmpdir = true;
+})
diff --git a/pkgs/development/compilers/ghc/head.nix b/pkgs/development/compilers/ghc/head.nix
index 35c0bd76214..d39adcaab54 100644
--- a/pkgs/development/compilers/ghc/head.nix
+++ b/pkgs/development/compilers/ghc/head.nix
@@ -2,7 +2,7 @@
 
 # build-tools
 , bootPkgs
-, autoconf, autoreconfHook, automake, coreutils, fetchgit, perl, python3, m4, sphinx
+, autoconf, autoreconfHook, automake, coreutils, fetchgit, perl, python3, m4, sphinx, xattr
 , bash
 
 , libiconv ? null, ncurses
@@ -255,6 +255,10 @@ stdenv.mkDerivation (rec {
     ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
   ] ++ lib.optionals enableDocs [
     sphinx
+  ] ++ lib.optionals stdenv.isDarwin [
+    # TODO(@sternenseemann): use XATTR env var once we have
+    # https://gitlab.haskell.org/ghc/ghc/-/merge_requests/6447
+    xattr
   ];
 
   # For building runtime libs
@@ -285,6 +289,10 @@ stdenv.mkDerivation (rec {
     # * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
     ++ lib.optional stdenv.targetPlatform.isMusl "pie";
 
+  # big-parallel allows us to build with more than 2 cores on
+  # Hydra which already warrants a significant speedup
+  requiredSystemFeatures = [ "big-parallel" ];
+
   postInstall = ''
     # Install the bash completion file.
     install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc
@@ -310,7 +318,7 @@ stdenv.mkDerivation (rec {
   meta = {
     homepage = "http://haskell.org/ghc";
     description = "The Glasgow Haskell Compiler";
-    maintainers = with lib.maintainers; [ marcweber andres peti ];
+    maintainers = with lib.maintainers; [ marcweber andres peti guibou ];
     timeout = 24 * 3600;
     inherit (ghc.meta) license platforms;
     # ghcHEAD times out on aarch64-linux on Hydra.
diff --git a/pkgs/development/compilers/llvm/13/compiler-rt/default.nix b/pkgs/development/compilers/llvm/13/compiler-rt/default.nix
index 9557f9d2d80..8fc32bbd0ae 100644
--- a/pkgs/development/compilers/llvm/13/compiler-rt/default.nix
+++ b/pkgs/development/compilers/llvm/13/compiler-rt/default.nix
@@ -110,5 +110,7 @@ stdenv.mkDerivation {
     # "All of the code in the compiler-rt project is dual licensed under the MIT
     # license and the UIUC License (a BSD-like license)":
     license = with lib.licenses; [ mit ncsa ];
+    # TODO/FIXME: Build fails on Hydra:
+    broken = stdenv.isAarch64;
   };
 }
diff --git a/pkgs/development/haskell-modules/cabal2nix-unstable.nix b/pkgs/development/haskell-modules/cabal2nix-unstable.nix
index 0e8fc7c69cf..be80f3ed5ce 100644
--- a/pkgs/development/haskell-modules/cabal2nix-unstable.nix
+++ b/pkgs/development/haskell-modules/cabal2nix-unstable.nix
@@ -8,10 +8,10 @@
 }:
 mkDerivation {
   pname = "cabal2nix";
-  version = "unstable-2021-08-21";
+  version = "unstable-2021-08-27";
   src = fetchzip {
-    url = "https://github.com/NixOS/cabal2nix/archive/51a4082fefad4642af67a0ae4bf3bb3a7d9b45e0.tar.gz";
-    sha256 = "1qd991ziv54drb0n655dg4ymknlfa0ndx9nq9wb5v00a15i4c04x";
+    url = "https://github.com/NixOS/cabal2nix/archive/05b1b404e20eb6252f93c821d4d7974ab7277d90.tar.gz";
+    sha256 = "03zvp3wwqph9niadgbvkfcqabafgyhnw12r09cw23hm69hsb64d5";
   };
   isLibrary = true;
   isExecutable = true;
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index 8f45269c300..069b90f0437 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -120,14 +120,6 @@ self: super: {
   # Jailbreak is necessary for QuickCheck dependency.
   vector = doJailbreak (if pkgs.stdenv.isi686 then appendConfigureFlag super.vector "--ghc-options=-msse2" else super.vector);
 
-  # Test suite fails due golden tests checking text representation
-  # of normalized dhall expressions, and newer dhall versions format
-  # differently.
-  hpack-dhall =
-    if pkgs.lib.versionOlder "0.5.2" super.hpack-dhall.version
-    then throw "Drop dontCheck override for hpack-dhall > 0.5.2"
-    else dontCheck super.hpack-dhall;
-
   inline-c-cpp = overrideCabal super.inline-c-cpp (drv: {
     postPatch = (drv.postPatch or "") + ''
       substituteInPlace inline-c-cpp.cabal --replace "-optc-std=c++11" ""
@@ -1958,4 +1950,12 @@ EOT
   # 2021-08-18: streamly-posix was released with hspec 2.8.2, but it works with older versions too.
   streamly-posix = doJailbreak super.streamly-posix;
 
+  distribution-nixpkgs = assert super.distribution-nixpkgs.version == "1.6.0";
+    overrideCabal super.distribution-nixpkgs {
+      version = "1.6.1";
+      revision = null;
+      sha256 = "136q893in07iw53m9pqr65h3mrnpvfda272bl4rq1b0z3hzpyhkm";
+      editedCabalFile = null;
+    };
+
 } // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
diff --git a/pkgs/development/haskell-modules/configuration-darwin.nix b/pkgs/development/haskell-modules/configuration-darwin.nix
index f23abbd167d..bf7b05148dc 100644
--- a/pkgs/development/haskell-modules/configuration-darwin.nix
+++ b/pkgs/development/haskell-modules/configuration-darwin.nix
@@ -8,7 +8,7 @@ in
 
 with haskellLib;
 
-self: super: {
+self: super: ({
 
   # the tests for shell-conduit on Darwin illegitimatey assume non-GNU echo
   # see: https://github.com/psibi/shell-conduit/issues/12
@@ -196,6 +196,7 @@ self: super: {
   hls-ormolu-plugin = dontCheck super.hls-ormolu-plugin;
   hls-pragmas-plugin = dontCheck super.hls-pragmas-plugin;
   hls-haddock-comments-plugin = dontCheck super.hls-haddock-comments-plugin;
+  hls-floskell-plugin = dontCheck super.hls-floskell-plugin;
 
   # We are lacking pure pgrep at the moment for tests to work
   tmp-postgres = dontCheck super.tmp-postgres;
@@ -252,4 +253,11 @@ self: super: {
   # Otherwise impure gcc is used, which is Apple's weird wrapper
   c2hsc = addTestToolDepends super.c2hsc [ pkgs.gcc ];
 
-}
+} // lib.optionalAttrs pkgs.stdenv.isAarch64 {  # aarch64-darwin
+
+  # https://github.com/fpco/unliftio/issues/87
+  unliftio = dontCheck super.unliftio;
+
+  # https://github.com/fpco/inline-c/issues/127
+  inline-c-cpp = dontCheck super.inline-c-cpp;
+})
diff --git a/pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix b/pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix
new file mode 100644
index 00000000000..f549dfbce1a
--- /dev/null
+++ b/pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix
@@ -0,0 +1,115 @@
+{ pkgs, haskellLib }:
+
+with haskellLib;
+
+self: super: {
+
+  # This compiler version needs llvm 10.x.
+  llvmPackages = pkgs.lib.dontRecurseIntoAttrs pkgs.llvmPackages_10;
+
+  # Disable GHC 9.2.x core libraries.
+  array = null;
+  base = null;
+  binary = null;
+  bytestring = null;
+  Cabal = null;
+  containers = null;
+  deepseq = null;
+  directory = null;
+  exceptions = null;
+  filepath = null;
+  ghc-bignum = null;
+  ghc-boot = null;
+  ghc-boot-th = null;
+  ghc-compact = null;
+  ghc-heap = null;
+  ghc-prim = null;
+  ghci = null;
+  haskeline = null;
+  hpc = null;
+  integer-gmp = null;
+  libiserv = null;
+  mtl = null;
+  parsec = null;
+  pretty = null;
+  process = null;
+  rts = null;
+  stm = null;
+  template-haskell = null;
+  terminfo = null;
+  text = null;
+  time = null;
+  transformers = null;
+  unix = null;
+  xhtml = null;
+
+  # cabal-install needs more recent versions of Cabal and base16-bytestring.
+  cabal-install = (doJailbreak super.cabal-install).overrideScope (self: super: {
+    Cabal = null;
+    base16-bytestring = self.base16-bytestring_0_1_1_7;
+  });
+
+  # Jailbreaks & Version Updates
+  async = doJailbreak super.async;
+  ChasingBottoms = markBrokenVersion "1.3.1.9" super.ChasingBottoms;
+  data-fix = doJailbreak super.data-fix;
+  dec = doJailbreak super.dec;
+  ed25519 = doJailbreak super.ed25519;
+  hackage-security = doJailbreak super.hackage-security;
+  hashable = overrideCabal (doJailbreak (dontCheck super.hashable)) (drv: { postPatch = "sed -i -e 's,integer-gmp .*<1.1,integer-gmp < 2,' hashable.cabal"; });
+  hashable-time = doJailbreak super.hashable-time;
+  HTTP = overrideCabal (doJailbreak super.HTTP) (drv: { postPatch = "sed -i -e 's,! Socket,!Socket,' Network/TCP.hs"; });
+  integer-logarithms = overrideCabal (doJailbreak super.integer-logarithms) (drv: { postPatch = "sed -i -e 's,integer-gmp <1.1,integer-gmp < 2,' integer-logarithms.cabal"; });
+  lukko = doJailbreak super.lukko;
+  parallel = doJailbreak super.parallel;
+  primitive = doJailbreak (dontCheck super.primitive);
+  regex-posix = doJailbreak super.regex-posix;
+  resolv = doJailbreak super.resolv;
+  singleton-bool = doJailbreak super.singleton-bool;
+  split = doJailbreak super.split;
+  tar = doJailbreak super.tar;
+  time-compat = doJailbreak super.time-compat;
+  vector = doJailbreak (dontCheck super.vector);
+  vector-binary-instances = doJailbreak super.vector-binary-instances;
+  vector-th-unbox = doJailbreak super.vector-th-unbox;
+  zlib = doJailbreak super.zlib;
+
+  # Apply patches from head.hackage.
+  alex = appendPatch (dontCheck super.alex) (pkgs.fetchpatch {
+    url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/fe192e12b88b09499d4aff0e562713e820544bd6/patches/alex-3.2.6.patch";
+    sha256 = "1rzs764a0nhx002v4fadbys98s6qblw4kx4g46galzjf5f7n2dn4";
+  });
+  doctest = dontCheck (doJailbreak super.doctest_0_18_1);
+  language-haskell-extract = appendPatch (doJailbreak super.language-haskell-extract) (pkgs.fetchpatch {
+    url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/master/patches/language-haskell-extract-0.2.4.patch";
+    sha256 = "0rgzrq0513nlc1vw7nw4km4bcwn4ivxcgi33jly4a7n3c1r32v1f";
+  });
+
+  # The test suite depends on ChasingBottoms, which is broken with ghc-9.0.x.
+  unordered-containers = dontCheck super.unordered-containers;
+
+  # The test suite seems pretty broken.
+  base64-bytestring = dontCheck super.base64-bytestring;
+
+  # 5 introduced support for GHC 9.0.x, but hasn't landed in stackage yet
+  lens = super.lens_5_0_1;
+
+  # 0.16.0 introduced support for GHC 9.0.x, stackage has 0.15.0
+  memory = super.memory_0_16_0;
+
+  # GHC 9.0.x doesn't like `import Spec (main)` in Main.hs
+  # https://github.com/snoyberg/mono-traversable/issues/192
+  mono-traversable = dontCheck super.mono-traversable;
+
+  # Disable tests pending resolution of
+  # https://github.com/Soostone/retry/issues/71
+  retry = dontCheck super.retry;
+
+  # hlint 3.3 needs a ghc-lib-parser newer than the one from stackage
+  hlint = super.hlint_3_3_1.overrideScope (self: super: {
+    ghc-lib-parser = overrideCabal self.ghc-lib-parser_9_0_1_20210324 {
+      doHaddock = false;
+    };
+    ghc-lib-parser-ex = self.ghc-lib-parser-ex_9_0_0_4;
+  });
+}
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
index 94345e60295..8a13571f0a1 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
@@ -632,7 +632,6 @@ broken-packages:
   - cio
   - cipher-blowfish
   - circlehs
-  - circular
   - citeproc-hs
   - cjk
   - cj-token
@@ -1021,9 +1020,11 @@ broken-packages:
   - dgim
   - dgs
   - dhall-check
+  - dhall-csv
   - dhall-fly
   - dhall-text
   - dhall-to-cabal
+  - dhall-toml
   - dhcp-lease-parser
   - dhrun
   - dia-base
@@ -2535,6 +2536,7 @@ broken-packages:
   - IsNull
   - iso8601-duration
   - isobmff
+  - isocline
   - isotope
   - itcli
   - itemfield
@@ -3194,7 +3196,6 @@ broken-packages:
   - nanomsg-haskell
   - nanoparsec
   - NanoProlog
-  - nanovg
   - nanq
   - naperian
   - naqsha
@@ -4802,6 +4803,7 @@ broken-packages:
   - th-traced
   - thumbnail-plus
   - tianbar
+  - ticket-management
   - TicTacToe
   - tictactoe3d
   - tidal-midi
@@ -5329,6 +5331,7 @@ broken-packages:
   - yandex-translate
   - yaop
   - yap
+  - yapb
   - yarr
   - yaya-test
   - yaya-unsafe-test
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
index ec51f8c03ae..7637972c07f 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
@@ -63,10 +63,9 @@ core-packages:
 # available on Hackage, `hackage2nix` would generate two packages, `aeson`
 # at version 1.4.6.0 and `aeson_1_5_0_0` at version 1.5.0.0.
 #
-# WARNING: This list is generated semiautomatically based on the most recent
-# LTS package set. If you want to add entries to it, you must do so before the
-# comment saying "# LTS Haskell x.y". Any changes after that comment will be
-# lost the next time `update-stackage.sh` runs.
+# WARNING: We import a list of default-package-overrides from stackage which is
+# tracked in stackage.yaml. Adding conflicting overrides with stackage here will
+# not work.
 default-package-overrides:
   # This was only intended for ghc-7.0.4, and has very old deps, one hidden behind a flag
   - MissingH ==1.4.2.0
@@ -91,6 +90,8 @@ default-package-overrides:
   - streamly-bytestring < 0.1.3
   - streamly-lmdb < 0.3.0
   - streamly-process
+  # dhall-nix is not part of stackage, remove if dhall >= 1.40
+  - dhall-nix < 1.1.22
 
 extra-packages:
   - base16-bytestring < 1               # required for cabal-install etc.
@@ -337,130 +338,130 @@ package-maintainers:
     - nix-tree
 
 unsupported-platforms:
-  Allure:                                       [ x86_64-darwin ]
-  alsa-mixer:                                   [ x86_64-darwin ]
-  alsa-pcm:                                     [ x86_64-darwin ]
-  alsa-seq:                                     [ x86_64-darwin ]
-  AWin32Console:                                [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
+  Allure:                                       [ x86_64-darwin, aarch64-darwin ]
+  alsa-mixer:                                   [ x86_64-darwin, aarch64-darwin ]
+  alsa-pcm:                                     [ x86_64-darwin, aarch64-darwin ]
+  alsa-seq:                                     [ x86_64-darwin, aarch64-darwin ]
+  AWin32Console:                                [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
   barbly:                                       [ i686-linux, x86_64-linux, aarch64-linux, armv7l-linux ]
-  bdcs-api:                                     [ x86_64-darwin ]
-  bindings-directfb:                            [ x86_64-darwin ]
-  bindings-parport:                             [ x86_64-darwin ] # parport is a linux kernel component
-  bindings-sane:                                [ x86_64-darwin ]
-  btrfs:                                        [ x86_64-darwin ] # depends on linux
-  bustle:                                       [ x86_64-darwin ] # uses glibc-specific ptsname_r
+  bdcs-api:                                     [ x86_64-darwin, aarch64-darwin ]
+  bindings-directfb:                            [ x86_64-darwin, aarch64-darwin ]
+  bindings-parport:                             [ x86_64-darwin, aarch64-darwin ] # parport is a linux kernel component
+  bindings-sane:                                [ x86_64-darwin, aarch64-darwin ]
+  btrfs:                                        [ x86_64-darwin, aarch64-darwin ] # depends on linux
+  bustle:                                       [ x86_64-darwin, aarch64-darwin ] # uses glibc-specific ptsname_r
   charsetdetect:                                [ aarch64-linux ] # not supported by vendored lib / not configured properly https://github.com/batterseapower/libcharsetdetect/issues/3
   crackNum:                                     [ aarch64-linux ] # depends on sbv, which is not supported on aarch64-linux
-  cut-the-crap:                                 [ x86_64-darwin ]
-  d3d11binding:                                 [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  DirectSound:                                  [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  dx9base:                                      [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  dx9d3d:                                       [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  dx9d3dx:                                      [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Euterpea:                                     [ x86_64-darwin ]
-  follow-file:                                  [ x86_64-darwin ]
-  freenect:                                     [ x86_64-darwin ]
-  FTGL:                                         [ x86_64-darwin ]
-  fuzzytime:                                    [ x86_64-darwin ] # https://github.com/kamwitsta/fuzzytime/issues/2
-  ghcjs-dom-hello:                              [ x86_64-darwin ]
-  gi-dbusmenugtk3:                              [ x86_64-darwin ]
-  gi-dbusmenu:                                  [ x86_64-darwin ]
-  gi-ggit:                                      [ x86_64-darwin ]
-  gi-ibus:                                      [ x86_64-darwin ]
-  gi-ostree:                                    [ x86_64-darwin ]
-  gi-vte:                                       [ x86_64-darwin ]
-  gi-wnck:                                      [ x86_64-darwin ]
-  gnome-keyring:                                [ x86_64-darwin ]
+  cut-the-crap:                                 [ x86_64-darwin, aarch64-darwin ]
+  d3d11binding:                                 [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  DirectSound:                                  [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  dx9base:                                      [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  dx9d3d:                                       [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  dx9d3dx:                                      [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  Euterpea:                                     [ x86_64-darwin, aarch64-darwin ]
+  follow-file:                                  [ x86_64-darwin, aarch64-darwin ]
+  freenect:                                     [ x86_64-darwin, aarch64-darwin ]
+  FTGL:                                         [ x86_64-darwin, aarch64-darwin ]
+  fuzzytime:                                    [ x86_64-darwin, aarch64-darwin ] # https://github.com/kamwitsta/fuzzytime/issues/2
+  ghcjs-dom-hello:                              [ x86_64-darwin, aarch64-darwin ]
+  gi-dbusmenugtk3:                              [ x86_64-darwin, aarch64-darwin ]
+  gi-dbusmenu:                                  [ x86_64-darwin, aarch64-darwin ]
+  gi-ggit:                                      [ x86_64-darwin, aarch64-darwin ]
+  gi-ibus:                                      [ x86_64-darwin, aarch64-darwin ]
+  gi-ostree:                                    [ x86_64-darwin, aarch64-darwin ]
+  gi-vte:                                       [ x86_64-darwin, aarch64-darwin ]
+  gi-wnck:                                      [ x86_64-darwin, aarch64-darwin ]
+  gnome-keyring:                                [ x86_64-darwin, aarch64-darwin ]
   gtk-mac-integration:                          [ i686-linux, x86_64-linux, aarch64-linux, armv7l-linux ]
-  gtk-sni-tray:                                 [ x86_64-darwin ]
-  haskell-snake:                                [ x86_64-darwin ]
-  hcwiid:                                       [ x86_64-darwin ]
+  gtk-sni-tray:                                 [ x86_64-darwin, aarch64-darwin ]
+  haskell-snake:                                [ x86_64-darwin, aarch64-darwin ]
+  hcwiid:                                       [ x86_64-darwin, aarch64-darwin ]
   hevm:                                         [ aarch64-linux ] # depends on sbv, which is not supported on aarch64-linux
-  HFuse:                                        [ x86_64-darwin ]
-  hidapi:                                       [ x86_64-darwin ]
-  hinotify-bytestring:                          [ x86_64-darwin ]
-  hommage-ds:                                   [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  honk:                                         [ x86_64-darwin ]
-  hpapi:                                        [ x86_64-darwin ]
+  HFuse:                                        [ x86_64-darwin, aarch64-darwin ]
+  hidapi:                                       [ x86_64-darwin, aarch64-darwin ]
+  hinotify-bytestring:                          [ x86_64-darwin, aarch64-darwin ]
+  hommage-ds:                                   [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  honk:                                         [ x86_64-darwin, aarch64-darwin ]
+  hpapi:                                        [ x86_64-darwin, aarch64-darwin ]
   HQu:                                          [ aarch64-linux, armv7l-linux ] # unsupported by vendored C++ library, TODO: explicitly list supported platforms
-  HSoM:                                         [ x86_64-darwin ]
-  iwlib:                                        [ x86_64-darwin ]
-  jsaddle-webkit2gtk:                           [ x86_64-darwin ]
+  HSoM:                                         [ x86_64-darwin, aarch64-darwin ]
+  iwlib:                                        [ x86_64-darwin, aarch64-darwin ]
+  jsaddle-webkit2gtk:                           [ x86_64-darwin, aarch64-darwin ]
   kqueue:                                       [ x86_64-linux, aarch64-linux, i686-linux, armv7l-linux ] # BSD / Darwin only API
-  LambdaHack:                                   [ x86_64-darwin ]
+  LambdaHack:                                   [ x86_64-darwin, aarch64-darwin ]
   large-hashable:                               [ aarch64-linux ] # https://github.com/factisresearch/large-hashable/issues/17
-  libmodbus:                                    [ x86_64-darwin ]
-  libsystemd-journal:                           [ x86_64-darwin ]
-  libtelnet:                                    [ x86_64-darwin ]
-  libzfs:                                       [ x86_64-darwin ]
+  libmodbus:                                    [ x86_64-darwin, aarch64-darwin ]
+  libsystemd-journal:                           [ x86_64-darwin, aarch64-darwin ]
+  libtelnet:                                    [ x86_64-darwin, aarch64-darwin ]
+  libzfs:                                       [ x86_64-darwin, aarch64-darwin ]
   linearEqSolver:                               [ aarch64-linux ]
-  linux-evdev:                                  [ x86_64-darwin ]
-  linux-file-extents:                           [ x86_64-darwin ]
-  linux-inotify:                                [ x86_64-darwin ]
-  linux-mount:                                  [ x86_64-darwin ]
-  linux-namespaces:                             [ x86_64-darwin ]
-  lio-fs:                                       [ x86_64-darwin ]
-  logging-facade-journald:                      [ x86_64-darwin ]
-  midi-alsa:                                    [ x86_64-darwin ]
-  mpi-hs:                                       [ aarch64-linux, x86_64-darwin ]
-  mpi-hs-binary:                                [ aarch64-linux, x86_64-darwin ]
-  mpi-hs-cereal:                                [ aarch64-linux, x86_64-darwin ]
-  mpi-hs-store:                                 [ aarch64-linux, x86_64-darwin ]
+  linux-evdev:                                  [ x86_64-darwin, aarch64-darwin ]
+  linux-file-extents:                           [ x86_64-darwin, aarch64-darwin ]
+  linux-inotify:                                [ x86_64-darwin, aarch64-darwin ]
+  linux-mount:                                  [ x86_64-darwin, aarch64-darwin ]
+  linux-namespaces:                             [ x86_64-darwin, aarch64-darwin ]
+  lio-fs:                                       [ x86_64-darwin, aarch64-darwin ]
+  logging-facade-journald:                      [ x86_64-darwin, aarch64-darwin ]
+  midi-alsa:                                    [ x86_64-darwin, aarch64-darwin ]
+  mpi-hs:                                       [ aarch64-linux, x86_64-darwin, aarch64-darwin ]
+  mpi-hs-binary:                                [ aarch64-linux, x86_64-darwin, aarch64-darwin ]
+  mpi-hs-cereal:                                [ aarch64-linux, x86_64-darwin, aarch64-darwin ]
+  mpi-hs-store:                                 [ aarch64-linux, x86_64-darwin, aarch64-darwin ]
   mplayer-spot:                                 [ aarch64-linux ]
-  mptcp-pm:                                     [ x86_64-darwin ]
-  netlink:                                      [ x86_64-darwin ]
-  notifications-tray-icon:                      [ x86_64-darwin ] # depends on gi-dbusmenu
-  oculus:                                       [ x86_64-darwin ]
-  pam:                                          [ x86_64-darwin ]
-  parport:                                      [ x86_64-darwin ]
+  mptcp-pm:                                     [ x86_64-darwin, aarch64-darwin ]
+  netlink:                                      [ x86_64-darwin, aarch64-darwin ]
+  notifications-tray-icon:                      [ x86_64-darwin, aarch64-darwin ] # depends on gi-dbusmenu
+  oculus:                                       [ x86_64-darwin, aarch64-darwin ]
+  pam:                                          [ x86_64-darwin, aarch64-darwin ]
+  parport:                                      [ x86_64-darwin, aarch64-darwin ]
   password:                                     [ aarch64-linux, armv7l-linux ] # uses scrypt, which requries x86
   password-instances:                           [ aarch64-linux, armv7l-linux ] # uses scrypt, which requries x86
   persist-state:                                [ aarch64-linux, armv7l-linux ] # https://github.com/minad/persist-state/blob/6fd68c0b8b93dec78218f6d5a1f4fa06ced4e896/src/Data/PersistState.hs#L122-L128
-  piyo:                                         [ x86_64-darwin ]
-  PortMidi-simple:                              [ x86_64-darwin ]
-  PortMidi:                                     [ x86_64-darwin ]
-  posix-api:                                    [ x86_64-darwin ]
-  Raincat:                                      [ x86_64-darwin ]
-  reactive-balsa:                               [ x86_64-darwin ] # depends on alsa-core
-  reactivity:                                   [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  reflex-dom-fragment-shader-canvas:            [ x86_64-darwin, aarch64-linux ]
-  reflex-dom:                                   [ x86_64-darwin, aarch64-linux ]
-  reflex-localize-dom:                          [ x86_64-darwin, aarch64-linux ]
-  rtlsdr:                                       [ x86_64-darwin ]
-  rubberband:                                   [ x86_64-darwin ]
+  piyo:                                         [ x86_64-darwin, aarch64-darwin ]
+  PortMidi-simple:                              [ x86_64-darwin, aarch64-darwin ]
+  PortMidi:                                     [ x86_64-darwin, aarch64-darwin ]
+  posix-api:                                    [ x86_64-darwin, aarch64-darwin ]
+  Raincat:                                      [ x86_64-darwin, aarch64-darwin ]
+  reactive-balsa:                               [ x86_64-darwin, aarch64-darwin ] # depends on alsa-core
+  reactivity:                                   [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  reflex-dom-fragment-shader-canvas:            [ x86_64-darwin, aarch64-darwin, aarch64-linux ]
+  reflex-dom:                                   [ x86_64-darwin, aarch64-darwin, aarch64-linux ]
+  reflex-localize-dom:                          [ x86_64-darwin, aarch64-darwin, aarch64-linux ]
+  rtlsdr:                                       [ x86_64-darwin, aarch64-darwin ]
+  rubberband:                                   [ x86_64-darwin, aarch64-darwin ]
   sbv:                                          [ aarch64-linux ]
   scat:                                         [ aarch64-linux, armv7l-linux ] # uses scrypt, which requries x86
   scrypt:                                       [ aarch64-linux, armv7l-linux ] # https://github.com/informatikr/scrypt/issues/8
-  sdl2-mixer:                                   [ x86_64-darwin ]
-  sdl2-ttf:                                     [ x86_64-darwin ]
-  synthesizer-alsa:                             [ x86_64-darwin ]
-  taffybar:                                     [ x86_64-darwin ]
-  termonad:                                     [ x86_64-darwin ]
-  tokyotyrant-haskell:                          [ x86_64-darwin ]
-  udev:                                         [ x86_64-darwin ]
-  Unixutils-shadow:                             [ x86_64-darwin ]
+  sdl2-mixer:                                   [ x86_64-darwin, aarch64-darwin ]
+  sdl2-ttf:                                     [ x86_64-darwin, aarch64-darwin ]
+  synthesizer-alsa:                             [ x86_64-darwin, aarch64-darwin ]
+  taffybar:                                     [ x86_64-darwin, aarch64-darwin ]
+  termonad:                                     [ x86_64-darwin, aarch64-darwin ]
+  tokyotyrant-haskell:                          [ x86_64-darwin, aarch64-darwin ]
+  udev:                                         [ x86_64-darwin, aarch64-darwin ]
+  Unixutils-shadow:                             [ x86_64-darwin, aarch64-darwin ]
   verifiable-expressions:                       [ aarch64-linux ]
-  vrpn:                                         [ x86_64-darwin ]
-  vulkan:                                       [ i686-linux, armv7l-linux, x86_64-darwin ]
-  VulkanMemoryAllocator:                        [ i686-linux, armv7l-linux, x86_64-darwin ]
-  vulkan-utils:                                 [ x86_64-darwin ]
-  webkit2gtk3-javascriptcore:                   [ x86_64-darwin ]
-  Win32-console:                                [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32-dhcp-server:                            [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32-errors:                                 [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32-extras:                                 [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32:                                        [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32-junction-point:                         [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32-notify:                                 [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32-security:                               [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32-services:                               [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  Win32-services-wrapper:                       [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  xattr:                                        [ x86_64-darwin ]
+  vrpn:                                         [ x86_64-darwin, aarch64-darwin ]
+  vulkan:                                       [ i686-linux, armv7l-linux, x86_64-darwin, aarch64-darwin ]
+  VulkanMemoryAllocator:                        [ i686-linux, armv7l-linux, x86_64-darwin, aarch64-darwin ]
+  vulkan-utils:                                 [ x86_64-darwin, aarch64-darwin ]
+  webkit2gtk3-javascriptcore:                   [ x86_64-darwin, aarch64-darwin ]
+  Win32-console:                                [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  Win32-dhcp-server:                            [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  Win32-errors:                                 [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  Win32-extras:                                 [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  Win32:                                        [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  Win32-junction-point:                         [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  Win32-notify:                                 [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  Win32-security:                               [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  Win32-services:                               [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  Win32-services-wrapper:                       [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  xattr:                                        [ x86_64-darwin, aarch64-darwin ]
   xgboost-haskell:                              [ aarch64-linux, armv7l-linux ]
-  XInput:                                       [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-linux, armv7l-linux ]
-  xmobar:                                       [ x86_64-darwin ]
-  xmonad-extras:                                [ x86_64-darwin ]
-  xmonad-volume:                                [ x86_64-darwin ]
+  XInput:                                       [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
+  xmobar:                                       [ x86_64-darwin, aarch64-darwin ]
+  xmonad-extras:                                [ x86_64-darwin, aarch64-darwin ]
+  xmonad-volume:                                [ x86_64-darwin, aarch64-darwin ]
 
 dont-distribute-packages:
   # Depends on shine, which is a ghcjs project.
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml
index 5d19b843901..cb8c927bad3 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml
@@ -1,4 +1,4 @@
-# Stackage LTS 18.5
+# Stackage LTS 18.7
 # This file is auto-generated by
 # maintainers/scripts/haskell/update-stackage.sh
 default-package-overrides:
@@ -11,8 +11,8 @@ default-package-overrides:
   - ad ==4.4.1
   - adjunctions ==4.4
   - adler32 ==0.1.2.0
-  - aern2-mp ==0.2.7.0
-  - aern2-real ==0.2.7.0
+  - aern2-mp ==0.2.8.0
+  - aern2-real ==0.2.8.0
   - aeson ==1.5.6.0
   - aeson-attoparsec ==0.0.0
   - aeson-better-errors ==0.9.1.0
@@ -145,7 +145,7 @@ default-package-overrides:
   - ansi-terminal ==0.11
   - ansi-wl-pprint ==0.6.9
   - ANum ==0.2.0.2
-  - apecs ==0.9.2
+  - apecs ==0.9.3
   - apecs-gloss ==0.2.4
   - apecs-physics ==0.4.5
   - api-field-json-th ==0.1.0.2
@@ -269,7 +269,7 @@ default-package-overrides:
   - blake2 ==0.3.0
   - blanks ==0.5.0
   - blas-carray ==0.1.0.1
-  - blas-comfort-array ==0.0.0.2
+  - blas-comfort-array ==0.0.0.3
   - blas-ffi ==0.1
   - blaze-bootstrap ==0.1.0.1
   - blaze-builder ==0.4.2.1
@@ -288,7 +288,7 @@ default-package-overrides:
   - boots ==0.2.0.1
   - bordacount ==0.1.0.0
   - boring ==0.2
-  - both ==0.1.1.1
+  - both ==0.1.1.2
   - bound ==2.0.3
   - BoundedChan ==1.0.3.0
   - bounded-queue ==1.0.0
@@ -311,7 +311,7 @@ default-package-overrides:
   - bv ==0.5
   - bv-little ==1.1.1
   - byteable ==0.1.1
-  - byte-count-reader ==0.10.1.3
+  - byte-count-reader ==0.10.1.5
   - bytedump ==1.0
   - byte-order ==0.1.2.0
   - byteorder ==1.0.4
@@ -331,13 +331,15 @@ default-package-overrides:
   - c2hs ==0.28.8
   - cabal2spec ==2.6.2
   - cabal-appimage ==0.3.0.2
+  - cabal-clean ==0.1.20210815
   - cabal-debian ==5.1
   - cabal-doctest ==1.0.8
   - cabal-file ==0.1.1
   - cabal-flatpak ==0.1.0.2
   - cabal-plan ==0.7.2.0
-  - cabal-rpm ==2.0.9
+  - cabal-rpm ==2.0.10
   - cache ==0.1.3.0
+  - cached-json-file ==0.1.0
   - cacophony ==0.10.1
   - calendar-recycling ==0.0.0.1
   - call-stack ==0.3.0
@@ -381,7 +383,7 @@ default-package-overrides:
   - cheapskate-lucid ==0.1.0.0
   - checkers ==0.5.6
   - checksum ==0.0
-  - chimera ==0.3.1.0
+  - chimera ==0.3.2.0
   - chiphunk ==0.1.4.0
   - choice ==0.2.2
   - chronologique ==0.3.1.3
@@ -395,9 +397,9 @@ default-package-overrides:
   - circle-packing ==0.1.0.6
   - circular ==0.4.0.0
   - citeproc ==0.4.0.1
-  - clash-ghc ==1.4.2
-  - clash-lib ==1.4.2
-  - clash-prelude ==1.4.2
+  - clash-ghc ==1.4.3
+  - clash-lib ==1.4.3
+  - clash-prelude ==1.4.3
   - classy-prelude ==1.5.0
   - classy-prelude-conduit ==1.5.0
   - clay ==0.13.3
@@ -415,7 +417,7 @@ default-package-overrides:
   - codec-beam ==0.2.0
   - code-page ==0.2.1
   - collect-errors ==0.1.5.0
-  - co-log-concurrent ==0.5.0.0
+  - co-log-concurrent ==0.5.1.0
   - co-log-core ==0.2.1.1
   - Color ==0.3.2
   - colorful-monoids ==0.2.1.3
@@ -439,7 +441,7 @@ default-package-overrides:
   - composition ==1.0.2.2
   - composition-extra ==2.0.0
   - concise ==0.1.0.1
-  - concurrency ==1.11.0.1
+  - concurrency ==1.11.0.2
   - concurrent-extra ==0.7.0.12
   - concurrent-output ==1.10.12
   - concurrent-split ==0.0.1.1
@@ -579,7 +581,7 @@ default-package-overrides:
   - deepseq-generics ==0.2.0.0
   - deepseq-instances ==0.1.0.1
   - deferred-folds ==0.9.17
-  - dejafu ==2.4.0.2
+  - dejafu ==2.4.0.3
   - dense-linear-algebra ==0.1.0.0
   - dependent-map ==0.4.0.0
   - dependent-sum ==0.7.1.0
@@ -743,7 +745,7 @@ default-package-overrides:
   - fakefs ==0.3.0.2
   - fakepull ==0.3.0.2
   - faktory ==1.0.3.1
-  - fast-digits ==0.3.0.0
+  - fast-digits ==0.3.1.0
   - fast-logger ==3.0.5
   - fast-math ==1.0.2
   - fb ==2.1.1
@@ -759,7 +761,7 @@ default-package-overrides:
   - file-embed-lzma ==0
   - filelock ==0.1.1.5
   - filemanip ==0.3.6.3
-  - filepath-bytestring ==1.4.2.1.7
+  - filepath-bytestring ==1.4.2.1.8
   - file-path-th ==0.1.0.0
   - filepattern ==0.1.2
   - fileplow ==0.1.0.0
@@ -890,9 +892,9 @@ default-package-overrides:
   - ghcid ==0.8.7
   - ghci-hexcalc ==0.1.1.0
   - ghcjs-codemirror ==0.0.0.2
-  - ghc-lib ==8.10.5.20210606
-  - ghc-lib-parser ==8.10.5.20210606
-  - ghc-lib-parser-ex ==8.10.0.21
+  - ghc-lib ==8.10.6.20210814
+  - ghc-lib-parser ==8.10.6.20210814
+  - ghc-lib-parser-ex ==8.10.0.22
   - ghc-parser ==0.2.3.0
   - ghc-paths ==0.1.0.12
   - ghc-prof ==1.4.1.9
@@ -985,7 +987,7 @@ default-package-overrides:
   - hashing ==0.1.0.1
   - hashmap ==1.3.3
   - hashtables ==1.2.4.1
-  - haskeline ==0.8.1.2
+  - haskeline ==0.8.2
   - haskell-awk ==1.2.0.1
   - haskell-gi ==0.25.0
   - haskell-gi-base ==0.25.0
@@ -1081,7 +1083,7 @@ default-package-overrides:
   - hourglass-orphans ==0.1.0.0
   - hp2pretty ==0.10
   - hpack ==0.34.4
-  - hpack-dhall ==0.5.2
+  - hpack-dhall ==0.5.3
   - hpc-codecov ==0.3.0.0
   - hpc-lcov ==1.0.1
   - hprotoc ==2.4.17
@@ -1134,7 +1136,7 @@ default-package-overrides:
   - hs-php-session ==0.0.9.3
   - hsshellscript ==3.5.0
   - hs-tags ==0.1.5
-  - HStringTemplate ==0.8.7
+  - HStringTemplate ==0.8.8
   - HSvm ==0.1.1.3.22
   - HsYAML ==0.2.1.0
   - HsYAML-aeson ==0.2.0.0
@@ -1142,7 +1144,7 @@ default-package-overrides:
   - htaglib ==1.2.0
   - HTF ==0.14.0.6
   - html ==1.0.1.2
-  - html-conduit ==1.3.2.1
+  - html-conduit ==1.3.2.2
   - html-entities ==1.1.4.5
   - html-entity-map ==0.1.0.0
   - htoml ==1.0.0.3
@@ -1168,7 +1170,7 @@ default-package-overrides:
   - human-readable-duration ==0.2.1.4
   - HUnit ==1.6.2.0
   - HUnit-approx ==1.1.1.1
-  - hunit-dejafu ==2.0.0.4
+  - hunit-dejafu ==2.0.0.5
   - hvect ==0.4.0.0
   - hvega ==0.11.0.1
   - hw-balancedparens ==0.4.1.1
@@ -1255,7 +1257,7 @@ default-package-overrides:
   - intern ==0.9.4
   - interpolate ==0.2.1
   - interpolatedstring-perl6 ==1.0.2
-  - interpolation ==0.1.1.1
+  - interpolation ==0.1.1.2
   - interpolator ==1.1.0.2
   - IntervalMap ==0.6.1.2
   - intervals ==0.9.2
@@ -1278,9 +1280,9 @@ default-package-overrides:
   - ipynb ==0.1.0.1
   - ipython-kernel ==0.10.2.1
   - irc ==0.6.1.0
-  - irc-client ==1.1.2.1
-  - irc-conduit ==0.3.0.4
-  - irc-ctcp ==0.1.3.0
+  - irc-client ==1.1.2.2
+  - irc-conduit ==0.3.0.5
+  - irc-ctcp ==0.1.3.1
   - isbn ==1.1.0.2
   - islink ==0.1.0.0
   - iso3166-country-codes ==0.20140203.8
@@ -1294,6 +1296,7 @@ default-package-overrides:
   - ix-shapable ==0.1.0
   - jack ==0.7.2
   - jalaali ==1.0.0.0
+  - java-adt ==0.2018.11.4
   - jira-wiki-markup ==1.4.0
   - jose ==0.8.4
   - jose-jwt ==0.9.2
@@ -1335,14 +1338,14 @@ default-package-overrides:
   - l10n ==0.1.0.1
   - labels ==0.3.3
   - lackey ==1.0.15
-  - lambdabot-core ==5.3.0.1
+  - lambdabot-core ==5.3.0.2
   - LambdaHack ==0.10.2.0
   - lame ==0.2.0
   - language-avro ==0.1.3.1
   - language-bash ==0.9.2
   - language-c ==0.9.0.1
   - language-c-quote ==0.13
-  - language-docker ==10.0.1
+  - language-docker ==10.0.2
   - language-java ==0.2.9
   - language-javascript ==0.7.1.0
   - language-protobuf ==1.0.1
@@ -1350,7 +1353,7 @@ default-package-overrides:
   - language-thrift ==0.12.0.0
   - lapack ==0.3.2
   - lapack-carray ==0.0.3
-  - lapack-comfort-array ==0.0.0.1
+  - lapack-comfort-array ==0.0.1
   - lapack-ffi ==0.0.3
   - lapack-ffi-tools ==0.1.2.1
   - largeword ==1.2.5
@@ -1510,7 +1513,7 @@ default-package-overrides:
   - min-max-pqueue ==0.1.0.2
   - mintty ==0.1.2
   - missing-foreign ==0.1.1
-  - mixed-types-num ==0.5.8.0
+  - mixed-types-num ==0.5.9.1
   - mltool ==0.2.0.1
   - mmap ==0.5.9
   - mmark ==0.0.7.2
@@ -1526,9 +1529,9 @@ default-package-overrides:
   - modern-uri ==0.3.4.1
   - modular ==0.1.0.8
   - monad-chronicle ==1.0.0.1
-  - monad-control ==1.0.3
+  - monad-control ==1.0.3.1
   - monad-control-aligned ==0.0.1.1
-  - monad-coroutine ==0.9.1.2
+  - monad-coroutine ==0.9.1.3
   - monad-extras ==0.6.0
   - monadic-arrays ==0.2.2
   - monad-journal ==0.8.1
@@ -1541,7 +1544,7 @@ default-package-overrides:
   - monad-memo ==0.5.3
   - monad-metrics ==0.2.2.0
   - monad-par ==0.3.5
-  - monad-parallel ==0.7.2.4
+  - monad-parallel ==0.7.2.5
   - monad-par-extras ==0.3.3
   - monad-peel ==0.2.1.2
   - monad-primitive ==0.1
@@ -1586,7 +1589,7 @@ default-package-overrides:
   - mustache ==2.3.1
   - mutable-containers ==0.3.4
   - mwc-probability ==2.3.1
-  - mwc-random ==0.15.0.1
+  - mwc-random ==0.15.0.2
   - mwc-random-monad ==0.7.3.1
   - mx-state-codes ==1.0.0.0
   - mysql ==0.2.0.1
@@ -1604,7 +1607,7 @@ default-package-overrides:
   - neat-interpolation ==0.5.1.2
   - netcode-io ==0.0.2
   - netlib-carray ==0.1
-  - netlib-comfort-array ==0.0.0.1
+  - netlib-comfort-array ==0.0.0.2
   - netlib-ffi ==0.1.1
   - net-mqtt ==0.7.1.1
   - net-mqtt-lens ==0.1.1.0
@@ -1674,7 +1677,7 @@ default-package-overrides:
   - OneTuple ==0.2.2.1
   - Only ==0.1
   - oo-prototypes ==0.1.0.0
-  - opaleye ==0.7.3.0
+  - opaleye ==0.7.4.0
   - OpenAL ==1.7.0.5
   - openapi3 ==3.1.0
   - open-browser ==0.2.1.0
@@ -1803,6 +1806,7 @@ default-package-overrides:
   - pointedlist ==0.6.1
   - pointless-fun ==1.1.0.6
   - poll ==0.0.0.2
+  - polling-cache ==0.1.1.0
   - poly ==0.5.0.0
   - poly-arity ==0.1.0
   - polynomials-bernstein ==1.1.2
@@ -1844,7 +1848,7 @@ default-package-overrides:
   - pretty-sop ==0.2.0.3
   - pretty-terminal ==0.1.0.0
   - primes ==0.2.1.0
-  - primitive ==0.7.1.0
+  - primitive ==0.7.2.0
   - primitive-addr ==0.1.0.2
   - primitive-extras ==0.10.1
   - primitive-unaligned ==0.1.1.1
@@ -1971,6 +1975,7 @@ default-package-overrides:
   - regex-pcre ==0.95.0.0
   - regex-pcre-builtin ==0.95.2.3.8.43
   - regex-posix ==0.96.0.1
+  - regex-posix-clib ==2.7
   - regex-tdfa ==1.3.1.1
   - regex-with-pcre ==1.1.0.0
   - registry ==0.2.0.3
@@ -1983,17 +1988,17 @@ default-package-overrides:
   - reliable-io ==0.0.1
   - relude ==0.7.0.0
   - renderable ==0.2.0.1
-  - replace-attoparsec ==1.4.4.0
+  - replace-attoparsec ==1.4.5.0
   - replace-megaparsec ==1.4.4.0
   - repline ==0.4.0.0
   - req ==3.9.0
-  - req-conduit ==1.0.0
+  - req-conduit ==1.0.1
   - rerebase ==1.13.0.1
   - rescue ==0.4.2.1
   - resistor-cube ==0.0.1.2
   - resolv ==0.1.2.0
   - resource-pool ==0.2.3.2
-  - resourcet ==1.2.4.2
+  - resourcet ==1.2.4.3
   - result ==0.2.6.0
   - rethinkdb-client-driver ==0.0.25
   - retry ==0.8.1.2
@@ -2004,7 +2009,7 @@ default-package-overrides:
   - rhine ==0.7.0
   - rhine-gloss ==0.7.0
   - rigel-viz ==0.2.0.0
-  - rio ==0.1.20.0
+  - rio ==0.1.21.0
   - rio-orphans ==0.1.2.0
   - rio-prettyprint ==0.1.1.0
   - roc-id ==0.1.0.0
@@ -2158,6 +2163,7 @@ default-package-overrides:
   - singletons ==2.7
   - singletons-presburger ==0.6.0.0
   - siphash ==1.0.3
+  - Sit ==0.2021.1.18
   - sitemap-gen ==0.1.0.0
   - sized ==1.0.0.0
   - skein ==1.0.9.4
@@ -2239,7 +2245,7 @@ default-package-overrides:
   - storable-record ==0.0.5
   - storable-tuple ==0.0.3.3
   - storablevector ==0.2.13.1
-  - store ==0.7.11
+  - store ==0.7.12
   - store-core ==0.4.4.4
   - store-streaming ==0.2.0.3
   - stratosphere ==0.59.1
@@ -2315,7 +2321,7 @@ default-package-overrides:
   - tasty ==1.4.1
   - tasty-ant-xml ==1.1.8
   - tasty-bench ==0.2.5
-  - tasty-dejafu ==2.0.0.7
+  - tasty-dejafu ==2.0.0.8
   - tasty-discover ==4.2.2
   - tasty-expected-failure ==0.12.3
   - tasty-focus ==1.0.1
@@ -2356,7 +2362,7 @@ default-package-overrides:
   - test-framework-smallcheck ==0.2
   - test-fun ==0.1.0.0
   - testing-type-modifiers ==0.1.0.1
-  - texmath ==0.12.3
+  - texmath ==0.12.3.1
   - text-ansi ==0.1.1
   - text-binary ==0.2.1.1
   - text-builder ==0.6.6.2
@@ -2427,7 +2433,7 @@ default-package-overrides:
   - timezone-series ==0.1.9
   - tinylog ==0.15.0
   - titlecase ==1.0.1
-  - tldr ==0.9.0
+  - tldr ==0.9.1
   - tls ==1.5.5
   - tls-debug ==0.4.8
   - tls-session-manager ==0.0.4
@@ -2441,7 +2447,7 @@ default-package-overrides:
   - torsor ==0.1
   - tostring ==0.2.1.1
   - transaction ==0.1.1.3
-  - transformers-base ==0.4.5.2
+  - transformers-base ==0.4.6
   - transformers-bifunctors ==0.1
   - transformers-compat ==0.6.6
   - transformers-fix ==1.0
@@ -2463,11 +2469,11 @@ default-package-overrides:
   - turtle ==1.5.22
   - typecheck-plugin-nat-simple ==0.1.0.2
   - TypeCompose ==0.9.14
-  - typed-process ==0.2.6.0
+  - typed-process ==0.2.6.1
   - typed-uuid ==0.1.0.0
   - type-equality ==1
   - type-errors ==0.2.0.0
-  - type-errors-pretty ==0.0.1.1
+  - type-errors-pretty ==0.0.1.2
   - type-hint ==0.1
   - type-level-integers ==0.0.1
   - type-level-kv-list ==1.1.0
@@ -2593,7 +2599,7 @@ default-package-overrides:
   - wai-feature-flags ==0.1.0.1
   - wai-handler-launch ==3.0.3.1
   - wai-logger ==2.3.6
-  - wai-middleware-auth ==0.2.5.0
+  - wai-middleware-auth ==0.2.5.1
   - wai-middleware-caching ==0.1.0.2
   - wai-middleware-clacks ==0.1.0.1
   - wai-middleware-prometheus ==1.0.0
@@ -2649,7 +2655,7 @@ default-package-overrides:
   - writer-cps-transformers ==0.5.6.1
   - wss-client ==0.3.0.0
   - wuss ==1.1.18
-  - X11 ==1.10
+  - X11 ==1.10.1
   - X11-xft ==0.3.1
   - x11-xim ==0.0.9.0
   - x509 ==1.7.5
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
index b0548975db7..d44ef0dafcc 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
@@ -391,7 +391,6 @@ dont-distribute-packages:
  - adict
  - adp-multi-monadiccp
  - aern2-real
- - aern2-real_0_2_8_0
  - aeson-native
  - afv
  - agda-server
@@ -712,14 +711,14 @@ dont-distribute-packages:
  - claferwiki
  - clash
  - clash-ghc
- - clash-ghc_1_4_3
  - clash-lib
- - clash-lib_1_4_3
  - clash-multisignal
  - clash-prelude-quickcheck
+ - clash-shake
  - clash-systemverilog
  - clash-verilog
  - clash-vhdl
+ - clashilator
  - classify-frog
  - classy-miso
  - clckwrks
@@ -1063,7 +1062,6 @@ dont-distribute-packages:
  - falling-turnip
  - fallingblocks
  - family-tree
- - fast-digits
  - fastirc
  - fault-tree
  - fbrnch
@@ -1131,6 +1129,7 @@ dont-distribute-packages:
  - fplll
  - fpnla-examples
  - frame-markdown
+ - freckle-app
  - free-theorems-counterexamples
  - free-theorems-seq
  - free-theorems-seq-webui
@@ -1855,7 +1854,6 @@ dont-distribute-packages:
  - knots
  - korfu
  - ks-test
- - kubernetes-client
  - kurita
  - laborantin-hs
  - labsat
@@ -1895,7 +1893,6 @@ dont-distribute-packages:
  - lapack
  - lapack-carray
  - lapack-comfort-array
- - lapack-comfort-array_0_0_1
  - lapack-hmatrix
  - lapack_0_4
  - lat
@@ -2006,7 +2003,6 @@ dont-distribute-packages:
  - loup
  - ls-usb
  - lsystem
- - lti13
  - luachunk
  - lucid-colonnade
  - lucienne
@@ -2064,7 +2060,6 @@ dont-distribute-packages:
  - maxent
  - maxent-learner-hw-gui
  - maxsharing
- - mcmc
  - mcmc-samplers
  - mealy
  - mediabus-fdk-aac
@@ -2114,7 +2109,6 @@ dont-distribute-packages:
  - monetdb-mapi
  - mongrel2-handler
  - monky
- - monomer
  - monte-carlo
  - moo
  - moo-nad
@@ -2172,7 +2166,6 @@ dont-distribute-packages:
  - mywatch
  - n2o-web
  - nakadi-client
- - nanovg-simple
  - nats-queue
  - natural-number
  - nemesis-titan
@@ -2591,6 +2584,8 @@ dont-distribute-packages:
  - restful-snap
  - restricted-workers
  - rethinkdb-model
+ - retroclash-lib
+ - retroclash-sim
  - rewrite
  - rewriting
  - rezoom
@@ -3270,7 +3265,6 @@ dont-distribute-packages:
  - yeshql
  - yesod-articles
  - yesod-auth-ldap
- - yesod-auth-lti13
  - yesod-colonnade
  - yesod-continuations
  - yesod-examples
diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix
index 97a751a2e43..3553b4fe6a1 100644
--- a/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/pkgs/development/haskell-modules/configuration-nix.nix
@@ -223,7 +223,11 @@ self: super: builtins.intersectAttrs super {
   wxcore = super.wxcore.override { wxGTK = pkgs.wxGTK30; };
 
   # Test suite wants to connect to $DISPLAY.
+  bindings-GLFW = dontCheck super.bindings-GLFW;
+  gi-gtk-declarative = dontCheck super.gi-gtk-declarative;
+  gi-gtk-declarative-app-simple = dontCheck super.gi-gtk-declarative-app-simple;
   hsqml = dontCheck (addExtraLibraries (super.hsqml.override { qt5 = pkgs.qt5Full; }) [pkgs.libGLU pkgs.libGL]);
+  monomer = dontCheck super.monomer;
 
   # Wants to check against a real DB, Needs freetds
   odbc = dontCheck (addExtraLibraries super.odbc [ pkgs.freetds ]);
@@ -352,13 +356,6 @@ self: super: builtins.intersectAttrs super {
   # Looks like Avahi provides the missing library
   dnssd = super.dnssd.override { dns_sd = pkgs.avahi.override { withLibdnssdCompat = true; }; };
 
-  # requires an X11 display
-  bindings-GLFW = dontCheck super.bindings-GLFW;
-
-  # requires an X11 display in test suite
-  gi-gtk-declarative = dontCheck super.gi-gtk-declarative;
-  gi-gtk-declarative-app-simple = dontCheck super.gi-gtk-declarative-app-simple;
-
   # tests depend on executable
   ghcide = overrideCabal super.ghcide (drv: {
     preCheck = ''export PATH="$PWD/dist/build/ghcide:$PATH"'';
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index 2125e9341f0..22c4b4143c8 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -8804,7 +8804,7 @@ self: {
      }) {};
 
   "HMock" = callPackage
-    ({ mkDerivation, base, constraints, containers, data-default
+    ({ mkDerivation, array, base, constraints, containers, data-default
      , deepseq, directory, doctest-exitcode-stdio, doctest-lib
      , exceptions, extra, hspec, monad-control, mono-traversable, mtl
      , QuickCheck, regex-tdfa, stm, syb, template-haskell
@@ -8812,10 +8812,10 @@ self: {
      }:
      mkDerivation {
        pname = "HMock";
-       version = "0.3.0.0";
-       sha256 = "0rvb3a0nbf8i0qfg7na5rvd966amids07l8w8ka6b7hdw46lkczn";
+       version = "0.4.0.0";
+       sha256 = "1xkb4qyccpp5iws0jysgmcypbcab8yig6hnc756890z1dz5d1vy5";
        libraryHaskellDepends = [
-         base constraints containers data-default exceptions extra
+         array base constraints containers data-default exceptions extra
          monad-control mono-traversable mtl regex-tdfa stm syb
          template-haskell transformers-base unliftio
        ];
@@ -9041,7 +9041,9 @@ self: {
        benchmarkHaskellDepends = [ base gauge ];
        description = "quantitative finance library";
        license = lib.licenses.mit;
-       platforms = [ "i686-linux" "x86_64-darwin" "x86_64-linux" ];
+       platforms = [
+         "aarch64-darwin" "i686-linux" "x86_64-darwin" "x86_64-linux"
+       ];
      }) {inherit (pkgs) gsl;};
 
   "HROOT" = callPackage
@@ -9329,26 +9331,6 @@ self: {
 
   "HStringTemplate" = callPackage
     ({ mkDerivation, array, base, blaze-builder, bytestring, containers
-     , deepseq, directory, filepath, mtl, old-locale, parsec, pretty
-     , semigroups, syb, template-haskell, text, time, void
-     }:
-     mkDerivation {
-       pname = "HStringTemplate";
-       version = "0.8.7";
-       sha256 = "03kbmyh0713j3qhhrl7jqbmsvyq1q82h2yxq45cc9rs55sma8kjg";
-       revision = "2";
-       editedCabalFile = "082d1lm6q1jb7rrl20jz0y4ca1qf87ihbq3v6mji9ibacl6adjaq";
-       libraryHaskellDepends = [
-         array base blaze-builder bytestring containers deepseq directory
-         filepath mtl old-locale parsec pretty semigroups syb
-         template-haskell text time void
-       ];
-       description = "StringTemplate implementation in Haskell";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "HStringTemplate_0_8_8" = callPackage
-    ({ mkDerivation, array, base, blaze-builder, bytestring, containers
      , deepseq, directory, filepath, HUnit, mtl, old-locale, parsec
      , pretty, QuickCheck, random, semigroups, syb, template-haskell
      , text, time, void
@@ -9365,7 +9347,6 @@ self: {
        testHaskellDepends = [ base containers HUnit QuickCheck random ];
        description = "StringTemplate implementation in Haskell";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "HStringTemplateHelpers" = callPackage
@@ -17794,6 +17775,23 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "STMonadTrans_0_4_6" = callPackage
+    ({ mkDerivation, array, base, mtl, tasty, tasty-hunit
+     , tasty-quickcheck, transformers
+     }:
+     mkDerivation {
+       pname = "STMonadTrans";
+       version = "0.4.6";
+       sha256 = "0rvhh0hhwz601ibpzisry7xf3j61r5sxfgp47imaa37i5bvrlynb";
+       libraryHaskellDepends = [ array base mtl ];
+       testHaskellDepends = [
+         array base tasty tasty-hunit tasty-quickcheck transformers
+       ];
+       description = "A monad transformer version of the ST monad";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "SVD2HS" = callPackage
     ({ mkDerivation, base, containers, pretty, text, xml-conduit
      , xml-lens
@@ -17839,6 +17837,8 @@ self: {
        pname = "SVGFonts";
        version = "1.7.0.1";
        sha256 = "06vnpkkr19s9b1wjp7l2w29vr7fsghcrffd2knlxvdhjacrfpc9h";
+       revision = "1";
+       editedCabalFile = "110zlafis1rivba3za7in92fq6a7738hh57w5gkivi50d7pfbw24";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          attoparsec base blaze-markup blaze-svg bytestring cereal
@@ -21502,24 +21502,6 @@ self: {
      }:
      mkDerivation {
        pname = "X11";
-       version = "1.10";
-       sha256 = "1zrdqryx99izjvsrsalb65ihpmikm9r6cjlci7cfp6wlwa3i585n";
-       libraryHaskellDepends = [ base data-default-class ];
-       librarySystemDepends = [
-         libX11 libXext libXinerama libXrandr libXrender libXScrnSaver
-       ];
-       description = "A binding to the X11 graphics library";
-       license = lib.licenses.bsd3;
-     }) {inherit (pkgs.xorg) libX11; inherit (pkgs.xorg) libXScrnSaver; 
-         inherit (pkgs.xorg) libXext; inherit (pkgs.xorg) libXinerama; 
-         inherit (pkgs.xorg) libXrandr; inherit (pkgs.xorg) libXrender;};
-
-  "X11_1_10_1" = callPackage
-    ({ mkDerivation, base, data-default-class, libX11, libXext
-     , libXinerama, libXrandr, libXrender, libXScrnSaver
-     }:
-     mkDerivation {
-       pname = "X11";
        version = "1.10.1";
        sha256 = "13a0qf8rwn1s43wcl39f1pcq3h1kw1ddfq205j1ry0j3yafnazxg";
        libraryHaskellDepends = [ base data-default-class ];
@@ -21528,7 +21510,6 @@ self: {
        ];
        description = "A binding to the X11 graphics library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs.xorg) libX11; inherit (pkgs.xorg) libXScrnSaver; 
          inherit (pkgs.xorg) libXext; inherit (pkgs.xorg) libXinerama; 
          inherit (pkgs.xorg) libXrandr; inherit (pkgs.xorg) libXrender;};
@@ -24376,29 +24357,6 @@ self: {
      }:
      mkDerivation {
        pname = "aern2-mp";
-       version = "0.2.7.0";
-       sha256 = "1gsqaggg6mpcpl9s3z566gmbynj4l6n1fhni5b0p8pf5hj8n93gg";
-       libraryHaskellDepends = [
-         base cdar-mBound collect-errors deepseq hspec integer-logarithms
-         mixed-types-num QuickCheck reflection regex-tdfa template-haskell
-       ];
-       testHaskellDepends = [
-         base cdar-mBound collect-errors deepseq hspec integer-logarithms
-         mixed-types-num QuickCheck reflection regex-tdfa template-haskell
-       ];
-       description = "Multi-precision ball (interval) arithmetic";
-       license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {};
-
-  "aern2-mp_0_2_8_0" = callPackage
-    ({ mkDerivation, base, cdar-mBound, collect-errors, deepseq, hspec
-     , integer-logarithms, mixed-types-num, QuickCheck, reflection
-     , regex-tdfa, template-haskell
-     }:
-     mkDerivation {
-       pname = "aern2-mp";
        version = "0.2.8.0";
        sha256 = "0nfd2r05jm93idsgijccxzqkkpjkpkn8jz3kqwanlma0x3wj02cj";
        libraryHaskellDepends = [
@@ -24421,27 +24379,6 @@ self: {
      }:
      mkDerivation {
        pname = "aern2-real";
-       version = "0.2.7.0";
-       sha256 = "0dsph1775rifr9vvx4w7v55bryqmh04fhk6nyk7d91yhn1sf6wc9";
-       libraryHaskellDepends = [
-         aern2-mp base collect-errors hspec integer-logarithms
-         mixed-types-num QuickCheck
-       ];
-       testHaskellDepends = [
-         aern2-mp base collect-errors hspec integer-logarithms
-         mixed-types-num QuickCheck
-       ];
-       description = "Real numbers as sequences of MPBalls";
-       license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-     }) {};
-
-  "aern2-real_0_2_8_0" = callPackage
-    ({ mkDerivation, aern2-mp, base, collect-errors, hspec
-     , integer-logarithms, mixed-types-num, QuickCheck
-     }:
-     mkDerivation {
-       pname = "aern2-real";
        version = "0.2.8.0";
        sha256 = "13nk4s5r7h7wg4q0x01f8aiy432zngynd5qbqsqi9fz149k7mik1";
        libraryHaskellDepends = [
@@ -31165,23 +31102,6 @@ self: {
      }:
      mkDerivation {
        pname = "apecs";
-       version = "0.9.2";
-       sha256 = "1ca9wpp60jslj63q77v55qql46f20jknfqsz7cjmqns41ml5g3q8";
-       libraryHaskellDepends = [
-         array base containers exceptions mtl template-haskell vector
-       ];
-       testHaskellDepends = [ base containers linear QuickCheck vector ];
-       benchmarkHaskellDepends = [ base criterion linear ];
-       description = "Fast Entity-Component-System library for game programming";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "apecs_0_9_3" = callPackage
-    ({ mkDerivation, array, base, containers, criterion, exceptions
-     , linear, mtl, QuickCheck, template-haskell, vector
-     }:
-     mkDerivation {
-       pname = "apecs";
        version = "0.9.3";
        sha256 = "02qi63bj0prvmxi6ksw2cq0b7fvhcdv8fgbsjbv7vf51p4c6rbh7";
        libraryHaskellDepends = [
@@ -31191,7 +31111,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion linear ];
        description = "Fast Entity-Component-System library for game programming";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "apecs-gloss" = callPackage
@@ -38156,7 +38075,7 @@ self: {
        ];
        description = "Create status bar menus for macOS from executables";
        license = lib.licenses.bsd3;
-       platforms = [ "x86_64-darwin" ];
+       platforms = [ "aarch64-darwin" "x86_64-darwin" ];
      }) {};
 
   "barchart" = callPackage
@@ -43844,22 +43763,6 @@ self: {
      }:
      mkDerivation {
        pname = "blas-comfort-array";
-       version = "0.0.0.2";
-       sha256 = "1n9w905ppb08w0d8xbxvgipr9fv1iapwq3ybvk0dbj009w341kd1";
-       libraryHaskellDepends = [
-         base blas-ffi comfort-array netlib-comfort-array netlib-ffi
-         storable-complex transformers
-       ];
-       description = "Auto-generated interface to Fortran BLAS via comfort-array";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "blas-comfort-array_0_0_0_3" = callPackage
-    ({ mkDerivation, base, blas-ffi, comfort-array
-     , netlib-comfort-array, netlib-ffi, storable-complex, transformers
-     }:
-     mkDerivation {
-       pname = "blas-comfort-array";
        version = "0.0.0.3";
        sha256 = "1g0bvag205ag520vlxv24cv63idjg6j8nwnadq9gbcibn4gvsisz";
        libraryHaskellDepends = [
@@ -43868,7 +43771,6 @@ self: {
        ];
        description = "Auto-generated interface to Fortran BLAS via comfort-array";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "blas-ffi" = callPackage
@@ -45552,23 +45454,11 @@ self: {
     ({ mkDerivation, base, semigroups, zero }:
      mkDerivation {
        pname = "both";
-       version = "0.1.1.1";
-       sha256 = "0kdqz901fpdgggmkm9rpnpv7gma9c8d887bszhnz6xd3v96gg7xn";
-       libraryHaskellDepends = [ base semigroups zero ];
-       description = "Like Maybe, but with a different Monoid instance";
-       license = lib.licenses.mit;
-     }) {};
-
-  "both_0_1_1_2" = callPackage
-    ({ mkDerivation, base, semigroups, zero }:
-     mkDerivation {
-       pname = "both";
        version = "0.1.1.2";
        sha256 = "1bf9fvc2ajbwwx31lmmyc1rzp3xzypwb3yjcmbhn6si5xnlbvqhl";
        libraryHaskellDepends = [ base semigroups zero ];
        description = "Like Maybe, but with a different Monoid instance";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "botpp" = callPackage
@@ -47662,21 +47552,6 @@ self: {
      }:
      mkDerivation {
        pname = "byte-count-reader";
-       version = "0.10.1.3";
-       sha256 = "1z02g8mkjwxdrbyxncbvrwg18knyiqa3w9n0x01y2xmbr279rsh0";
-       libraryHaskellDepends = [ base extra parsec parsec-numbers text ];
-       testHaskellDepends = [
-         base extra hspec parsec parsec-numbers text
-       ];
-       description = "Read strings describing a number of bytes like 2Kb and 0.5 MiB";
-       license = lib.licenses.gpl3Only;
-     }) {};
-
-  "byte-count-reader_0_10_1_5" = callPackage
-    ({ mkDerivation, base, extra, hspec, parsec, parsec-numbers, text
-     }:
-     mkDerivation {
-       pname = "byte-count-reader";
        version = "0.10.1.5";
        sha256 = "0iq40gnfw8z1rkri1rpaqx5av1ay45h6518cg0a0m4ypdzf03r0s";
        libraryHaskellDepends = [ base extra parsec parsec-numbers text ];
@@ -47685,7 +47560,6 @@ self: {
        ];
        description = "Read strings describing a number of bytes like 2Kb and 0.5 MiB";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "byte-order" = callPackage
@@ -49601,27 +49475,6 @@ self: {
      }:
      mkDerivation {
        pname = "cabal-rpm";
-       version = "2.0.9";
-       sha256 = "1r6a0dki4wsrmq5xfjb9bkj0dl7cnhwdf46427k71ay90hmc6ncq";
-       isLibrary = false;
-       isExecutable = true;
-       executableHaskellDepends = [
-         base bytestring Cabal directory extra filepath http-client
-         http-client-tls http-conduit optparse-applicative process
-         simple-cabal simple-cmd simple-cmd-args time unix
-       ];
-       description = "RPM packaging tool for Haskell Cabal-based packages";
-       license = lib.licenses.gpl3Only;
-     }) {};
-
-  "cabal-rpm_2_0_10" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, directory, extra
-     , filepath, http-client, http-client-tls, http-conduit
-     , optparse-applicative, process, simple-cabal, simple-cmd
-     , simple-cmd-args, time, unix
-     }:
-     mkDerivation {
-       pname = "cabal-rpm";
        version = "2.0.10";
        sha256 = "028kvvdm8dqjmk16ag8p1mb4d3nfyz1i6x8ijfcr45hrb93hdd77";
        isLibrary = false;
@@ -49633,7 +49486,6 @@ self: {
        ];
        description = "RPM packaging tool for Haskell Cabal-based packages";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "cabal-scripts" = callPackage
@@ -53814,7 +53666,8 @@ self: {
        description = "Character set detection using Mozilla's Universal Character Set Detector";
        license = "LGPL";
        platforms = [
-         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+         "aarch64-darwin" "armv7l-linux" "i686-linux" "x86_64-darwin"
+         "x86_64-linux"
        ];
      }) {};
 
@@ -54391,8 +54244,8 @@ self: {
      }:
      mkDerivation {
        pname = "chessIO";
-       version = "0.9.0.0";
-       sha256 = "0f8dd3w8az8fzidwiv2h6m52fppfp5b9zd0c1s4c815z3a3rxr4v";
+       version = "0.9.1.0";
+       sha256 = "19lkjrqji01kmfjm065xmlxsrwwr0z2vz2cz19wr0bx6sz4hw3zr";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -54491,27 +54344,6 @@ self: {
      }) {};
 
   "chimera" = callPackage
-    ({ mkDerivation, adjunctions, base, distributive, gauge, mtl
-     , QuickCheck, random, tasty, tasty-hunit, tasty-quickcheck
-     , tasty-smallcheck, vector
-     }:
-     mkDerivation {
-       pname = "chimera";
-       version = "0.3.1.0";
-       sha256 = "09dk9x2har2k6apm1wlm2k5k97jf3qxy4rzx94rbfmhs5fhz0i99";
-       libraryHaskellDepends = [
-         adjunctions base distributive mtl vector
-       ];
-       testHaskellDepends = [
-         base QuickCheck tasty tasty-hunit tasty-quickcheck tasty-smallcheck
-         vector
-       ];
-       benchmarkHaskellDepends = [ base gauge mtl random ];
-       description = "Lazy infinite streams with O(1) indexing";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "chimera_0_3_2_0" = callPackage
     ({ mkDerivation, adjunctions, base, distributive, mtl, QuickCheck
      , random, tasty, tasty-bench, tasty-hunit, tasty-quickcheck
      , tasty-smallcheck, vector
@@ -54530,7 +54362,6 @@ self: {
        benchmarkHaskellDepends = [ base mtl random tasty-bench ];
        description = "Lazy infinite streams with O(1) indexing and applications for memoization";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "chiphunk" = callPackage
@@ -55475,8 +55306,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion vector ];
        description = "Circular fixed-sized mutable vectors";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "circus" = callPackage
@@ -55959,37 +55788,6 @@ self: {
      }:
      mkDerivation {
        pname = "clash-ghc";
-       version = "1.4.2";
-       sha256 = "04sj88mcxszgbr8rxnrwa48r2pkf7h612507gcyk131f5kf6mkss";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         array base bifunctors bytestring Cabal clash-lib clash-prelude
-         concurrent-supply containers deepseq directory exceptions extra
-         filepath ghc ghc-boot ghc-prim ghc-typelits-extra
-         ghc-typelits-knownnat ghc-typelits-natnormalise ghci hashable
-         haskeline integer-gmp lens mtl primitive process reflection split
-         template-haskell text time transformers uniplate unix
-         unordered-containers utf8-string vector
-       ];
-       executableHaskellDepends = [ base ];
-       description = "Clash: a functional hardware description language - GHC frontend";
-       license = lib.licenses.bsd2;
-       hydraPlatforms = lib.platforms.none;
-     }) {};
-
-  "clash-ghc_1_4_3" = callPackage
-    ({ mkDerivation, array, base, bifunctors, bytestring, Cabal
-     , clash-lib, clash-prelude, concurrent-supply, containers, deepseq
-     , directory, exceptions, extra, filepath, ghc, ghc-boot, ghc-prim
-     , ghc-typelits-extra, ghc-typelits-knownnat
-     , ghc-typelits-natnormalise, ghci, hashable, haskeline, integer-gmp
-     , lens, mtl, primitive, process, reflection, split
-     , template-haskell, text, time, transformers, uniplate, unix
-     , unordered-containers, utf8-string, vector
-     }:
-     mkDerivation {
-       pname = "clash-ghc";
        version = "1.4.3";
        sha256 = "00ipx45s2qdjv5cj6v3cg7dgwsw3sd8ai3cr1q9n1k6g26dzc3pw";
        isLibrary = true;
@@ -56026,49 +55824,6 @@ self: {
      }:
      mkDerivation {
        pname = "clash-lib";
-       version = "1.4.2";
-       sha256 = "1gismfz0pahhgfgra8kn34i3g82ip5nfy9aj38ym3rcnpg4aw10m";
-       enableSeparateDataOutput = true;
-       libraryHaskellDepends = [
-         aeson aeson-pretty ansi-terminal array attoparsec base
-         base16-bytestring binary bytestring clash-prelude concurrent-supply
-         containers cryptohash-sha256 data-binary-ieee754 data-default
-         deepseq directory dlist errors exceptions extra filepath ghc
-         ghc-boot-th hashable haskell-src-meta hint integer-gmp interpolate
-         lens mtl ordered-containers parsers pretty-show prettyprinter
-         primitive process reducers template-haskell temporary terminal-size
-         text text-show time transformers trifecta unordered-containers
-         utf8-string vector vector-binary-instances
-       ];
-       testHaskellDepends = [
-         aeson aeson-pretty base base16-bytestring bytestring clash-prelude
-         concurrent-supply containers data-default deepseq ghc
-         ghc-typelits-knownnat haskell-src-exts lens pretty-show
-         quickcheck-text tasty tasty-hunit tasty-quickcheck template-haskell
-         text transformers unordered-containers
-       ];
-       description = "Clash: a functional hardware description language - As a library";
-       license = lib.licenses.bsd2;
-       hydraPlatforms = lib.platforms.none;
-     }) {};
-
-  "clash-lib_1_4_3" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, ansi-terminal, array
-     , attoparsec, base, base16-bytestring, binary, bytestring
-     , clash-prelude, concurrent-supply, containers, cryptohash-sha256
-     , data-binary-ieee754, data-default, deepseq, directory, dlist
-     , errors, exceptions, extra, filepath, ghc, ghc-boot-th
-     , ghc-typelits-knownnat, hashable, haskell-src-exts
-     , haskell-src-meta, hint, integer-gmp, interpolate, lens, mtl
-     , ordered-containers, parsers, pretty-show, prettyprinter
-     , primitive, process, quickcheck-text, reducers, tasty, tasty-hunit
-     , tasty-quickcheck, template-haskell, temporary, terminal-size
-     , text, text-show, time, transformers, trifecta
-     , unordered-containers, utf8-string, vector
-     , vector-binary-instances
-     }:
-     mkDerivation {
-       pname = "clash-lib";
        version = "1.4.3";
        sha256 = "0p6sf9wn25i1f0isqskpy35x6qm2ym63x9fpb54kbd1pp9xqgysl";
        enableSeparateDataOutput = true;
@@ -56125,48 +55880,6 @@ self: {
      }:
      mkDerivation {
        pname = "clash-prelude";
-       version = "1.4.2";
-       sha256 = "04hshjdddd9sk697zvbwlq6cdvyvdfrw670ksfdxxgssyrcsid95";
-       setupHaskellDepends = [ base Cabal cabal-doctest ];
-       libraryHaskellDepends = [
-         array arrows base bifunctors binary bytestring constraints
-         containers data-binary-ieee754 data-default-class deepseq ghc-prim
-         ghc-typelits-extra ghc-typelits-knownnat ghc-typelits-natnormalise
-         half hashable integer-gmp interpolate lens QuickCheck
-         recursion-schemes reflection singletons template-haskell text
-         text-show th-abstraction th-lift th-orphans time transformers
-         type-errors uniplate vector
-       ];
-       testHaskellDepends = [
-         base deepseq doctest ghc-typelits-extra ghc-typelits-knownnat
-         ghc-typelits-natnormalise hedgehog hint quickcheck-classes-base
-         tasty tasty-hedgehog tasty-hunit tasty-quickcheck tasty-th
-         template-haskell
-       ];
-       benchmarkHaskellDepends = [
-         base criterion deepseq template-haskell
-       ];
-       description = "Clash: a functional hardware description language - Prelude library";
-       license = lib.licenses.bsd2;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {};
-
-  "clash-prelude_1_4_3" = callPackage
-    ({ mkDerivation, array, arrows, base, bifunctors, binary
-     , bytestring, Cabal, cabal-doctest, constraints, containers
-     , criterion, data-binary-ieee754, data-default-class, deepseq
-     , doctest, ghc-prim, ghc-typelits-extra, ghc-typelits-knownnat
-     , ghc-typelits-natnormalise, half, hashable, hedgehog, hint
-     , integer-gmp, interpolate, lens, QuickCheck
-     , quickcheck-classes-base, recursion-schemes, reflection
-     , singletons, tasty, tasty-hedgehog, tasty-hunit, tasty-quickcheck
-     , tasty-th, template-haskell, text, text-show, th-abstraction
-     , th-lift, th-orphans, time, transformers, type-errors, uniplate
-     , vector
-     }:
-     mkDerivation {
-       pname = "clash-prelude";
        version = "1.4.3";
        sha256 = "07mdl3196yb971hpcbysyaj6vciyrm1p5m9prcymkhkqh7vw9igy";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
@@ -56207,6 +55920,26 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "clash-shake" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, clash-ghc, clash-lib
+     , clash-prelude, directory, ghc-typelits-extra
+     , ghc-typelits-knownnat, ghc-typelits-natnormalise, shake, split
+     , stache, text, unordered-containers
+     }:
+     mkDerivation {
+       pname = "clash-shake";
+       version = "0.1.0";
+       sha256 = "0zjlbi8p0wxaxgfxhljbp9vzhki3ll8g1qqv3gghqkh7cym73kgq";
+       libraryHaskellDepends = [
+         aeson base bytestring clash-ghc clash-lib clash-prelude directory
+         ghc-typelits-extra ghc-typelits-knownnat ghc-typelits-natnormalise
+         shake split stache text unordered-containers
+       ];
+       description = "Shake rules for building Clash programs";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "clash-systemverilog" = callPackage
     ({ mkDerivation, base, clash-lib, clash-prelude, fgl, hashable
      , lens, mtl, text, unordered-containers, wl-pprint-text
@@ -56261,6 +55994,30 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "clashilator" = callPackage
+    ({ mkDerivation, aeson, base, Cabal, clash-ghc, clash-lib
+     , containers, filepath, ghc, lens, optparse-applicative, shake
+     , stache, text, unordered-containers
+     }:
+     mkDerivation {
+       pname = "clashilator";
+       version = "0.1.0";
+       sha256 = "0nlyjhf4vy5ypimdv3ac9qw9aljm2k99y42b2pkhhw84iblv4qgy";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base Cabal clash-ghc clash-lib containers filepath ghc lens
+         optparse-applicative shake stache text unordered-containers
+       ];
+       executableHaskellDepends = [
+         aeson base Cabal clash-ghc clash-lib containers filepath ghc lens
+         optparse-applicative shake stache text unordered-containers
+       ];
+       description = "Automated Clash to Verilator bridge";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "classify" = callPackage
     ({ mkDerivation, base, containers, mtl }:
      mkDerivation {
@@ -58186,23 +57943,11 @@ self: {
     ({ mkDerivation, base, co-log-core, stm }:
      mkDerivation {
        pname = "co-log-concurrent";
-       version = "0.5.0.0";
-       sha256 = "07z4aklk7dc2fhbc30kd9hbdvq71sa4ip6r2pyifcpn3p2pr3mna";
-       libraryHaskellDepends = [ base co-log-core stm ];
-       description = "Asynchronous backend for co-log library";
-       license = lib.licenses.mpl20;
-     }) {};
-
-  "co-log-concurrent_0_5_1_0" = callPackage
-    ({ mkDerivation, base, co-log-core, stm }:
-     mkDerivation {
-       pname = "co-log-concurrent";
        version = "0.5.1.0";
        sha256 = "07qmx9z03vmgq2cgz4352fsav7r1nx8n7svmrhg2lkdiyp0j7a59";
        libraryHaskellDepends = [ base co-log-core stm ];
        description = "Asynchronous backend for co-log library";
        license = lib.licenses.mpl20;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "co-log-core" = callPackage
@@ -58722,10 +58467,8 @@ self: {
     ({ mkDerivation, base, profunctors }:
      mkDerivation {
        pname = "coercible-subtypes";
-       version = "0.1.0.0";
-       sha256 = "1z5fmdgv52x410x2z4gxyac18f98226dymzdvhcvkx7mw2k9q44x";
-       revision = "1";
-       editedCabalFile = "05bd9lp5jp31ac039vq0p58kr03g5ai3cyymc4ikhbnl3x44hx4d";
+       version = "0.1.1.0";
+       sha256 = "1q6a38y49a31vl19i5c5kym36fjxspxj6vfi0b35j4gb9b7r642r";
        libraryHaskellDepends = [ base profunctors ];
        description = "Coercible but only in one direction";
        license = lib.licenses.bsd3;
@@ -61424,22 +61167,6 @@ self: {
      }:
      mkDerivation {
        pname = "concurrency";
-       version = "1.11.0.1";
-       sha256 = "0ds55wpkxlrw2x5ql34p9b05xlycnc4v7962f27a54nhrjfhb2ah";
-       libraryHaskellDepends = [
-         array atomic-primops base exceptions monad-control mtl stm
-         transformers
-       ];
-       description = "Typeclasses, functions, and data types for concurrency and STM";
-       license = lib.licenses.mit;
-     }) {};
-
-  "concurrency_1_11_0_2" = callPackage
-    ({ mkDerivation, array, atomic-primops, base, exceptions
-     , monad-control, mtl, stm, transformers
-     }:
-     mkDerivation {
-       pname = "concurrency";
        version = "1.11.0.2";
        sha256 = "0c7nq4d29s49a3h9wzjdi3idm6r68vxn6ybphsbrk2vmwqyfq36y";
        libraryHaskellDepends = [
@@ -61448,7 +61175,6 @@ self: {
        ];
        description = "Typeclasses, functions, and data types for concurrency and STM";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "concurrency-benchmarks" = callPackage
@@ -65811,7 +65537,8 @@ self: {
        description = "Crack various integer, floating-point data formats";
        license = lib.licenses.bsd3;
        platforms = [
-         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+         "aarch64-darwin" "armv7l-linux" "i686-linux" "x86_64-darwin"
+         "x86_64-linux"
        ];
        hydraPlatforms = lib.platforms.none;
      }) {};
@@ -65832,7 +65559,8 @@ self: {
        description = "Crack various integer and floating-point data formats";
        license = lib.licenses.bsd3;
        platforms = [
-         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+         "aarch64-darwin" "armv7l-linux" "i686-linux" "x86_64-darwin"
+         "x86_64-linux"
        ];
      }) {};
 
@@ -65852,7 +65580,8 @@ self: {
        description = "Crack various integer and floating-point data formats";
        license = lib.licenses.bsd3;
        platforms = [
-         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+         "aarch64-darwin" "armv7l-linux" "i686-linux" "x86_64-darwin"
+         "x86_64-linux"
        ];
        hydraPlatforms = lib.platforms.none;
      }) {};
@@ -66094,8 +65823,8 @@ self: {
      }:
      mkDerivation {
        pname = "creatur";
-       version = "5.9.28";
-       sha256 = "11fscbkzyzajgg6m50s5x4rmxy1mxrgiqflamqxiwsyj9szw16xl";
+       version = "5.9.30";
+       sha256 = "1zxg8zkm1n78c80z6xqnnx6x8jzpfx0lfdjn26i9p3rr3wd78bf3";
        libraryHaskellDepends = [
          array base binary bytestring cereal cond directory exceptions
          filepath gray-extended hdaemonize hsyslog MonadRandom mtl random
@@ -66323,6 +66052,44 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "criterion_1_5_10_0" = callPackage
+    ({ mkDerivation, aeson, ansi-wl-pprint, base, base-compat
+     , base-compat-batteries, binary, binary-orphans, bytestring
+     , cassava, code-page, containers, criterion-measurement, deepseq
+     , directory, exceptions, filepath, Glob, HUnit, js-chart
+     , microstache, mtl, mwc-random, optparse-applicative, parsec
+     , QuickCheck, statistics, tasty, tasty-hunit, tasty-quickcheck
+     , text, time, transformers, transformers-compat, vector
+     , vector-algorithms
+     }:
+     mkDerivation {
+       pname = "criterion";
+       version = "1.5.10.0";
+       sha256 = "0akws27z3i9381xrb0p0h5qicz4w5nnxy8jq7gk68gi50gj0flxq";
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         aeson ansi-wl-pprint base base-compat-batteries binary
+         binary-orphans bytestring cassava code-page containers
+         criterion-measurement deepseq directory exceptions filepath Glob
+         js-chart microstache mtl mwc-random optparse-applicative parsec
+         statistics text time transformers transformers-compat vector
+         vector-algorithms
+       ];
+       executableHaskellDepends = [
+         base base-compat-batteries optparse-applicative
+       ];
+       testHaskellDepends = [
+         aeson base base-compat base-compat-batteries bytestring deepseq
+         directory HUnit QuickCheck statistics tasty tasty-hunit
+         tasty-quickcheck vector
+       ];
+       description = "Robust, reliable performance measurement and analysis";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "criterion-cmp" = callPackage
     ({ mkDerivation, ansi-terminal, base, boxes, bytestring, cassava
      , containers, filepath, optparse-applicative, vector
@@ -73186,22 +72953,6 @@ self: {
      }:
      mkDerivation {
        pname = "dejafu";
-       version = "2.4.0.2";
-       sha256 = "1hwhyxjjwapk6jgsbs0vh033xbc9b8mr5iqd93vskvvljnb40v9h";
-       libraryHaskellDepends = [
-         base concurrency containers contravariant deepseq exceptions
-         leancheck profunctors random transformers
-       ];
-       description = "A library for unit-testing concurrent programs";
-       license = lib.licenses.mit;
-     }) {};
-
-  "dejafu_2_4_0_3" = callPackage
-    ({ mkDerivation, base, concurrency, containers, contravariant
-     , deepseq, exceptions, leancheck, profunctors, random, transformers
-     }:
-     mkDerivation {
-       pname = "dejafu";
        version = "2.4.0.3";
        sha256 = "1qzc8jbl6zwbncfmfmcwwmmhwzgbwc7wmnxxxa3mbcjbwhyibf92";
        libraryHaskellDepends = [
@@ -73210,7 +72961,6 @@ self: {
        ];
        description = "A library for unit-testing concurrent programs";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "deka" = callPackage
@@ -74686,6 +74436,61 @@ self: {
        maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
+  "dhall_1_40_0" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, ansi-terminal, atomic-write
+     , base, bytestring, case-insensitive, cborg, cborg-json, containers
+     , contravariant, cryptonite, data-fix, deepseq, Diff, directory
+     , doctest, dotgen, either, exceptions, filepath, foldl, gauge
+     , generic-random, half, hashable, haskeline, http-client
+     , http-client-tls, http-types, lens-family-core, megaparsec, memory
+     , mmorph, mockery, mtl, network-uri, optparse-applicative
+     , parser-combinators, parsers, pretty-simple, prettyprinter
+     , prettyprinter-ansi-terminal, profunctors, QuickCheck
+     , quickcheck-instances, repline, scientific, serialise
+     , special-values, spoon, tasty, tasty-expected-failure, tasty-hunit
+     , tasty-quickcheck, tasty-silver, template-haskell, temporary, text
+     , text-manipulate, th-lift-instances, time, transformers, turtle
+     , unordered-containers, uri-encode, vector
+     }:
+     mkDerivation {
+       pname = "dhall";
+       version = "1.40.0";
+       sha256 = "1a5hvfrygk9y9jlldyrbhfv9nzl03s6lqlmzf5dkwycwmfb7cc66";
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         aeson aeson-pretty ansi-terminal atomic-write base bytestring
+         case-insensitive cborg cborg-json containers contravariant
+         cryptonite data-fix deepseq Diff directory dotgen either exceptions
+         filepath half hashable haskeline http-client http-client-tls
+         http-types lens-family-core megaparsec memory mmorph mtl
+         network-uri optparse-applicative parser-combinators parsers
+         pretty-simple prettyprinter prettyprinter-ansi-terminal profunctors
+         repline scientific serialise template-haskell text text-manipulate
+         th-lift-instances time transformers unordered-containers uri-encode
+         vector
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [
+         base bytestring cborg containers data-fix deepseq directory doctest
+         either filepath foldl generic-random http-client http-client-tls
+         lens-family-core megaparsec mockery prettyprinter QuickCheck
+         quickcheck-instances scientific serialise special-values spoon
+         tasty tasty-expected-failure tasty-hunit tasty-quickcheck
+         tasty-silver template-haskell temporary text time transformers
+         turtle unordered-containers vector
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring containers directory gauge text
+       ];
+       doCheck = false;
+       description = "A configuration language guaranteed to terminate";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
+     }) {};
+
   "dhall-bash" = callPackage
     ({ mkDerivation, base, bytestring, containers, dhall
      , neat-interpolation, optparse-generic, shell-escape, text
@@ -74708,6 +74513,29 @@ self: {
        maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
+  "dhall-bash_1_0_38" = callPackage
+    ({ mkDerivation, base, bytestring, containers, dhall
+     , neat-interpolation, optparse-generic, shell-escape, text
+     }:
+     mkDerivation {
+       pname = "dhall-bash";
+       version = "1.0.38";
+       sha256 = "0pfwqz4l3nn4mr16pv5703j517g3nsgzpmiv18kzl4fs6141d881";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring containers dhall neat-interpolation shell-escape
+         text
+       ];
+       executableHaskellDepends = [
+         base bytestring dhall optparse-generic text
+       ];
+       description = "Compile Dhall to Bash";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
+     }) {};
+
   "dhall-check" = callPackage
     ({ mkDerivation, base, containers, dhall, directory, filepath
      , fsnotify, text, trifecta
@@ -74727,6 +74555,38 @@ self: {
        broken = true;
      }) {};
 
+  "dhall-csv" = callPackage
+    ({ mkDerivation, ansi-terminal, base, bytestring, cassava
+     , containers, dhall, either, exceptions, filepath
+     , optparse-applicative, prettyprinter, prettyprinter-ansi-terminal
+     , tasty, tasty-hunit, tasty-silver, text, unordered-containers
+     , vector
+     }:
+     mkDerivation {
+       pname = "dhall-csv";
+       version = "1.0.0";
+       sha256 = "1dg310mq4c00ykkm1vsvrcicls25zbx7iypcg0nqa8ggchac5jmh";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring cassava containers dhall either exceptions filepath
+         optparse-applicative prettyprinter text unordered-containers vector
+       ];
+       executableHaskellDepends = [
+         ansi-terminal base bytestring cassava dhall optparse-applicative
+         prettyprinter prettyprinter-ansi-terminal text unordered-containers
+         vector
+       ];
+       testHaskellDepends = [
+         base bytestring cassava dhall filepath tasty tasty-hunit
+         tasty-silver text unordered-containers vector
+       ];
+       description = "Convert bidirectionally between Dhall and CSV files";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "dhall-docs" = callPackage
     ({ mkDerivation, base, bytestring, containers, cryptonite, dhall
      , directory, doctest, file-embed, filepath, foldl, hashable
@@ -74736,10 +74596,8 @@ self: {
      }:
      mkDerivation {
        pname = "dhall-docs";
-       version = "1.0.6";
-       sha256 = "004n8kh8riw67aqwp6z9199jwv2c9r1dbkg92s71vd9zc04wxljv";
-       revision = "2";
-       editedCabalFile = "1z41z96qawc1i818ycp1ycdpxnysynipjjbi1pmrrgglv89hqjlq";
+       version = "1.0.7";
+       sha256 = "1h7bzpp3xa5m8zknhi24q0wh1n6w6z26ka780mdsbmchhhj59njm";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -74824,6 +74682,37 @@ self: {
        maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
+  "dhall-json_1_7_8" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, aeson-yaml, ansi-terminal
+     , base, bytestring, containers, dhall, exceptions, filepath
+     , lens-family-core, optparse-applicative, prettyprinter
+     , prettyprinter-ansi-terminal, scientific, tasty, tasty-hunit
+     , tasty-silver, text, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "dhall-json";
+       version = "1.7.8";
+       sha256 = "0g4c71di93r6vnbhajsj5k3ivhzvn0n0aicvvc2j9nbjfhvahd3h";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson aeson-pretty aeson-yaml base bytestring containers dhall
+         exceptions filepath lens-family-core optparse-applicative
+         prettyprinter scientific text unordered-containers vector
+       ];
+       executableHaskellDepends = [
+         aeson aeson-pretty ansi-terminal base bytestring dhall exceptions
+         optparse-applicative prettyprinter prettyprinter-ansi-terminal text
+       ];
+       testHaskellDepends = [
+         aeson base bytestring dhall tasty tasty-hunit tasty-silver text
+       ];
+       description = "Convert between Dhall and JSON or YAML";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
+     }) {};
+
   "dhall-lex" = callPackage
     ({ mkDerivation, alex, array, base, bytestring, criterion, deepseq
      , hspec, hspec-dirstream, scientific
@@ -74875,6 +74764,37 @@ self: {
        maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
+  "dhall-lsp-server_1_0_16" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, base, bytestring, containers
+     , data-default, dhall, dhall-json, directory, doctest, filepath
+     , haskell-lsp, haskell-lsp-types, hslogger, hspec, lens, lsp-test
+     , megaparsec, mtl, network-uri, optparse-applicative, prettyprinter
+     , QuickCheck, rope-utf16-splay, tasty, tasty-hspec, text
+     , transformers, unordered-containers, uri-encode
+     }:
+     mkDerivation {
+       pname = "dhall-lsp-server";
+       version = "1.0.16";
+       sha256 = "04s4kvbjp4ai17l64syram0br3qc4fpz669ps24r8fkcbbaczckq";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson aeson-pretty base bytestring containers data-default dhall
+         dhall-json directory filepath haskell-lsp hslogger lens megaparsec
+         mtl network-uri prettyprinter rope-utf16-splay text transformers
+         unordered-containers uri-encode
+       ];
+       executableHaskellDepends = [ base optparse-applicative ];
+       testHaskellDepends = [
+         base directory doctest filepath haskell-lsp-types hspec lsp-test
+         QuickCheck tasty tasty-hspec text
+       ];
+       description = "Language Server Protocol (LSP) server for Dhall";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
+     }) {};
+
   "dhall-nix" = callPackage
     ({ mkDerivation, base, containers, data-fix, dhall, hnix
      , lens-family-core, neat-interpolation, optparse-generic, text
@@ -74899,6 +74819,29 @@ self: {
        maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
+  "dhall-nix_1_1_22" = callPackage
+    ({ mkDerivation, base, containers, data-fix, dhall, hnix
+     , lens-family-core, neat-interpolation, optparse-generic, text
+     }:
+     mkDerivation {
+       pname = "dhall-nix";
+       version = "1.1.22";
+       sha256 = "1da64h52fz4imvk7hqblri27zg54r9rcs6hlyzkbnqg4yivpiclg";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers data-fix dhall hnix lens-family-core
+         neat-interpolation text
+       ];
+       executableHaskellDepends = [
+         base dhall hnix optparse-generic text
+       ];
+       description = "Dhall to Nix compiler";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
+     }) {};
+
   "dhall-nixpkgs" = callPackage
     ({ mkDerivation, aeson, base, data-fix, dhall, foldl, hnix
      , lens-family-core, megaparsec, mmorph, neat-interpolation
@@ -74907,10 +74850,8 @@ self: {
      }:
      mkDerivation {
        pname = "dhall-nixpkgs";
-       version = "1.0.5";
-       sha256 = "10gvkw2rdmz7pgr9675xqnhkgi8pwjid77mwsriid81d703z2b6j";
-       revision = "2";
-       editedCabalFile = "1kb2bn9v6p6ma016gaq3332vpcd6rdalrmcvxzzys4vaa0l6nl68";
+       version = "1.0.6";
+       sha256 = "12sfxz7n86m69m1xbnrrr1ybggh70rfwmr4maflq522bhkc2hgvk";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -74930,10 +74871,8 @@ self: {
      }:
      mkDerivation {
        pname = "dhall-openapi";
-       version = "1.0.1";
-       sha256 = "1n34amb97dqpvz0s3mhqb46gjq1ix1gicsq700z6v6y7xssrgbz2";
-       revision = "1";
-       editedCabalFile = "03axb4pqa5p8fkdqxjz1xni8fxg66xr3pshfs2p3y13bgn0kn5z2";
+       version = "1.0.2";
+       sha256 = "1p678nn1gfj2xp0kmw8i5pzsv6s5bpnsmyng45adb9pnpiyxbcyj";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -74958,6 +74897,8 @@ self: {
        pname = "dhall-recursive-adt";
        version = "0.1.0.1";
        sha256 = "09s3m86vflj5im2walab8d0wpvihsvxc5mzy55m10pfzr3gxsd11";
+       revision = "1";
+       editedCabalFile = "0phfa1y6fic6wyvm3bp56z4sj43wbf75rzggzgf763vivlnvc7xw";
        libraryHaskellDepends = [ base data-fix dhall recursion-schemes ];
        testHaskellDepends = [
          base dhall either hedgehog recursion-schemes tasty tasty-hedgehog
@@ -75017,6 +74958,32 @@ self: {
        broken = true;
      }) {};
 
+  "dhall-toml" = callPackage
+    ({ mkDerivation, base, containers, dhall, directory, doctest
+     , filepath, prettyprinter, tasty, tasty-hunit, text, tomland
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "dhall-toml";
+       version = "1.0.0";
+       sha256 = "13pz6y0l70h3x62wkhay2jiws6s5m6dy9v7kpd2c5mqzaspfy0w2";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers dhall prettyprinter text tomland
+         unordered-containers
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [
+         base dhall directory doctest filepath tasty tasty-hunit text
+         tomland
+       ];
+       description = "Convert between Dhall and TOML";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "dhall-yaml" = callPackage
     ({ mkDerivation, aeson, ansi-terminal, base, bytestring, dhall
      , dhall-json, exceptions, HsYAML, HsYAML-aeson
@@ -75046,6 +75013,36 @@ self: {
        maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
+  "dhall-yaml_1_2_8" = callPackage
+    ({ mkDerivation, aeson, ansi-terminal, base, bytestring, dhall
+     , dhall-json, exceptions, HsYAML, HsYAML-aeson
+     , optparse-applicative, prettyprinter, prettyprinter-ansi-terminal
+     , tasty, tasty-expected-failure, tasty-hunit, text, vector
+     }:
+     mkDerivation {
+       pname = "dhall-yaml";
+       version = "1.2.8";
+       sha256 = "1p766ybwib3f2i5h7m1hh71vc255ahvf7237bpprdapqw3ag8nak";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring dhall dhall-json HsYAML HsYAML-aeson
+         optparse-applicative text vector
+       ];
+       executableHaskellDepends = [
+         aeson ansi-terminal base bytestring dhall dhall-json exceptions
+         optparse-applicative prettyprinter prettyprinter-ansi-terminal text
+       ];
+       testHaskellDepends = [
+         base bytestring dhall dhall-json tasty tasty-expected-failure
+         tasty-hunit text
+       ];
+       description = "Convert between Dhall and YAML";
+       license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
+     }) {};
+
   "dhcp-lease-parser" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, chronos, ip, tasty
      , tasty-hunit, text
@@ -75297,8 +75294,8 @@ self: {
        pname = "diagrams-builder";
        version = "0.8.0.5";
        sha256 = "0dz617kfkvjf3f2zbphkdx1scglcjj162qsfk9xj7slbapnj918m";
-       revision = "1";
-       editedCabalFile = "0rcj755n729gs9rgmjwai1xacigwpyk4b91x0cadfsl7xrgqax0c";
+       revision = "2";
+       editedCabalFile = "1jys7j2s8shwh5yr7w597qd46ip5xqvszaqgpjvnx9fxazqp6r0v";
        configureFlags = [ "-fcairo" "-fps" "-frasterific" "-fsvg" ];
        isLibrary = true;
        isExecutable = true;
@@ -75328,8 +75325,8 @@ self: {
        pname = "diagrams-cairo";
        version = "1.4.1.1";
        sha256 = "0vyd2yr55n7x71194i18lnbcshdjpnqw4qyq7vj5zx377rsz711k";
-       revision = "2";
-       editedCabalFile = "0ngbshqmb86sc9djmgkn3zc9l69bn3kdml7ld6qx36dsyq6mafq9";
+       revision = "3";
+       editedCabalFile = "16jm9g9rfc7d1dy2kwq3n9wfgcj8l6c0d54lym1r6b0arc7yjqlb";
        libraryHaskellDepends = [
          array base bytestring cairo colour containers data-default-class
          diagrams-core diagrams-lib filepath hashable JuicyPixels lens mtl
@@ -75349,8 +75346,8 @@ self: {
        pname = "diagrams-canvas";
        version = "1.4.1";
        sha256 = "1ihmv42412d8dk3s894zd70xd386wrk9ycxkid19barry1vz5plj";
-       revision = "1";
-       editedCabalFile = "12p6n6g4ab81b39d031vzwfj89qi5wm27srpyigf2v0zswppdyvn";
+       revision = "2";
+       editedCabalFile = "0x8iv0998nn42l0ph90xq50ca514m3zhac4s9zl1hc5hzivj10sl";
        libraryHaskellDepends = [
          base blank-canvas cmdargs containers data-default-class
          diagrams-core diagrams-lib lens mtl NumInstances
@@ -75374,8 +75371,8 @@ self: {
        pname = "diagrams-contrib";
        version = "1.4.4";
        sha256 = "043jpr7lqg708lzmv6cqys7312lfdwnf8ijcnpl4jkbvcwl87c1m";
-       revision = "2";
-       editedCabalFile = "1mkpq356z7b2q6ifa4f1k7whsmhgn3hww8scacca0q2wnc8p4xjg";
+       revision = "3";
+       editedCabalFile = "03drxpqhyv62kzsxiabhfjiayk79fpv8wrq4qapsjbv7ph2jhx2v";
        libraryHaskellDepends = [
          base circle-packing colour containers cubicbezier data-default
          data-default-class diagrams-core diagrams-lib diagrams-solve
@@ -75437,8 +75434,8 @@ self: {
        pname = "diagrams-graphviz";
        version = "1.4.1.1";
        sha256 = "0lscrxd682jvyrl5bj4dxp7593qwyis01sl0p4jm2jfn335wdq40";
-       revision = "1";
-       editedCabalFile = "1qx69541pxf71whfz2a913yzbhfcks2pyzfprkgrcmiiyv0a3i7b";
+       revision = "2";
+       editedCabalFile = "0cxg21lsahkrf129k5h82d4znm3861dqc597mgzwyl5f0ywhllzr";
        libraryHaskellDepends = [
          base containers diagrams-lib fgl graphviz split
        ];
@@ -75476,6 +75473,8 @@ self: {
        pname = "diagrams-haddock";
        version = "0.4.1";
        sha256 = "0p978saxsfad6d8wkjnp6i300cf58ps02yw7a1zzhjfgk5ih2qlb";
+       revision = "1";
+       editedCabalFile = "063j6drlybzbm6bf9yfix86hs3hvgb98sgh4rzgrqkq9kvarj2ij";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -75675,8 +75674,8 @@ self: {
        pname = "diagrams-postscript";
        version = "1.5";
        sha256 = "00j58mc84srjvrf21v6zjxxlbw6b8ahhn1jmbq697w8kw3cvygpa";
-       revision = "2";
-       editedCabalFile = "0dyji1b8mcxaxwzgckkk3p3ji0prrp7rsin98f1hmyjlj3ih735b";
+       revision = "3";
+       editedCabalFile = "1aq214837jk85b2l79adm5rcrv8y929aspvix7yjq1skyrqgk7pa";
        libraryHaskellDepends = [
          base bytestring containers data-default-class diagrams-core
          diagrams-lib hashable lens monoid-extras mtl semigroups split
@@ -75712,8 +75711,8 @@ self: {
        pname = "diagrams-rasterific";
        version = "1.4.2.1";
        sha256 = "09a1jnpc4kplg1yhv5kxhi0ph22m5xyr0vmnjv2c5wlz72c72z2z";
-       revision = "1";
-       editedCabalFile = "1nc12hm4qbj2lmbpk3a77cd46n5bcf20vwd075qj2vglbca2yl9b";
+       revision = "2";
+       editedCabalFile = "1vd8njhanjaa86h0g8hb6khz11bv9zvg8l4pfx0dj4ypknz4hwak";
        libraryHaskellDepends = [
          base bytestring containers data-default-class diagrams-core
          diagrams-lib file-embed filepath FontyFruity hashable JuicyPixels
@@ -75785,8 +75784,8 @@ self: {
        pname = "diagrams-svg";
        version = "1.4.3";
        sha256 = "1ysv6cz0fngrndl4wjmw4hrdj2rik5fxa1dkxzwnlgf1xwpvxgk8";
-       revision = "3";
-       editedCabalFile = "19n3g9wvp2fj4dlz3ssyjqx1b6ihskg5s595x9z2c99bpbzyykkv";
+       revision = "4";
+       editedCabalFile = "0irjf0g1barr06fy409r0ld2hypihrhh6n80ig3487xxny6gfzs0";
        libraryHaskellDepends = [
          base base64-bytestring bytestring colour containers diagrams-core
          diagrams-lib filepath hashable JuicyPixels lens monoid-extras mtl
@@ -89798,16 +89797,16 @@ self: {
        broken = true;
      }) {};
 
-  "faktory_1_1_0_0" = callPackage
-    ({ mkDerivation, aeson, aeson-casing, async, base, bytestring
-     , connection, cryptonite, errors, hspec, markdown-unlit, megaparsec
-     , memory, mtl, network, random, safe-exceptions, scanner
-     , semigroups, text, time, unix, unordered-containers
+  "faktory_1_1_1_0" = callPackage
+    ({ mkDerivation, aeson, aeson-casing, aeson-qq, async, base
+     , bytestring, connection, cryptonite, errors, hspec, markdown-unlit
+     , megaparsec, memory, mtl, network, random, safe-exceptions
+     , scanner, semigroups, text, time, unix, unordered-containers
      }:
      mkDerivation {
        pname = "faktory";
-       version = "1.1.0.0";
-       sha256 = "0bxwrrypkwhq7whaj79dkibad022bdxd8r5vh1dnd4aka3bdk8mj";
+       version = "1.1.1.0";
+       sha256 = "1lh427lq991pclzqr112dw4jjalcxpkwl440ygg2fhl6bgn082wx";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -89817,7 +89816,7 @@ self: {
        ];
        executableHaskellDepends = [ aeson base safe-exceptions ];
        testHaskellDepends = [
-         aeson async base hspec markdown-unlit mtl time
+         aeson aeson-qq async base hspec markdown-unlit mtl time
        ];
        testToolDepends = [ markdown-unlit ];
        description = "Faktory Worker for Haskell";
@@ -89942,8 +89941,8 @@ self: {
      }:
      mkDerivation {
        pname = "fast-builder";
-       version = "0.1.2.1";
-       sha256 = "0j11ahdmbni56car4zblwz9yz1qkrr6qbmpbah4fgpiyq6177cn9";
+       version = "0.1.3.0";
+       sha256 = "0j2dfh6y689sk5ahh232zl8glbmwp34xnqkmaq9n9jwbddw4fg5z";
        libraryHaskellDepends = [ base bytestring ghc-prim ];
        testHaskellDepends = [ base bytestring process QuickCheck stm ];
        benchmarkHaskellDepends = [
@@ -89975,26 +89974,6 @@ self: {
      }) {};
 
   "fast-digits" = callPackage
-    ({ mkDerivation, base, digits, gauge, integer-gmp, QuickCheck
-     , smallcheck, tasty, tasty-quickcheck, tasty-smallcheck
-     }:
-     mkDerivation {
-       pname = "fast-digits";
-       version = "0.3.0.0";
-       sha256 = "1vlmjlkmv1nmw1rriafm2hzkmqd5xnwgzmvrg6xxqj1ab5sdsafs";
-       libraryHaskellDepends = [ base integer-gmp ];
-       testHaskellDepends = [
-         base digits QuickCheck smallcheck tasty tasty-quickcheck
-         tasty-smallcheck
-       ];
-       benchmarkHaskellDepends = [ base digits gauge ];
-       doHaddock = false;
-       description = "Integer-to-digits conversion";
-       license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-     }) {};
-
-  "fast-digits_0_3_1_0" = callPackage
     ({ mkDerivation, base, integer-gmp, QuickCheck, smallcheck, tasty
      , tasty-bench, tasty-quickcheck, tasty-smallcheck
      }:
@@ -90010,7 +89989,6 @@ self: {
        doHaddock = false;
        description = "Integer-to-digits conversion";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "fast-downward" = callPackage
@@ -92104,18 +92082,6 @@ self: {
      }) {};
 
   "filepath-bytestring" = callPackage
-    ({ mkDerivation, base, bytestring, filepath, QuickCheck, unix }:
-     mkDerivation {
-       pname = "filepath-bytestring";
-       version = "1.4.2.1.7";
-       sha256 = "00xayqjq2qvb4yj0ppx838cabg5cx9swh0mzfb8c6njk9y5rc41n";
-       libraryHaskellDepends = [ base bytestring unix ];
-       testHaskellDepends = [ base bytestring filepath QuickCheck ];
-       description = "Library for manipulating RawFilePaths in a cross platform way";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "filepath-bytestring_1_4_2_1_8" = callPackage
     ({ mkDerivation, base, bytestring, criterion, filepath, QuickCheck
      , unix
      }:
@@ -92128,7 +92094,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion filepath ];
        description = "Library for manipulating RawFilePaths in a cross platform way";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "filepath-crypto" = callPackage
@@ -96179,6 +96144,43 @@ self: {
        broken = true;
      }) {};
 
+  "freckle-app" = callPackage
+    ({ mkDerivation, aeson, ansi-terminal, base, bytestring
+     , case-insensitive, conduit, data-default, datadog, directory
+     , doctest, errors, exceptions, fast-logger, filepath, Glob, hspec
+     , hspec-core, hspec-expectations-lifted, hspec-junit-formatter
+     , http-client, http-conduit, http-link-header, http-types, immortal
+     , iproute, lens, lens-aeson, load-env, monad-control, monad-logger
+     , MonadRandom, mtl, network, network-uri, persistent
+     , persistent-postgresql, postgresql-simple, primitive, process
+     , resource-pool, retry, rio, temporary, text, time, transformers
+     , transformers-base, unliftio, unliftio-core, wai, wai-extra, yaml
+     , yesod, yesod-core
+     }:
+     mkDerivation {
+       pname = "freckle-app";
+       version = "1.0.0.2";
+       sha256 = "1mrydqmwzwa391cb6pzxmjd5yl04f5xggz0wha7rm2a0pksgxphy";
+       libraryHaskellDepends = [
+         aeson ansi-terminal base bytestring case-insensitive conduit
+         data-default datadog doctest errors exceptions fast-logger filepath
+         Glob hspec hspec-core hspec-expectations-lifted
+         hspec-junit-formatter http-client http-conduit http-link-header
+         http-types immortal iproute lens load-env monad-control
+         monad-logger MonadRandom mtl network network-uri persistent
+         persistent-postgresql postgresql-simple primitive process
+         resource-pool retry rio text time transformers transformers-base
+         unliftio unliftio-core wai wai-extra yaml yesod yesod-core
+       ];
+       testHaskellDepends = [
+         aeson base bytestring directory hspec http-types lens lens-aeson
+         process temporary text time wai wai-extra
+       ];
+       description = "Haskell application toolkit used at Freckle";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "freddy" = callPackage
     ({ mkDerivation, amqp, async, base, broadcast-chan, bytestring
      , data-default, hspec, random, text, uuid
@@ -101931,8 +101933,8 @@ self: {
     ({ mkDerivation, base, ghc }:
      mkDerivation {
        pname = "ghc-api-compat";
-       version = "8.10.5";
-       sha256 = "09g04k7zvzjs312yn9hhk8bk3l6k2vbb8qrdpnlr12a6az4adq3s";
+       version = "8.10.6";
+       sha256 = "1zrwa266v776w8rvcjggdpnyhs8kk36w5wrh63l16kxh58yc2vjz";
        libraryHaskellDepends = [ base ghc ];
        doHaddock = false;
        description = "GHC-API compatibility helpers";
@@ -102528,8 +102530,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-lib";
-       version = "8.10.5.20210606";
-       sha256 = "0bl2jp44s3pd1a1sg0kslkhi97f4z2423kdkizg65m6cvmk25ijs";
+       version = "8.10.6.20210814";
+       sha256 = "0gnjps6xf5wq0nl4rlm4c1mqp3a3rbkwskv85fm852n5cf7bicd6";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          array base binary bytestring containers deepseq directory filepath
@@ -102564,17 +102566,17 @@ self: {
 
   "ghc-lib-parser" = callPackage
     ({ mkDerivation, alex, array, base, binary, bytestring, containers
-     , deepseq, directory, filepath, ghc-prim, happy, hpc, pretty
-     , process, time, transformers, unix
+     , deepseq, directory, filepath, ghc-prim, happy, pretty, process
+     , time, transformers, unix
      }:
      mkDerivation {
        pname = "ghc-lib-parser";
-       version = "8.10.5.20210606";
-       sha256 = "0pqsq49kvqwgbi6jw0dycbdzyldi0sannyqkfzavhqjf4mwjzn4a";
+       version = "8.10.6.20210814";
+       sha256 = "16kmm5wv3kym3qjq43pldycnira64zyga2c4b2vccvlvbi0v40hi";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          array base binary bytestring containers deepseq directory filepath
-         ghc-prim hpc pretty process time transformers unix
+         ghc-prim pretty process time transformers unix
        ];
        libraryToolDepends = [ alex happy ];
        description = "The GHC API, decoupled from GHC versions";
@@ -102609,8 +102611,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-lib-parser-ex";
-       version = "8.10.0.21";
-       sha256 = "0ynrn7qdmim35fs9qdlbajqwyz559x1l9cqmjhb54vbrs2xnk6vp";
+       version = "8.10.0.22";
+       sha256 = "1a1yhm8rflln6m8sn2bbh5x6cbn20zfq91vfk1ywmia0v5y2sx03";
        libraryHaskellDepends = [
          base bytestring containers ghc ghc-boot ghc-boot-th uniplate
        ];
@@ -112156,8 +112158,8 @@ self: {
      }:
      mkDerivation {
        pname = "gray-extended";
-       version = "1.5.8";
-       sha256 = "1vli6dc0wc1an6vfhchai6s8xrg8rfds2k07x2xszaqg7r2njc9k";
+       version = "1.5.9";
+       sha256 = "0j2qw42fv5pg6v6bq51hk6lw3gcz35xd1gfvm8i74irv6bqialgy";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [
          base QuickCheck test-framework test-framework-quickcheck2
@@ -112396,8 +112398,8 @@ self: {
      }:
      mkDerivation {
        pname = "grid";
-       version = "7.8.14";
-       sha256 = "11rnsl6bs6qpx90p8jzdigncv6m5wbn6sav8gb3mlbm40fpi3p93";
+       version = "7.8.15";
+       sha256 = "0fsgax3xpdhnwn67s4wqqpvmm98j7b1fp6lrx98m15nxmjqb7rcc";
        libraryHaskellDepends = [ base containers ];
        testHaskellDepends = [
          base QuickCheck test-framework test-framework-quickcheck2
@@ -113330,7 +113332,7 @@ self: {
        libraryPkgconfigDepends = [ gtk-mac-integration-gtk2 ];
        description = "Bindings for the Gtk/OS X integration library";
        license = lib.licenses.lgpl21Only;
-       platforms = [ "x86_64-darwin" ];
+       platforms = [ "aarch64-darwin" "x86_64-darwin" ];
        hydraPlatforms = lib.platforms.none;
        broken = true;
      }) {inherit (pkgs) gtk-mac-integration-gtk2;};
@@ -118869,6 +118871,8 @@ self: {
        pname = "hashable";
        version = "1.3.2.0";
        sha256 = "0dyn343wdwbm1facpcjiyd8w0s0hk23jqh7mbj108az5dx5rdgar";
+       revision = "1";
+       editedCabalFile = "05jwmd6d127vykb1y13q7sjn5mhfs5pbbkal33jq5kg1rx3hj6kq";
        libraryHaskellDepends = [
          base bytestring deepseq ghc-prim integer-gmp text
        ];
@@ -122173,8 +122177,8 @@ self: {
      }:
      mkDerivation {
        pname = "hasklepias";
-       version = "0.15.1";
-       sha256 = "00n9fan0g3xdl9k0f0rw32xgrwzxb8x85vrj98yyk1dk490pgfhm";
+       version = "0.16.1";
+       sha256 = "19bskg552zfkfxrkgp7s3pcwjccn3ra3qc13inis55gxg56gwcs0";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -127511,7 +127515,8 @@ self: {
        description = "Ethereum virtual machine evaluator";
        license = lib.licenses.agpl3Only;
        platforms = [
-         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+         "aarch64-darwin" "armv7l-linux" "i686-linux" "x86_64-darwin"
+         "x86_64-linux"
        ];
      }) {inherit (pkgs) libff; inherit (pkgs) secp256k1;};
 
@@ -128147,7 +128152,7 @@ self: {
        libraryToolDepends = [ CoreServices ];
        description = "File/folder watching for OS X";
        license = lib.licenses.bsd3;
-       platforms = [ "x86_64-darwin" ];
+       platforms = [ "aarch64-darwin" "x86_64-darwin" ];
      }) {inherit (pkgs.darwin.apple_sdk.frameworks) Cocoa; 
          inherit (pkgs.darwin.apple_sdk.frameworks) CoreServices;};
 
@@ -134726,36 +134731,6 @@ self: {
 
   "hpack-dhall" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, bytestring, Cabal
-     , dhall, dhall-json, Diff, directory, filepath, hpack, megaparsec
-     , microlens, optparse-applicative, prettyprinter, tasty
-     , tasty-golden, text, transformers, utf8-string, yaml
-     }:
-     mkDerivation {
-       pname = "hpack-dhall";
-       version = "0.5.2";
-       sha256 = "16mnh9hwp0224cn3rlpbjgqklgvbaffbzjskyksakpgxc0phk1zi";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson aeson-pretty base bytestring dhall dhall-json filepath hpack
-         megaparsec microlens prettyprinter text transformers yaml
-       ];
-       executableHaskellDepends = [
-         aeson aeson-pretty base bytestring dhall dhall-json filepath hpack
-         megaparsec microlens optparse-applicative prettyprinter text
-         transformers yaml
-       ];
-       testHaskellDepends = [
-         aeson aeson-pretty base bytestring Cabal dhall dhall-json Diff
-         directory filepath hpack megaparsec microlens prettyprinter tasty
-         tasty-golden text transformers utf8-string yaml
-       ];
-       description = "hpack's dhalling";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "hpack-dhall_0_5_3" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, base, bytestring, Cabal
      , dhall, dhall-json, Diff, directory, filepath, hlint, hpack
      , megaparsec, microlens, optparse-applicative, prettyprinter, tasty
      , tasty-golden, text, transformers, utf8-string, yaml
@@ -134782,7 +134757,6 @@ self: {
        ];
        description = "hpack's dhalling";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "hpaco" = callPackage
@@ -136650,6 +136624,26 @@ self: {
        broken = true;
      }) {};
 
+  "hs-tags_0_1_5_1" = callPackage
+    ({ mkDerivation, base, Cabal, containers, directory, filepath, ghc
+     , ghc-paths, mtl, process, strict
+     }:
+     mkDerivation {
+       pname = "hs-tags";
+       version = "0.1.5.1";
+       sha256 = "1yk1x24qar19hx47yjlr4f1qz3ld45hzpc74yxak73rsz08c08dx";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base Cabal containers directory filepath ghc ghc-paths mtl process
+         strict
+       ];
+       description = "Create tag files (ctags and etags) for Haskell code";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "hs-term-emulator" = callPackage
     ({ mkDerivation, ansi-terminal, attoparsec, base, bytestring
      , containers, criterion, hspec, hspec-discover, lens, text, vector
@@ -140087,8 +140081,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspretty";
-       version = "0.1.0.0";
-       sha256 = "11mbrr785j6pa02zil705sy67cdvjhwq9l927mm74barf9ph776r";
+       version = "0.2.0.0";
+       sha256 = "1nxsw25a8g8xhfbcybsamn64bzrr7gl2q6ydd62zj073bkh413iq";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -141134,26 +141128,6 @@ self: {
      }:
      mkDerivation {
        pname = "html-conduit";
-       version = "1.3.2.1";
-       sha256 = "196c8zcnjp1pc5qvqxd8arx3xkw0a90rvg9mmiw2l4zwnx65709n";
-       libraryHaskellDepends = [
-         attoparsec base bytestring conduit conduit-extra containers
-         resourcet text transformers xml-conduit xml-types
-       ];
-       testHaskellDepends = [
-         base bytestring containers deepseq hspec HUnit text xml-conduit
-       ];
-       description = "Parse HTML documents using xml-conduit datatypes";
-       license = lib.licenses.mit;
-     }) {};
-
-  "html-conduit_1_3_2_2" = callPackage
-    ({ mkDerivation, attoparsec, base, bytestring, conduit
-     , conduit-extra, containers, deepseq, hspec, HUnit, resourcet, text
-     , transformers, xml-conduit, xml-types
-     }:
-     mkDerivation {
-       pname = "html-conduit";
        version = "1.3.2.2";
        sha256 = "09bwrdam3y47kqllgg6w098ghqb8jb10dp4wxirsvx5ddpx9zpi6";
        libraryHaskellDepends = [
@@ -141165,7 +141139,6 @@ self: {
        ];
        description = "Parse HTML documents using xml-conduit datatypes";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "html-email-validate" = callPackage
@@ -141979,6 +141952,24 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "http-common_0_8_3_4" = callPackage
+    ({ mkDerivation, base, base64-bytestring, blaze-builder, bytestring
+     , case-insensitive, directory, mtl, network, random, text
+     , transformers, unordered-containers
+     }:
+     mkDerivation {
+       pname = "http-common";
+       version = "0.8.3.4";
+       sha256 = "1xpbnfac0fqa5r670ggwm4kq3cmz9jpaw9bx40j9w9qiw6xi4i28";
+       libraryHaskellDepends = [
+         base base64-bytestring blaze-builder bytestring case-insensitive
+         directory mtl network random text transformers unordered-containers
+       ];
+       description = "Common types for HTTP clients and servers";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "http-conduit" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, blaze-builder, bytestring
      , case-insensitive, conduit, conduit-extra, connection, cookie
@@ -142628,6 +142619,38 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "http-streams_0_8_9_4" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, attoparsec, base
+     , base64-bytestring, blaze-builder, bytestring, case-insensitive
+     , directory, filepath, ghc-prim, HsOpenSSL, hspec
+     , hspec-expectations, http-common, HUnit, io-streams, lifted-base
+     , mtl, network, network-uri, openssl-streams, random, snap-core
+     , snap-server, system-fileio, system-filepath, text, transformers
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "http-streams";
+       version = "0.8.9.4";
+       sha256 = "03xdcb0v735xdrkjlm1w56mskh3x08cbsjrcd7wn4li65ixc20xa";
+       libraryHaskellDepends = [
+         aeson attoparsec base base64-bytestring blaze-builder bytestring
+         case-insensitive directory filepath HsOpenSSL http-common
+         io-streams mtl network network-uri openssl-streams text
+         transformers unordered-containers
+       ];
+       testHaskellDepends = [
+         aeson aeson-pretty attoparsec base base64-bytestring blaze-builder
+         bytestring case-insensitive directory ghc-prim HsOpenSSL hspec
+         hspec-expectations http-common HUnit io-streams lifted-base mtl
+         network network-uri openssl-streams random snap-core snap-server
+         system-fileio system-filepath text transformers
+         unordered-containers
+       ];
+       description = "An HTTP client using io-streams";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "http-test" = callPackage
     ({ mkDerivation, aeson, base, bytestring, http-client, lens
      , lens-aeson, mtl, tasty, tasty-hunit, text, time, wreq
@@ -143276,23 +143299,11 @@ self: {
     ({ mkDerivation, base, dejafu, exceptions, HUnit }:
      mkDerivation {
        pname = "hunit-dejafu";
-       version = "2.0.0.4";
-       sha256 = "11d52blw31mcsg7c3w1f7khy3vk2p03h4c5z6ja6wb9k5bg4d004";
-       libraryHaskellDepends = [ base dejafu exceptions HUnit ];
-       description = "Deja Fu support for the HUnit test framework";
-       license = lib.licenses.mit;
-     }) {};
-
-  "hunit-dejafu_2_0_0_5" = callPackage
-    ({ mkDerivation, base, dejafu, exceptions, HUnit }:
-     mkDerivation {
-       pname = "hunit-dejafu";
        version = "2.0.0.5";
        sha256 = "0pbsbj70a2m7zvk25wa8mi0ymxv4c49g2vgg8819wpjcrxw8sy64";
        libraryHaskellDepends = [ base dejafu exceptions HUnit ];
        description = "Deja Fu support for the HUnit test framework";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "hunit-gui" = callPackage
@@ -149434,6 +149445,23 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "inspection-testing_0_4_6_0" = callPackage
+    ({ mkDerivation, base, containers, ghc, mtl, template-haskell
+     , transformers
+     }:
+     mkDerivation {
+       pname = "inspection-testing";
+       version = "0.4.6.0";
+       sha256 = "0qz1npyycj4bvyly9xmjbnhw569l52h38gx02rk0r7zhapw83aig";
+       libraryHaskellDepends = [
+         base containers ghc mtl template-haskell transformers
+       ];
+       testHaskellDepends = [ base ];
+       description = "GHC plugin to do inspection testing";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "inspector-wrecker" = callPackage
     ({ mkDerivation, aeson, base, bytestring, case-insensitive
      , connection, data-default, http-client, http-client-tls
@@ -150214,22 +150242,6 @@ self: {
      }) {};
 
   "interpolation" = callPackage
-    ({ mkDerivation, array, base, containers, QuickCheck, utility-ht }:
-     mkDerivation {
-       pname = "interpolation";
-       version = "0.1.1.1";
-       sha256 = "081xlf59xp0j1svigkqfcz5an3yl3p8f5402i6492hz9rpv5qwy5";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [ base utility-ht ];
-       testHaskellDepends = [
-         array base containers QuickCheck utility-ht
-       ];
-       description = "piecewise linear and cubic Hermite interpolation";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "interpolation_0_1_1_2" = callPackage
     ({ mkDerivation, array, base, containers, doctest-exitcode-stdio
      , doctest-lib, QuickCheck, utility-ht
      }:
@@ -150246,7 +150258,6 @@ self: {
        ];
        description = "piecewise linear and cubic Hermite interpolation";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "interpolator" = callPackage
@@ -150337,8 +150348,8 @@ self: {
      }:
      mkDerivation {
        pname = "interval-algebra";
-       version = "0.10.0";
-       sha256 = "1b1a78rssxaqiw42hbb1zqmlq4lmxkxxkhrm3ybqpmrqk492mckv";
+       version = "0.10.1";
+       sha256 = "1nplznmspji7g51g2xxsr2b5lahhxqnmbs180mm3zmvkam8zizri";
        libraryHaskellDepends = [
          base containers foldl QuickCheck safe time witherable
        ];
@@ -151389,27 +151400,6 @@ self: {
      }:
      mkDerivation {
        pname = "irc-client";
-       version = "1.1.2.1";
-       sha256 = "1zaa8na730m96flgiyzcwq95v2ianvflsw3abvdavf7xpq4s71ld";
-       libraryHaskellDepends = [
-         base bytestring conduit connection containers contravariant
-         exceptions irc-conduit irc-ctcp mtl network-conduit-tls old-locale
-         profunctors stm stm-chans text time tls transformers x509
-         x509-store x509-validation
-       ];
-       description = "An IRC client library";
-       license = lib.licenses.mit;
-       maintainers = with lib.maintainers; [ sternenseemann ];
-     }) {};
-
-  "irc-client_1_1_2_2" = callPackage
-    ({ mkDerivation, base, bytestring, conduit, connection, containers
-     , contravariant, exceptions, irc-conduit, irc-ctcp, mtl
-     , network-conduit-tls, old-locale, profunctors, stm, stm-chans
-     , text, time, tls, transformers, x509, x509-store, x509-validation
-     }:
-     mkDerivation {
-       pname = "irc-client";
        version = "1.1.2.2";
        sha256 = "0hhaf7xhy3q48gkp2j01jjiiz0ww9mwwjh8brbqs8phlal03ks70";
        libraryHaskellDepends = [
@@ -151420,7 +151410,6 @@ self: {
        ];
        description = "An IRC client library";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
        maintainers = with lib.maintainers; [ sternenseemann ];
      }) {};
 
@@ -151442,24 +151431,6 @@ self: {
      }:
      mkDerivation {
        pname = "irc-conduit";
-       version = "0.3.0.4";
-       sha256 = "0asaddcbdcnbp0bbhvzaq5514nw2l1cp1gac3jbn4mh7brgfwjc1";
-       libraryHaskellDepends = [
-         async base bytestring conduit conduit-extra connection irc irc-ctcp
-         network-conduit-tls profunctors text time tls transformers
-         x509-validation
-       ];
-       description = "Streaming IRC message library using conduits";
-       license = lib.licenses.mit;
-     }) {};
-
-  "irc-conduit_0_3_0_5" = callPackage
-    ({ mkDerivation, async, base, bytestring, conduit, conduit-extra
-     , connection, irc, irc-ctcp, network-conduit-tls, profunctors, text
-     , time, tls, transformers, x509-validation
-     }:
-     mkDerivation {
-       pname = "irc-conduit";
        version = "0.3.0.5";
        sha256 = "02ziqjzqdyaizhrrzlbq4ddkfjfjf58jvwqfzrbf0mf0f5scv9cz";
        libraryHaskellDepends = [
@@ -151469,7 +151440,6 @@ self: {
        ];
        description = "Streaming IRC message library using conduits";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "irc-core" = callPackage
@@ -151494,23 +151464,11 @@ self: {
     ({ mkDerivation, base, bytestring, text }:
      mkDerivation {
        pname = "irc-ctcp";
-       version = "0.1.3.0";
-       sha256 = "16mp9dpp57id760zc932dszd5r1ncskwwxrp0djka5r1alddjz6n";
-       libraryHaskellDepends = [ base bytestring text ];
-       description = "A CTCP encoding and decoding library for IRC clients";
-       license = lib.licenses.mit;
-     }) {};
-
-  "irc-ctcp_0_1_3_1" = callPackage
-    ({ mkDerivation, base, bytestring, text }:
-     mkDerivation {
-       pname = "irc-ctcp";
        version = "0.1.3.1";
        sha256 = "1ckdbxnjv96bpyhcpdi0vj6pjjq8wm4zyh75fps57wi1j61c4v2n";
        libraryHaskellDepends = [ base bytestring text ];
        description = "A CTCP encoding and decoding library for IRC clients";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "irc-dcc" = callPackage
@@ -152006,6 +151964,23 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "isocline" = callPackage
+    ({ mkDerivation, base, bytestring, text }:
+     mkDerivation {
+       pname = "isocline";
+       version = "1.0.1";
+       sha256 = "1s57gqzhic1zjc0fn1j8l834cfa24w9q2rvhbxdfkb442qpw4piw";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base bytestring text ];
+       executableHaskellDepends = [ base bytestring text ];
+       testHaskellDepends = [ base bytestring text ];
+       description = "A portable alternative to GNU Readline";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "isohunt" = callPackage
     ({ mkDerivation, aeson, base, bytestring, data-default, ghc-prim
      , http-conduit, text, unordered-containers, uri, vector
@@ -158256,7 +158231,7 @@ self: {
        libraryToolDepends = [ c2hs ];
        description = "A binding to the kqueue event library";
        license = lib.licenses.bsd3;
-       platforms = [ "x86_64-darwin" ];
+       platforms = [ "aarch64-darwin" "x86_64-darwin" ];
      }) {};
 
   "kraken" = callPackage
@@ -158453,7 +158428,6 @@ self: {
        ];
        description = "Client library for Kubernetes";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "kubernetes-client-core" = callPackage
@@ -158907,6 +158881,22 @@ self: {
        broken = true;
      }) {};
 
+  "lambda-cube" = callPackage
+    ({ mkDerivation, base, hspec, megaparsec, QuickCheck
+     , template-haskell, text
+     }:
+     mkDerivation {
+       pname = "lambda-cube";
+       version = "0.1.0.0";
+       sha256 = "0s5sh4r43r5xhlldxqy2snddc5dgnx2rpawk4pipxp69983xhazi";
+       revision = "3";
+       editedCabalFile = "0ycaf4j9g0zsbw4qjwd6san4vn7h6iiyyf0dqgqwcl0vfv7z2hf0";
+       libraryHaskellDepends = [ base megaparsec template-haskell text ];
+       testHaskellDepends = [ base hspec QuickCheck ];
+       description = "Haskell implementation of (some of) lambda cube calculi";
+       license = lib.licenses.mit;
+     }) {};
+
   "lambda-devs" = callPackage
     ({ mkDerivation, base, binary, containers, dimensional
      , distributed-process, HUnit, numtype, QuickCheck, test-framework
@@ -159085,31 +159075,6 @@ self: {
      }:
      mkDerivation {
        pname = "lambdabot-core";
-       version = "5.3.0.1";
-       sha256 = "05xx68f3gpc7s1k8p81pwphmiznf7niradf52p39rss3nx8rr3ay";
-       libraryHaskellDepends = [
-         base binary bytestring containers dependent-map dependent-sum
-         dependent-sum-template directory edit-distance exceptions filepath
-         haskeline hslogger HTTP lifted-base monad-control mtl network
-         network-bsd parsec prim-uniq random random-fu random-source
-         regex-tdfa SafeSemaphore split syb template-haskell time
-         transformers transformers-base unix utf8-string zlib
-       ];
-       description = "Lambdabot core functionality";
-       license = "GPL";
-     }) {};
-
-  "lambdabot-core_5_3_0_2" = callPackage
-    ({ mkDerivation, base, binary, bytestring, containers
-     , dependent-map, dependent-sum, dependent-sum-template, directory
-     , edit-distance, exceptions, filepath, haskeline, hslogger, HTTP
-     , lifted-base, monad-control, mtl, network, network-bsd, parsec
-     , prim-uniq, random, random-fu, random-source, regex-tdfa
-     , SafeSemaphore, split, syb, template-haskell, time, transformers
-     , transformers-base, unix, utf8-string, zlib
-     }:
-     mkDerivation {
-       pname = "lambdabot-core";
        version = "5.3.0.2";
        sha256 = "1i375kiw98j5gd4pixh59lcqk0lakwmrgxzpkr0431a48kxffq7r";
        libraryHaskellDepends = [
@@ -159122,7 +159087,6 @@ self: {
        ];
        description = "Lambdabot core functionality";
        license = "GPL";
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "lambdabot-haskell-plugins" = callPackage
@@ -160080,27 +160044,6 @@ self: {
 
   "language-docker" = callPackage
     ({ mkDerivation, base, bytestring, containers, data-default-class
-     , hspec, HUnit, megaparsec, prettyprinter, QuickCheck, split, text
-     , time
-     }:
-     mkDerivation {
-       pname = "language-docker";
-       version = "10.0.1";
-       sha256 = "19pyms0ik37wpzjnlplj2vwikbjdjaw78llpfjp0a0467wlk7na6";
-       libraryHaskellDepends = [
-         base bytestring containers data-default-class megaparsec
-         prettyprinter split text time
-       ];
-       testHaskellDepends = [
-         base bytestring containers data-default-class hspec HUnit
-         megaparsec prettyprinter QuickCheck split text time
-       ];
-       description = "Dockerfile parser, pretty-printer and embedded DSL";
-       license = lib.licenses.gpl3Only;
-     }) {};
-
-  "language-docker_10_0_2" = callPackage
-    ({ mkDerivation, base, bytestring, containers, data-default-class
      , hspec, hspec-megaparsec, HUnit, megaparsec, prettyprinter
      , QuickCheck, split, text, time
      }:
@@ -160119,7 +160062,6 @@ self: {
        ];
        description = "Dockerfile parser, pretty-printer and embedded DSL";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "language-dockerfile" = callPackage
@@ -161159,23 +161101,6 @@ self: {
      }:
      mkDerivation {
        pname = "lapack-comfort-array";
-       version = "0.0.0.1";
-       sha256 = "0kn9bb3q772sbzm54rdqbqrmp21kck2gvc0xagi974dq7b1wilh1";
-       libraryHaskellDepends = [
-         base comfort-array lapack-ffi netlib-comfort-array netlib-ffi
-         storable-complex transformers
-       ];
-       description = "Auto-generated interface to Fortran LAPACK via comfort-array";
-       license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-     }) {};
-
-  "lapack-comfort-array_0_0_1" = callPackage
-    ({ mkDerivation, base, comfort-array, lapack-ffi
-     , netlib-comfort-array, netlib-ffi, storable-complex, transformers
-     }:
-     mkDerivation {
-       pname = "lapack-comfort-array";
        version = "0.0.1";
        sha256 = "1p4vfw95qnd48cbizncb7b7fgzkxbv7r3rp3ffw6r11wymhm67q0";
        libraryHaskellDepends = [
@@ -161271,11 +161196,42 @@ self: {
        description = "Efficiently hash (large) Haskell values";
        license = lib.licenses.bsd3;
        platforms = [
-         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+         "aarch64-darwin" "armv7l-linux" "i686-linux" "x86_64-darwin"
+         "x86_64-linux"
        ];
        maintainers = with lib.maintainers; [ sternenseemann ];
      }) {};
 
+  "large-records" = callPackage
+    ({ mkDerivation, aeson, base, containers, generic-deriving
+     , generics-sop, ghc-dump-core, haskell-src-exts, haskell-src-meta
+     , json-sop, microlens, mtl, newtype, QuickCheck
+     , record-dot-preprocessor, record-hasfield, sop-core, syb, tasty
+     , tasty-hunit, tasty-quickcheck, template-haskell, text
+     , transformers, vector
+     }:
+     mkDerivation {
+       pname = "large-records";
+       version = "0.1.0.0";
+       sha256 = "1l4j7vb3lckqn1cvyvcg6g3bnvi8x69nsjmkmmi7666025bxfw61";
+       revision = "1";
+       editedCabalFile = "1j89aypcp97vwb7qyg4n2ffilsp064z1w7kck1wh2rp69wk5r51n";
+       libraryHaskellDepends = [
+         aeson base containers generics-sop haskell-src-exts
+         haskell-src-meta microlens mtl record-hasfield sop-core syb
+         template-haskell text vector
+       ];
+       testHaskellDepends = [
+         aeson base generic-deriving generics-sop ghc-dump-core json-sop
+         microlens mtl newtype QuickCheck record-dot-preprocessor
+         record-hasfield sop-core tasty tasty-hunit tasty-quickcheck
+         template-haskell transformers vector
+       ];
+       testToolDepends = [ record-dot-preprocessor ];
+       description = "Efficient compilation for large records, linear in the size of the record";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "largeword" = callPackage
     ({ mkDerivation, base, binary, bytestring, HUnit, QuickCheck
      , test-framework, test-framework-hunit, test-framework-quickcheck2
@@ -165595,7 +165551,8 @@ self: {
        description = "Use SMT solvers to solve linear systems over integers and rationals";
        license = lib.licenses.bsd3;
        platforms = [
-         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+         "aarch64-darwin" "armv7l-linux" "i686-linux" "x86_64-darwin"
+         "x86_64-linux"
        ];
      }) {};
 
@@ -169871,7 +169828,6 @@ self: {
        ];
        description = "Core functionality for LTI 1.3.";
        license = lib.licenses.lgpl3Only;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "ltiv1p1" = callPackage
@@ -174208,7 +174164,6 @@ self: {
        ];
        description = "Sample from a posterior using Markov chain Monte Carlo";
        license = lib.licenses.gpl3Plus;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "mcmc-samplers" = callPackage
@@ -177859,25 +177814,6 @@ self: {
      }:
      mkDerivation {
        pname = "mixed-types-num";
-       version = "0.5.8.0";
-       sha256 = "1i40g6kf4my91i7xg54wfi6n2s8ivmx5k08ccqz3iycn6gha8pr7";
-       libraryHaskellDepends = [
-         base collect-errors hspec hspec-smallcheck mtl QuickCheck
-         smallcheck template-haskell
-       ];
-       testHaskellDepends = [
-         base collect-errors hspec hspec-smallcheck QuickCheck smallcheck
-       ];
-       description = "Alternative Prelude with numeric and logic expressions typed bottom-up";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "mixed-types-num_0_5_9_1" = callPackage
-    ({ mkDerivation, base, collect-errors, hspec, hspec-smallcheck, mtl
-     , QuickCheck, smallcheck, template-haskell
-     }:
-     mkDerivation {
-       pname = "mixed-types-num";
        version = "0.5.9.1";
        sha256 = "009hsagx0g1myf2jlljqnf96mwnz3a4jbcmrcjs0lizskprzj1n2";
        libraryHaskellDepends = [
@@ -177889,7 +177825,6 @@ self: {
        ];
        description = "Alternative Prelude with numeric and logic expressions typed bottom-up";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "mixpanel-client" = callPackage
@@ -179180,21 +179115,6 @@ self: {
      }:
      mkDerivation {
        pname = "monad-control";
-       version = "1.0.3";
-       sha256 = "16rdv4s85ni1xdbd8nzarm4sh331198jnmakrn5wxla9hrfwg2fi";
-       libraryHaskellDepends = [
-         base stm transformers transformers-base transformers-compat
-       ];
-       description = "Lift control operations, like exception catching, through monad transformers";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "monad-control_1_0_3_1" = callPackage
-    ({ mkDerivation, base, stm, transformers, transformers-base
-     , transformers-compat
-     }:
-     mkDerivation {
-       pname = "monad-control";
        version = "1.0.3.1";
        sha256 = "0g3if9km8ik80bcy130a826ig9wlk4bnf0qli3vmwdwr9nhaw2xf";
        libraryHaskellDepends = [
@@ -179202,7 +179122,6 @@ self: {
        ];
        description = "Lift control operations, like exception catching, through monad transformers";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "monad-control-aligned" = callPackage
@@ -179241,21 +179160,6 @@ self: {
      }:
      mkDerivation {
        pname = "monad-coroutine";
-       version = "0.9.1.2";
-       sha256 = "1s4975q1k23b2skyq9mwkkda08f2zxkv96x0yplzhz9n64kchhf3";
-       libraryHaskellDepends = [
-         base monad-parallel transformers transformers-compat
-       ];
-       description = "Coroutine monad transformer for suspending and resuming monadic computations";
-       license = "GPL";
-     }) {};
-
-  "monad-coroutine_0_9_1_3" = callPackage
-    ({ mkDerivation, base, monad-parallel, transformers
-     , transformers-compat
-     }:
-     mkDerivation {
-       pname = "monad-coroutine";
        version = "0.9.1.3";
        sha256 = "0ns8863695hm4yabd4908znpn1bqc7ayfnzl9bkkqhs70rff2dmh";
        libraryHaskellDepends = [
@@ -179263,7 +179167,6 @@ self: {
        ];
        description = "Coroutine monad transformer for suspending and resuming monadic computations";
        license = "GPL";
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "monad-dijkstra" = callPackage
@@ -179838,20 +179741,6 @@ self: {
      }:
      mkDerivation {
        pname = "monad-parallel";
-       version = "0.7.2.4";
-       sha256 = "1h36hwbk800v0cq2x8kxf7v3gkr8maws7ijxckvsqp480xr4r5xx";
-       libraryHaskellDepends = [
-         base parallel transformers transformers-compat
-       ];
-       description = "Parallel execution of monadic computations";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "monad-parallel_0_7_2_5" = callPackage
-    ({ mkDerivation, base, parallel, transformers, transformers-compat
-     }:
-     mkDerivation {
-       pname = "monad-parallel";
        version = "0.7.2.5";
        sha256 = "0yjn8acn8z8b1v5nnmwrmrcim9lqh942kgi2c03cnnklfdc1cqip";
        libraryHaskellDepends = [
@@ -179859,7 +179748,6 @@ self: {
        ];
        description = "Parallel execution of monadic computations";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "monad-parallel-progressbar" = callPackage
@@ -180163,6 +180051,17 @@ self: {
        broken = true;
      }) {};
 
+  "monad-tree" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "monad-tree";
+       version = "0.1.0";
+       sha256 = "1rjrcai2wqz3qkn3sk1fj6c0vvzk58gmghzwp9w9xvr09kd7zyd2";
+       libraryHaskellDepends = [ base ];
+       description = "Tree data structure for nondeterministic computations";
+       license = lib.licenses.mit;
+     }) {};
+
   "monad-tx" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -181020,8 +180919,8 @@ self: {
      }:
      mkDerivation {
        pname = "monomer";
-       version = "1.0.0.1";
-       sha256 = "1ns4zm1vny8r49k0iq77b75s17gqmzxjv3kj70a4k5j4jx5s70fr";
+       version = "1.0.0.2";
+       sha256 = "1m0c6ldc5sg2if4b21n7b13f5rpyws0vmw9nn8gjqly7rbq446az";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -181048,7 +180947,6 @@ self: {
        ];
        description = "A GUI library for writing native Haskell applications";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs) glew;};
 
   "monomorphic" = callPackage
@@ -182086,7 +181984,8 @@ self: {
        description = "Save your spot when watching movies with @mplayer@";
        license = lib.licenses.bsd3;
        platforms = [
-         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+         "aarch64-darwin" "armv7l-linux" "i686-linux" "x86_64-darwin"
+         "x86_64-linux"
        ];
      }) {};
 
@@ -184710,32 +184609,6 @@ self: {
      }:
      mkDerivation {
        pname = "mwc-random";
-       version = "0.15.0.1";
-       sha256 = "1p8c5g4hb72k90ai39rgpn6cr942i6636l1y0zfp9xgjb3v0a2q3";
-       revision = "2";
-       editedCabalFile = "0si7d23ycyg1072w10v06zh1xx4yy5jxwmrrs65inrs7fhdb1r28";
-       libraryHaskellDepends = [
-         base math-functions primitive random time vector
-       ];
-       testHaskellDepends = [
-         base bytestring doctest primitive QuickCheck random tasty
-         tasty-hunit tasty-quickcheck vector
-       ];
-       benchmarkHaskellDepends = [
-         base gauge mersenne-random random vector
-       ];
-       doCheck = false;
-       description = "Fast, high quality pseudo random number generation";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "mwc-random_0_15_0_2" = callPackage
-    ({ mkDerivation, base, bytestring, doctest, gauge, math-functions
-     , mersenne-random, primitive, QuickCheck, random, tasty
-     , tasty-hunit, tasty-quickcheck, time, vector
-     }:
-     mkDerivation {
-       pname = "mwc-random";
        version = "0.15.0.2";
        sha256 = "0ny2mw4am24d6ykrm8rbcjnrq6p2cjmzjb4m6qfk54wfdxflvmim";
        libraryHaskellDepends = [
@@ -184751,7 +184624,6 @@ self: {
        doCheck = false;
        description = "Fast, high quality pseudo random number generation";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "mwc-random-accelerate" = callPackage
@@ -185847,19 +185719,17 @@ self: {
      }:
      mkDerivation {
        pname = "nanovg";
-       version = "0.7.0.0";
-       sha256 = "1mrn5dy05nl5kkxw5vfgf57wifllq7jnv0akd1wi9wnlgvvqjnqz";
+       version = "0.8.0.0";
+       sha256 = "1il4305wv7f53225jv5s04nf7gf5rw6cfxm8j3v1di2xvhdingz5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base bytestring containers text vector ];
-       librarySystemDepends = [ freetype glew libGL libGLU libX11 ];
-       libraryPkgconfigDepends = [ glew ];
+       librarySystemDepends = [ glew libGL libGLU libX11 ];
+       libraryPkgconfigDepends = [ freetype glew ];
        libraryToolDepends = [ c2hs ];
        testHaskellDepends = [ base containers hspec inline-c QuickCheck ];
        description = "Haskell bindings for nanovg";
        license = lib.licenses.isc;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) freetype; inherit (pkgs) glew; 
          inherit (pkgs) libGL; inherit (pkgs) libGLU; 
          inherit (pkgs.xorg) libX11;};
@@ -185879,7 +185749,6 @@ self: {
        ];
        description = "Simple interface to rendering with NanoVG";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "nanq" = callPackage
@@ -187052,19 +186921,6 @@ self: {
     ({ mkDerivation, base, comfort-array, netlib-ffi, transformers }:
      mkDerivation {
        pname = "netlib-comfort-array";
-       version = "0.0.0.1";
-       sha256 = "0v4p1l8gjqkxncjrp6bv664x6xs3y6n5h76pvgccsja5rammwbp3";
-       libraryHaskellDepends = [
-         base comfort-array netlib-ffi transformers
-       ];
-       description = "Helper modules for comfort-array wrappers to BLAS and LAPACK";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "netlib-comfort-array_0_0_0_2" = callPackage
-    ({ mkDerivation, base, comfort-array, netlib-ffi, transformers }:
-     mkDerivation {
-       pname = "netlib-comfort-array";
        version = "0.0.0.2";
        sha256 = "1mwgdll9m0ryy5y1385sx2asff98kqfkz4bif8s4i0dkrqalsfx4";
        libraryHaskellDepends = [
@@ -187072,7 +186928,6 @@ self: {
        ];
        description = "Helper modules for comfort-array wrappers to BLAS and LAPACK";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "netlib-ffi" = callPackage
@@ -190578,6 +190433,22 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "not-prelude" = callPackage
+    ({ mkDerivation, base-noprelude, data-default, exceptions, failable
+     , mtl, text, transformers
+     }:
+     mkDerivation {
+       pname = "not-prelude";
+       version = "0.1.0.0";
+       sha256 = "0hb3ri6g1v21wi3saaai56b1a2r76g2dgaa7xqqchi31lh004131";
+       libraryHaskellDepends = [
+         base-noprelude data-default exceptions failable mtl text
+         transformers
+       ];
+       description = "An opinionated Prelude replacement library";
+       license = lib.licenses.mit;
+     }) {};
+
   "notcpp" = callPackage
     ({ mkDerivation, base, template-haskell }:
      mkDerivation {
@@ -193358,34 +193229,6 @@ self: {
      }:
      mkDerivation {
        pname = "opaleye";
-       version = "0.7.3.0";
-       sha256 = "0ls8hk8iy47hna1y7kbakzv9ihp61lv605f1ap4di95fv03wy288";
-       libraryHaskellDepends = [
-         aeson base base16-bytestring bytestring case-insensitive
-         contravariant postgresql-simple pretty product-profunctors
-         profunctors scientific semigroups text time time-locale-compat
-         transformers uuid void
-       ];
-       testHaskellDepends = [
-         aeson base bytestring containers contravariant dotenv hspec
-         hspec-discover multiset postgresql-simple product-profunctors
-         profunctors QuickCheck semigroups text time transformers uuid
-       ];
-       testToolDepends = [ hspec-discover ];
-       description = "An SQL-generating DSL targeting PostgreSQL";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "opaleye_0_7_4_0" = callPackage
-    ({ mkDerivation, aeson, base, base16-bytestring, bytestring
-     , case-insensitive, containers, contravariant, dotenv, hspec
-     , hspec-discover, multiset, postgresql-simple, pretty
-     , product-profunctors, profunctors, QuickCheck, scientific
-     , semigroups, text, time, time-locale-compat, transformers, uuid
-     , void
-     }:
-     mkDerivation {
-       pname = "opaleye";
        version = "0.7.4.0";
        sha256 = "1v4gxqnjacyj7npcvl70dzksgl12qrgwscv4l47kvzmf76i1x6rd";
        libraryHaskellDepends = [
@@ -193402,7 +193245,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "An SQL-generating DSL targeting PostgreSQL";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "opaleye-classy" = callPackage
@@ -197108,7 +196950,7 @@ self: {
        maintainers = with lib.maintainers; [ peti ];
      }) {};
 
-  "pandoc_2_14_1" = callPackage
+  "pandoc_2_14_2" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, array, attoparsec, base
      , base64-bytestring, binary, blaze-html, blaze-markup, bytestring
      , case-insensitive, citeproc, commonmark, commonmark-extensions
@@ -197116,19 +196958,19 @@ self: {
      , Diff, directory, doclayout, doctemplates, emojis, exceptions
      , file-embed, filepath, Glob, haddock-library, hslua
      , hslua-module-path, hslua-module-system, hslua-module-text, HsYAML
-     , HTTP, http-client, http-client-tls, http-types, ipynb
-     , jira-wiki-markup, JuicyPixels, mtl, network, network-uri
-     , pandoc-types, parsec, process, QuickCheck, random, safe
-     , scientific, SHA, skylighting, skylighting-core, split, syb
-     , tagsoup, tasty, tasty-bench, tasty-golden, tasty-hunit, tasty-lua
-     , tasty-quickcheck, temporary, texmath, text, text-conversions
-     , time, unicode-collation, unicode-transforms, unix
-     , unordered-containers, xml, xml-conduit, zip-archive, zlib
+     , http-client, http-client-tls, http-types, ipynb, jira-wiki-markup
+     , JuicyPixels, mtl, network, network-uri, pandoc-types, parsec
+     , process, QuickCheck, random, safe, scientific, SHA, skylighting
+     , skylighting-core, split, syb, tagsoup, tasty, tasty-bench
+     , tasty-golden, tasty-hunit, tasty-lua, tasty-quickcheck, temporary
+     , texmath, text, text-conversions, time, unicode-collation
+     , unicode-transforms, unix, unordered-containers, xml, xml-conduit
+     , zip-archive, zlib
      }:
      mkDerivation {
        pname = "pandoc";
-       version = "2.14.1";
-       sha256 = "1jj011az45zpd201f3dwb90m22p60nv5bmpbh39li885xwv46qyq";
+       version = "2.14.2";
+       sha256 = "1bjw5di5dwfpnxgkj2qmri8f1nv6yin23cd8s38chwan29vd7xrc";
        configureFlags = [ "-fhttps" "-f-trypandoc" ];
        isLibrary = true;
        isExecutable = true;
@@ -197139,7 +196981,7 @@ self: {
          commonmark commonmark-extensions commonmark-pandoc connection
          containers data-default deepseq directory doclayout doctemplates
          emojis exceptions file-embed filepath Glob haddock-library hslua
-         hslua-module-path hslua-module-system hslua-module-text HsYAML HTTP
+         hslua-module-path hslua-module-system hslua-module-text HsYAML
          http-client http-client-tls http-types ipynb jira-wiki-markup
          JuicyPixels mtl network network-uri pandoc-types parsec process
          random safe scientific SHA skylighting skylighting-core split syb
@@ -197575,6 +197417,41 @@ self: {
        license = lib.licenses.gpl2Plus;
      }) {};
 
+  "pandoc-plot_1_3_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, criterion
+     , data-default, directory, filepath, gitrev, hashable, hspec
+     , hspec-expectations, lifted-async, lifted-base, mtl
+     , optparse-applicative, pandoc, pandoc-types, shakespeare, tagsoup
+     , tasty, tasty-hspec, tasty-hunit, template-haskell, text
+     , typed-process, unix, yaml
+     }:
+     mkDerivation {
+       pname = "pandoc-plot";
+       version = "1.3.0";
+       sha256 = "0d33cbw0ygsdwh718q7q5gw2s6565dbrjwi3rz0qdf78q14wiayi";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring containers data-default directory filepath hashable
+         lifted-async lifted-base mtl pandoc pandoc-types shakespeare
+         tagsoup template-haskell text typed-process unix yaml
+       ];
+       executableHaskellDepends = [
+         base containers directory filepath gitrev optparse-applicative
+         pandoc pandoc-types template-haskell text typed-process
+       ];
+       testHaskellDepends = [
+         base containers directory filepath hspec hspec-expectations
+         pandoc-types tasty tasty-hspec tasty-hunit text
+       ];
+       benchmarkHaskellDepends = [
+         base criterion pandoc-types template-haskell text
+       ];
+       description = "A Pandoc filter to include figures generated from code blocks using your plotting toolkit of choice";
+       license = lib.licenses.gpl2Plus;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "pandoc-pyplot" = callPackage
     ({ mkDerivation, base, containers, data-default-class, deepseq
      , directory, filepath, hashable, hspec, hspec-expectations, mtl
@@ -199759,7 +199636,9 @@ self: {
        ];
        description = "Hashing and checking of passwords";
        license = lib.licenses.bsd3;
-       platforms = [ "i686-linux" "x86_64-darwin" "x86_64-linux" ];
+       platforms = [
+         "aarch64-darwin" "i686-linux" "x86_64-darwin" "x86_64-linux"
+       ];
        maintainers = with lib.maintainers; [ cdepillabout ];
      }) {};
 
@@ -199784,7 +199663,9 @@ self: {
        ];
        description = "typeclass instances for password package";
        license = lib.licenses.bsd3;
-       platforms = [ "i686-linux" "x86_64-darwin" "x86_64-linux" ];
+       platforms = [
+         "aarch64-darwin" "i686-linux" "x86_64-darwin" "x86_64-linux"
+       ];
        maintainers = with lib.maintainers; [ cdepillabout ];
      }) {};
 
@@ -200787,24 +200668,25 @@ self: {
        license = lib.licenses.asl20;
      }) {};
 
-  "pcre2_2_0_0" = callPackage
-    ({ mkDerivation, base, containers, criterion, hspec
+  "pcre2_2_0_1" = callPackage
+    ({ mkDerivation, base, containers, criterion, hspec, microlens
      , microlens-platform, mtl, pcre-light, regex-pcre-builtin
      , template-haskell, text
      }:
      mkDerivation {
        pname = "pcre2";
-       version = "2.0.0";
-       sha256 = "1jkyc2s3x5n7zrw9b78gk8jj262xfmg8cva2gr7mlzzl0hd9r11y";
+       version = "2.0.1";
+       sha256 = "0f93z99qhlhyvq7xsfn0nap9cxpxg2hs7790jqc5hi5kmqxlwvmy";
        libraryHaskellDepends = [
-         base containers mtl template-haskell text
+         base containers microlens mtl template-haskell text
        ];
        testHaskellDepends = [
-         base containers hspec microlens-platform mtl template-haskell text
+         base containers hspec microlens microlens-platform mtl
+         template-haskell text
        ];
        benchmarkHaskellDepends = [
-         base containers criterion microlens-platform mtl pcre-light
-         regex-pcre-builtin template-haskell text
+         base containers criterion microlens microlens-platform mtl
+         pcre-light regex-pcre-builtin template-haskell text
        ];
        description = "Regular expressions via the PCRE2 C library (included)";
        license = lib.licenses.asl20;
@@ -201959,7 +201841,9 @@ self: {
        ];
        description = "Serialization library with state and leb128 encoding";
        license = lib.licenses.bsd3;
-       platforms = [ "i686-linux" "x86_64-darwin" "x86_64-linux" ];
+       platforms = [
+         "aarch64-darwin" "i686-linux" "x86_64-darwin" "x86_64-linux"
+       ];
      }) {};
 
   "persist2er" = callPackage
@@ -204517,8 +204401,8 @@ self: {
      }:
      mkDerivation {
        pname = "pinned-warnings";
-       version = "0.1.0.6";
-       sha256 = "1n0h2v71x3j0wn0g2f3zq3xw681s16hl7ffywi83z50hacd8x6kx";
+       version = "0.1.0.8";
+       sha256 = "0ky5lqvf1bfbjzblqgnj47jhkxw4fb7gz7k268hnf41gfnbsy3i4";
        libraryHaskellDepends = [
          base bytestring containers directory ghc time transformers
        ];
@@ -212008,27 +211892,6 @@ self: {
 
   "primitive" = callPackage
     ({ mkDerivation, base, base-orphans, deepseq, ghc-prim, QuickCheck
-     , quickcheck-classes-base, semigroups, tagged, tasty
-     , tasty-quickcheck, transformers, transformers-compat
-     }:
-     mkDerivation {
-       pname = "primitive";
-       version = "0.7.1.0";
-       sha256 = "1w53i4mk248g58xrffmksznr4nmn2bbbycajzpcqfxx5ybyyrsvb";
-       revision = "3";
-       editedCabalFile = "03vgkhib8w3g0m0zwpz74hsixrf0pvgh6ql0xcy05fpq1kynppi9";
-       libraryHaskellDepends = [ base deepseq transformers ];
-       testHaskellDepends = [
-         base base-orphans ghc-prim QuickCheck quickcheck-classes-base
-         semigroups tagged tasty tasty-quickcheck transformers
-         transformers-compat
-       ];
-       description = "Primitive memory-related operations";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "primitive_0_7_2_0" = callPackage
-    ({ mkDerivation, base, base-orphans, deepseq, ghc-prim, QuickCheck
      , quickcheck-classes-base, tagged, tasty, tasty-quickcheck
      , transformers, transformers-compat
      }:
@@ -212043,7 +211906,6 @@ self: {
        ];
        description = "Primitive memory-related operations";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "primitive-addr" = callPackage
@@ -224882,21 +224744,6 @@ self: {
      }:
      mkDerivation {
        pname = "replace-attoparsec";
-       version = "1.4.4.0";
-       sha256 = "06js4adbzvm2qn18vlaaxhav2dq1hqp825lmsvpg69cylp72fzif";
-       libraryHaskellDepends = [ attoparsec base bytestring text ];
-       testHaskellDepends = [
-         attoparsec base bytestring Cabal parsers text
-       ];
-       description = "Find, replace, and split string patterns with Attoparsec parsers (instead of regex)";
-       license = lib.licenses.bsd2;
-     }) {};
-
-  "replace-attoparsec_1_4_5_0" = callPackage
-    ({ mkDerivation, attoparsec, base, bytestring, Cabal, parsers, text
-     }:
-     mkDerivation {
-       pname = "replace-attoparsec";
        version = "1.4.5.0";
        sha256 = "1mr7d6w5x6igsvl6mccchr2wbxxr5p86kpyxlbk7m17dplvwazcq";
        libraryHaskellDepends = [ attoparsec base bytestring text ];
@@ -224905,7 +224752,6 @@ self: {
        ];
        description = "Find, replace, and split string patterns with Attoparsec parsers (instead of regex)";
        license = lib.licenses.bsd2;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "replace-megaparsec" = callPackage
@@ -225198,32 +225044,6 @@ self: {
 
   "req-conduit" = callPackage
     ({ mkDerivation, base, bytestring, conduit, conduit-extra, hspec
-     , http-client, req, resourcet, temporary, transformers, weigh
-     }:
-     mkDerivation {
-       pname = "req-conduit";
-       version = "1.0.0";
-       sha256 = "193bv4jp7rrbpb1i9as9s2l978wz5kbz5kvr7ppllif5ppj699qx";
-       revision = "8";
-       editedCabalFile = "1md7zajmw87qrx6rvs35yrkbjs3s9nm0akg35jmf7a34xccrr7a7";
-       libraryHaskellDepends = [
-         base bytestring conduit http-client req resourcet transformers
-       ];
-       testHaskellDepends = [
-         base bytestring conduit conduit-extra hspec req resourcet temporary
-         transformers
-       ];
-       benchmarkHaskellDepends = [
-         base bytestring conduit conduit-extra req resourcet temporary weigh
-       ];
-       description = "Conduit helpers for the req HTTP client library";
-       license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {};
-
-  "req-conduit_1_0_1" = callPackage
-    ({ mkDerivation, base, bytestring, conduit, conduit-extra, hspec
      , hspec-discover, http-client, req, resourcet, temporary
      , transformers, weigh
      }:
@@ -225730,22 +225550,6 @@ self: {
      }:
      mkDerivation {
        pname = "resourcet";
-       version = "1.2.4.2";
-       sha256 = "11zb4figcs22hjaq6zsknf70kf9k2bxnw6w03ab9kl9s0i10iwhp";
-       libraryHaskellDepends = [
-         base containers exceptions mtl primitive transformers unliftio-core
-       ];
-       testHaskellDepends = [ base exceptions hspec transformers ];
-       description = "Deterministic allocation and freeing of scarce resources";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "resourcet_1_2_4_3" = callPackage
-    ({ mkDerivation, base, containers, exceptions, hspec, mtl
-     , primitive, transformers, unliftio-core
-     }:
-     mkDerivation {
-       pname = "resourcet";
        version = "1.2.4.3";
        sha256 = "0zrvnikw1a0r2j59k12fxikyrg0ki5a7xhqhjgfl9h6dqpz54h85";
        libraryHaskellDepends = [
@@ -225754,7 +225558,6 @@ self: {
        testHaskellDepends = [ base exceptions hspec transformers ];
        description = "Deterministic allocation and freeing of scarce resources";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "resourcet-pool" = callPackage
@@ -226221,6 +226024,47 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "retroclash-lib" = callPackage
+    ({ mkDerivation, barbies, base, clash-ghc, clash-lib, clash-prelude
+     , containers, ghc-typelits-extra, ghc-typelits-knownnat
+     , ghc-typelits-natnormalise, lens, lift-type, monoidal-containers
+     , mtl, template-haskell, transformers
+     }:
+     mkDerivation {
+       pname = "retroclash-lib";
+       version = "0.1.0";
+       sha256 = "062pjqhba41d4bb9gb8wxpd87mpsmzj3np8y9ymagjrnv5iyaf5w";
+       libraryHaskellDepends = [
+         barbies base clash-ghc clash-lib clash-prelude containers
+         ghc-typelits-extra ghc-typelits-knownnat ghc-typelits-natnormalise
+         lens lift-type monoidal-containers mtl template-haskell
+         transformers
+       ];
+       description = "Code shared across the code samples in the book \"Retrocomputing with Clash\"";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
+  "retroclash-sim" = callPackage
+    ({ mkDerivation, array, arrows, base, clash-ghc, clash-lib
+     , clash-prelude, ghc-typelits-extra, ghc-typelits-knownnat
+     , ghc-typelits-natnormalise, lens, mtl, retroclash-lib, sdl2, text
+     , transformers
+     }:
+     mkDerivation {
+       pname = "retroclash-sim";
+       version = "0.1.0";
+       sha256 = "1wv8is17ds9y49an832dlgixly9b98h8x6ybc5dj7zzf1jwplyp8";
+       libraryHaskellDepends = [
+         array arrows base clash-ghc clash-lib clash-prelude
+         ghc-typelits-extra ghc-typelits-knownnat ghc-typelits-natnormalise
+         lens mtl retroclash-lib sdl2 text transformers
+       ];
+       description = "High-level simulators from the book \"Retrocomputing with Clash\"";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "retry" = callPackage
     ({ mkDerivation, base, exceptions, ghc-prim, hedgehog, HUnit, mtl
      , random, stm, tasty, tasty-hedgehog, tasty-hunit, time
@@ -227165,32 +227009,6 @@ self: {
 
   "rio" = callPackage
     ({ mkDerivation, base, bytestring, containers, deepseq, directory
-     , exceptions, filepath, hashable, hspec, microlens, microlens-mtl
-     , mtl, primitive, process, QuickCheck, text, time, typed-process
-     , unix, unliftio, unliftio-core, unordered-containers, vector
-     }:
-     mkDerivation {
-       pname = "rio";
-       version = "0.1.20.0";
-       sha256 = "0x5b5c0y97b5n1lvbcsqlkhbv4nbbznx1w1fp3a17a03pz7qf61s";
-       libraryHaskellDepends = [
-         base bytestring containers deepseq directory exceptions filepath
-         hashable microlens microlens-mtl mtl primitive process text time
-         typed-process unix unliftio unliftio-core unordered-containers
-         vector
-       ];
-       testHaskellDepends = [
-         base bytestring containers deepseq directory exceptions filepath
-         hashable hspec microlens microlens-mtl mtl primitive process
-         QuickCheck text time typed-process unix unliftio unliftio-core
-         unordered-containers vector
-       ];
-       description = "A standard library for Haskell";
-       license = lib.licenses.mit;
-     }) {};
-
-  "rio_0_1_21_0" = callPackage
-    ({ mkDerivation, base, bytestring, containers, deepseq, directory
      , exceptions, filepath, hashable, hspec, hspec-discover, microlens
      , microlens-mtl, mtl, primitive, process, QuickCheck, text, time
      , typed-process, unix, unliftio, unliftio-core
@@ -227215,7 +227033,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "A standard library for Haskell";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "rio-app" = callPackage
@@ -231350,7 +231167,8 @@ self: {
        description = "SMT Based Verification: Symbolic Haskell theorem prover using SMT solving";
        license = lib.licenses.bsd3;
        platforms = [
-         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+         "aarch64-darwin" "armv7l-linux" "i686-linux" "x86_64-darwin"
+         "x86_64-linux"
        ];
        hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs) z3;};
@@ -231385,8 +231203,45 @@ self: {
        description = "SMT Based Verification: Symbolic Haskell theorem prover using SMT solving";
        license = lib.licenses.bsd3;
        platforms = [
-         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+         "aarch64-darwin" "armv7l-linux" "i686-linux" "x86_64-darwin"
+         "x86_64-linux"
+       ];
+     }) {inherit (pkgs) z3;};
+
+  "sbv_8_16" = callPackage
+    ({ mkDerivation, array, async, base, bench-show, bytestring
+     , containers, deepseq, directory, doctest, filepath, gauge, Glob
+     , hlint, libBF, mtl, pretty, process, QuickCheck, random, silently
+     , syb, tasty, tasty-golden, tasty-hunit, tasty-quickcheck
+     , template-haskell, text, time, transformers, uniplate, z3
+     }:
+     mkDerivation {
+       pname = "sbv";
+       version = "8.16";
+       sha256 = "1jmcc9qz659my5i3ir6lq34zfbjp9wcnq61fppic1hlwm39qjppd";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         array async base containers deepseq directory filepath libBF mtl
+         pretty process QuickCheck random syb template-haskell text time
+         transformers uniplate
+       ];
+       testHaskellDepends = [
+         base bytestring containers directory doctest filepath Glob hlint
+         mtl QuickCheck random tasty tasty-golden tasty-hunit
+         tasty-quickcheck
+       ];
+       testSystemDepends = [ z3 ];
+       benchmarkHaskellDepends = [
+         base bench-show containers deepseq directory filepath gauge mtl
+         process random silently syb text time
+       ];
+       description = "SMT Based Verification: Symbolic Haskell theorem prover using SMT solving";
+       license = lib.licenses.bsd3;
+       platforms = [
+         "aarch64-darwin" "armv7l-linux" "i686-linux" "x86_64-darwin"
+         "x86_64-linux"
        ];
+       hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs) z3;};
 
   "sbvPlugin" = callPackage
@@ -231748,7 +231603,9 @@ self: {
        ];
        description = "Generates unique passwords for various websites from a single password";
        license = lib.licenses.bsd3;
-       platforms = [ "i686-linux" "x86_64-darwin" "x86_64-linux" ];
+       platforms = [
+         "aarch64-darwin" "i686-linux" "x86_64-darwin" "x86_64-linux"
+       ];
      }) {};
 
   "scc" = callPackage
@@ -232931,7 +232788,9 @@ self: {
        ];
        description = "Stronger password hashing via sequential memory-hard functions";
        license = lib.licenses.bsd3;
-       platforms = [ "i686-linux" "x86_64-darwin" "x86_64-linux" ];
+       platforms = [
+         "aarch64-darwin" "i686-linux" "x86_64-darwin" "x86_64-linux"
+       ];
      }) {};
 
   "scrz" = callPackage
@@ -240294,6 +240153,30 @@ self: {
        broken = true;
      }) {};
 
+  "shortbytestring" = callPackage
+    ({ mkDerivation, base, bytestring, deepseq, exceptions, ghc-prim
+     , primitive, random, tasty, tasty-bench, tasty-quickcheck
+     , template-haskell, text, word16, word8
+     }:
+     mkDerivation {
+       pname = "shortbytestring";
+       version = "0.1.0.0";
+       sha256 = "1wjk73xlrk0qgnn8j53ngnikh034v295mm7w9nqadvwg9y3absfy";
+       libraryHaskellDepends = [
+         base bytestring exceptions primitive template-haskell text word16
+         word8
+       ];
+       testHaskellDepends = [
+         base bytestring deepseq ghc-prim tasty tasty-quickcheck word16
+         word8
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring deepseq random tasty-bench
+       ];
+       description = "Additional ShortByteString API";
+       license = lib.licenses.mit;
+     }) {};
+
   "shortcircuit" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -246608,6 +246491,18 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "some-dict-of" = callPackage
+    ({ mkDerivation, base, constraints }:
+     mkDerivation {
+       pname = "some-dict-of";
+       version = "0.1.0.0";
+       sha256 = "0c7gr41fqak777wnh0q81mkpv89j6m1q3qqca5r2mzqhkqli4d4d";
+       libraryHaskellDepends = [ base constraints ];
+       testHaskellDepends = [ base constraints ];
+       description = "Carry evidence of constraints around";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "sonic-visualiser" = callPackage
     ({ mkDerivation, array, base, bytestring, bzlib, containers, mtl
      , pretty, utf8-string, xml
@@ -248861,6 +248756,8 @@ self: {
        pname = "srt-dhall";
        version = "0.1.0.0";
        sha256 = "16ygxiqb9d0js3gr4823fdkk8pzsairby6iywnvsafas1qvhm0yp";
+       revision = "1";
+       editedCabalFile = "0y1x65mmhsa78svk19nwf7211fny9c4w3gf9d31d10j9bglyly8f";
        libraryHaskellDepends = [
          attoparsec base dhall either formatting simple-media-timestamp
          simple-media-timestamp-formatting srt srt-attoparsec srt-formatting
@@ -251928,54 +251825,6 @@ self: {
      }:
      mkDerivation {
        pname = "store";
-       version = "0.7.11";
-       sha256 = "03i9gd18xqbfmj5kmiv4k4sw44gn6mn4faj71r2723abm3qwklwr";
-       libraryHaskellDepends = [
-         array async base base-orphans base64-bytestring bifunctors
-         bytestring containers contravariant cryptohash deepseq directory
-         filepath free ghc-prim hashable hspec hspec-smallcheck integer-gmp
-         lifted-base monad-control mono-traversable nats network primitive
-         resourcet safe smallcheck store-core syb template-haskell text
-         th-lift th-lift-instances th-orphans th-reify-many th-utilities
-         time transformers unordered-containers vector void
-       ];
-       testHaskellDepends = [
-         array async base base-orphans base64-bytestring bifunctors
-         bytestring clock containers contravariant cryptohash deepseq
-         directory filepath free ghc-prim hashable hspec hspec-smallcheck
-         integer-gmp lifted-base monad-control mono-traversable nats network
-         primitive resourcet safe smallcheck store-core syb template-haskell
-         text th-lift th-lift-instances th-orphans th-reify-many
-         th-utilities time transformers unordered-containers vector void
-       ];
-       benchmarkHaskellDepends = [
-         array async base base-orphans base64-bytestring bifunctors
-         bytestring cereal cereal-vector containers contravariant criterion
-         cryptohash deepseq directory filepath free ghc-prim hashable hspec
-         hspec-smallcheck integer-gmp lifted-base monad-control
-         mono-traversable nats network primitive resourcet safe smallcheck
-         store-core syb template-haskell text th-lift th-lift-instances
-         th-orphans th-reify-many th-utilities time transformers
-         unordered-containers vector vector-binary-instances void weigh
-       ];
-       description = "Fast binary serialization";
-       license = lib.licenses.mit;
-     }) {};
-
-  "store_0_7_12" = callPackage
-    ({ mkDerivation, array, async, base, base-orphans
-     , base64-bytestring, bifunctors, bytestring, cereal, cereal-vector
-     , clock, containers, contravariant, criterion, cryptohash, deepseq
-     , directory, filepath, free, ghc-prim, hashable, hspec
-     , hspec-smallcheck, integer-gmp, lifted-base, monad-control
-     , mono-traversable, nats, network, primitive, resourcet, safe
-     , smallcheck, store-core, syb, template-haskell, text, th-lift
-     , th-lift-instances, th-orphans, th-reify-many, th-utilities, time
-     , transformers, unordered-containers, vector
-     , vector-binary-instances, void, weigh
-     }:
-     mkDerivation {
-       pname = "store";
        version = "0.7.12";
        sha256 = "1r6wajaxjlh38bivzmcdx8p0x89g04p6alddlibpa356drzl3jbp";
        libraryHaskellDepends = [
@@ -252008,7 +251857,6 @@ self: {
        ];
        description = "Fast binary serialization";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "store-core" = callPackage
@@ -259523,6 +259371,24 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "tasty_1_4_2" = callPackage
+    ({ mkDerivation, ansi-terminal, base, clock, containers, mtl
+     , optparse-applicative, stm, tagged, unbounded-delays, unix
+     , wcwidth
+     }:
+     mkDerivation {
+       pname = "tasty";
+       version = "1.4.2";
+       sha256 = "0574hbqzxzyv6vsk5kzbf04kz58y0iy8x9ydcj4b8fpncgmgy63g";
+       libraryHaskellDepends = [
+         ansi-terminal base clock containers mtl optparse-applicative stm
+         tagged unbounded-delays unix wcwidth
+       ];
+       description = "Modern and extensible testing framework";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "tasty-ant-xml" = callPackage
     ({ mkDerivation, base, containers, directory, filepath
      , generic-deriving, ghc-prim, mtl, stm, tagged, tasty, transformers
@@ -259639,23 +259505,11 @@ self: {
     ({ mkDerivation, base, dejafu, random, tagged, tasty }:
      mkDerivation {
        pname = "tasty-dejafu";
-       version = "2.0.0.7";
-       sha256 = "0jzaqra7gsrvy33j1g6bnrwg7x5pyg5p50l5mgvpz71kd946725l";
-       libraryHaskellDepends = [ base dejafu random tagged tasty ];
-       description = "Deja Fu support for the Tasty test framework";
-       license = lib.licenses.mit;
-     }) {};
-
-  "tasty-dejafu_2_0_0_8" = callPackage
-    ({ mkDerivation, base, dejafu, random, tagged, tasty }:
-     mkDerivation {
-       pname = "tasty-dejafu";
        version = "2.0.0.8";
        sha256 = "0v0vkbj8nr4jg62a5c0qygj1pjkz1vnssiicafv87qis02j36myx";
        libraryHaskellDepends = [ base dejafu random tagged tasty ];
        description = "Deja Fu support for the Tasty test framework";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "tasty-discover" = callPackage
@@ -262916,28 +262770,6 @@ self: {
      }:
      mkDerivation {
        pname = "texmath";
-       version = "0.12.3";
-       sha256 = "0lhbgnswhss56lrp25i70hvmn6zg6xcfwdigfmwjggmhz0h5q88x";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         base containers mtl pandoc-types parsec split syb text xml
-       ];
-       testHaskellDepends = [
-         base bytestring directory filepath process temporary text
-         utf8-string xml
-       ];
-       description = "Conversion between formats used to represent mathematics";
-       license = lib.licenses.gpl2Only;
-     }) {};
-
-  "texmath_0_12_3_1" = callPackage
-    ({ mkDerivation, base, bytestring, containers, directory, filepath
-     , mtl, pandoc-types, parsec, process, split, syb, temporary, text
-     , utf8-string, xml
-     }:
-     mkDerivation {
-       pname = "texmath";
        version = "0.12.3.1";
        sha256 = "1qyiihb9h7w7074p495yd4s8dj9adz0dy865gyp822z69jvmkcki";
        isLibrary = true;
@@ -262951,7 +262783,6 @@ self: {
        ];
        description = "Conversion between formats used to represent mathematics";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "texrunner" = callPackage
@@ -263457,6 +263288,22 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "text-metrics_0_3_1" = callPackage
+    ({ mkDerivation, base, containers, criterion, deepseq, hspec
+     , QuickCheck, text, vector, weigh
+     }:
+     mkDerivation {
+       pname = "text-metrics";
+       version = "0.3.1";
+       sha256 = "17bp1lnbkqr5ykrcd6v5sqv0fhljck7hky8zrrpw7rlkb1f3sdc2";
+       libraryHaskellDepends = [ base containers text vector ];
+       testHaskellDepends = [ base hspec QuickCheck text ];
+       benchmarkHaskellDepends = [ base criterion deepseq text weigh ];
+       description = "Calculate various string metrics efficiently";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "text-normal" = callPackage
     ({ mkDerivation, base, deepseq, hspec, QuickCheck
      , quickcheck-instances, text, text-icu
@@ -265577,6 +265424,28 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "ticket-management" = callPackage
+    ({ mkDerivation, base, bytestring, cereal, containers, directory
+     , optparse-applicative, QuickCheck, text, time, unliftio
+     }:
+     mkDerivation {
+       pname = "ticket-management";
+       version = "0.2.0.0";
+       sha256 = "0cbdkjjh2sfsj4cjgxvxjrva6rb0gli36q3g8idhwf7wa2llyz4w";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring cereal containers directory optparse-applicative
+         QuickCheck text time unliftio
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [ base QuickCheck text ];
+       description = "A basic implementation of a personal ticket management system";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "tickle" = callPackage
     ({ mkDerivation, base, bifunctors, bytestring, checkers, filepath
      , lens, mtl, papa, QuickCheck, semigroupoids, semigroups, tasty
@@ -267094,27 +266963,6 @@ self: {
      }:
      mkDerivation {
        pname = "tldr";
-       version = "0.9.0";
-       sha256 = "0dixx8i6ka3ksfcr6bjybs1i3ry0wpiffsmskh56cxxcys0jgm5h";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         ansi-terminal base bytestring cmark containers directory filepath
-         http-conduit optparse-applicative semigroups text time zip-archive
-       ];
-       executableHaskellDepends = [ base ];
-       testHaskellDepends = [ base tasty tasty-golden ];
-       description = "Haskell tldr client";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "tldr_0_9_1" = callPackage
-    ({ mkDerivation, ansi-terminal, base, bytestring, cmark, containers
-     , directory, filepath, http-conduit, optparse-applicative
-     , semigroups, tasty, tasty-golden, text, time, zip-archive
-     }:
-     mkDerivation {
-       pname = "tldr";
        version = "0.9.1";
        sha256 = "0xgj3mf51iv68fhgyrjvxfmzrbcwnk7siaynm213x0kgcyvkwbz0";
        isLibrary = true;
@@ -267127,7 +266975,6 @@ self: {
        testHaskellDepends = [ base tasty tasty-golden ];
        description = "Haskell tldr client";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "tlex" = callPackage
@@ -269125,23 +268972,6 @@ self: {
      }:
      mkDerivation {
        pname = "transformers-base";
-       version = "0.4.5.2";
-       sha256 = "1s256bi0yh0x2hp2gwd30f3mg1cv53zz397dv1yhfsnfzmihrj6h";
-       revision = "1";
-       editedCabalFile = "18j122ypx12rbl9bbf622fvj8nif4rsci8z4qw2llmznbvfl09s0";
-       libraryHaskellDepends = [
-         base base-orphans stm transformers transformers-compat
-       ];
-       description = "Lift computations from the bottom of a transformer stack";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "transformers-base_0_4_6" = callPackage
-    ({ mkDerivation, base, base-orphans, stm, transformers
-     , transformers-compat
-     }:
-     mkDerivation {
-       pname = "transformers-base";
        version = "0.4.6";
        sha256 = "146g69yxmlrmvqnzwcw4frxfl3z04lda9zqwcqib34dnkrlghfrj";
        libraryHaskellDepends = [
@@ -269149,7 +268979,6 @@ self: {
        ];
        description = "Lift computations from the bottom of a transformer stack";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "transformers-bifunctors" = callPackage
@@ -270833,6 +270662,23 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "ttc_1_1_0_2" = callPackage
+    ({ mkDerivation, base, bytestring, tasty, tasty-hunit
+     , template-haskell, text
+     }:
+     mkDerivation {
+       pname = "ttc";
+       version = "1.1.0.2";
+       sha256 = "0i1jnign6xb0i4y5rkwz2rp2lj7q3r50i4bkjghz8i2djw2sd1cw";
+       libraryHaskellDepends = [ base bytestring template-haskell text ];
+       testHaskellDepends = [
+         base bytestring tasty tasty-hunit template-haskell text
+       ];
+       description = "Textual Type Classes";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "ttl-hashtables" = callPackage
     ({ mkDerivation, base, clock, containers, data-default, failable
      , hashable, hashtables, hspec, mtl, transformers
@@ -272214,27 +272060,12 @@ self: {
     ({ mkDerivation, base, doctest, Glob }:
      mkDerivation {
        pname = "type-errors-pretty";
-       version = "0.0.1.1";
-       sha256 = "1z6rqah3qnvnlckcw3xhsp4yyfd21harw6kzqbz20y6k7a22jlf0";
-       revision = "1";
-       editedCabalFile = "1qfm0018ids9s7kdwf6d3r1cwnb5aqn55in4vdwklas3ydi8mmrx";
-       libraryHaskellDepends = [ base ];
-       testHaskellDepends = [ base doctest Glob ];
-       description = "Combinators for writing pretty type errors easily";
-       license = lib.licenses.mpl20;
-     }) {};
-
-  "type-errors-pretty_0_0_1_2" = callPackage
-    ({ mkDerivation, base, doctest, Glob }:
-     mkDerivation {
-       pname = "type-errors-pretty";
        version = "0.0.1.2";
        sha256 = "01zdb5mw77d5rj3yvabqdch132mjw49awpjnjvms20hdhwjgqb6b";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base doctest Glob ];
        description = "Combinators for writing pretty type errors easily";
        license = lib.licenses.mpl20;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "type-fun" = callPackage
@@ -272906,25 +272737,6 @@ self: {
      }:
      mkDerivation {
        pname = "typed-process";
-       version = "0.2.6.0";
-       sha256 = "1cf2pfym8zdxvvy7xv72ixj7wy3rjrdss6f57k1ysgs66cgsi8ii";
-       libraryHaskellDepends = [
-         async base bytestring process stm transformers unliftio-core
-       ];
-       testHaskellDepends = [
-         async base base64-bytestring bytestring hspec process stm temporary
-         transformers unliftio-core
-       ];
-       description = "Run external processes, with strong typing of streams";
-       license = lib.licenses.mit;
-     }) {};
-
-  "typed-process_0_2_6_1" = callPackage
-    ({ mkDerivation, async, base, base64-bytestring, bytestring, hspec
-     , process, stm, temporary, transformers, unliftio-core
-     }:
-     mkDerivation {
-       pname = "typed-process";
        version = "0.2.6.1";
        sha256 = "0w4c76qln49967nnhf7f1zj3gbdfqp2qgf5ym8svhqyhp5gh61ws";
        libraryHaskellDepends = [
@@ -272936,7 +272748,6 @@ self: {
        ];
        description = "Run external processes, with strong typing of streams";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "typed-spreadsheet" = callPackage
@@ -278219,6 +278030,22 @@ self: {
        broken = true;
      }) {};
 
+  "valida" = callPackage
+    ({ mkDerivation, base, smallcheck, tasty, tasty-hunit
+     , tasty-quickcheck, tasty-smallcheck
+     }:
+     mkDerivation {
+       pname = "valida";
+       version = "0.1.0";
+       sha256 = "1spdf40jcm9b6ah18m5nw550x2mlq4bjmqvscf4cnjpc7izdmdng";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [
+         base smallcheck tasty tasty-hunit tasty-quickcheck tasty-smallcheck
+       ];
+       description = "Simple applicative validation for product types, batteries included!";
+       license = lib.licenses.mit;
+     }) {};
+
   "validate" = callPackage
     ({ mkDerivation }:
      mkDerivation {
@@ -279814,7 +279641,8 @@ self: {
        description = "An intermediate language for Hoare logic style verification";
        license = lib.licenses.asl20;
        platforms = [
-         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+         "aarch64-darwin" "armv7l-linux" "i686-linux" "x86_64-darwin"
+         "x86_64-linux"
        ];
      }) {};
 
@@ -281116,8 +280944,8 @@ self: {
      }:
      mkDerivation {
        pname = "vulkan";
-       version = "3.12.1";
-       sha256 = "0y9ykv0dx5hvh2683yyn8mdl3jxqk9zaf2a1rkyr5zgc43wsbm05";
+       version = "3.12.2";
+       sha256 = "1vypjnwvvvd0rw99qsb00jnwpq792s9x1wi62zdyzq9cwlf47ici";
        libraryHaskellDepends = [ base bytestring transformers vector ];
        libraryPkgconfigDepends = [ vulkan ];
        testHaskellDepends = [
@@ -281990,43 +281818,6 @@ self: {
      }:
      mkDerivation {
        pname = "wai-middleware-auth";
-       version = "0.2.5.0";
-       sha256 = "12yv8rcybd7saflfcyjy08p1m6il07nk831pkj0isxk8mwjq64l4";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson base base64-bytestring binary blaze-builder blaze-html
-         bytestring case-insensitive cereal clientsession cookie exceptions
-         hoauth2 http-client http-client-tls http-conduit http-reverse-proxy
-         http-types jose microlens mtl regex-posix safe-exceptions
-         shakespeare text time unix-compat unordered-containers
-         uri-bytestring vault wai wai-app-static wai-extra yaml
-       ];
-       executableHaskellDepends = [
-         base bytestring cereal clientsession optparse-applicative
-         optparse-simple wai-extra warp
-       ];
-       testHaskellDepends = [
-         aeson base binary bytestring clientsession cookie hedgehog hoauth2
-         http-types jose microlens mtl tasty tasty-hedgehog tasty-hunit text
-         time uri-bytestring wai wai-extra warp
-       ];
-       description = "Authentication middleware that secures WAI application";
-       license = lib.licenses.mit;
-     }) {};
-
-  "wai-middleware-auth_0_2_5_1" = callPackage
-    ({ mkDerivation, aeson, base, base64-bytestring, binary
-     , blaze-builder, blaze-html, bytestring, case-insensitive, cereal
-     , clientsession, cookie, exceptions, hedgehog, hoauth2, http-client
-     , http-client-tls, http-conduit, http-reverse-proxy, http-types
-     , jose, microlens, mtl, optparse-applicative, optparse-simple
-     , regex-posix, safe-exceptions, shakespeare, tasty, tasty-hedgehog
-     , tasty-hunit, text, time, unix-compat, unordered-containers
-     , uri-bytestring, vault, wai, wai-app-static, wai-extra, warp, yaml
-     }:
-     mkDerivation {
-       pname = "wai-middleware-auth";
        version = "0.2.5.1";
        sha256 = "0ch9vh14bhnf7g789rbqqgnn3q2nc892xs73kf7k6l8n9p2md0yd";
        isLibrary = true;
@@ -282050,7 +281841,6 @@ self: {
        ];
        description = "Authentication middleware that secures WAI application";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "wai-middleware-brotli" = callPackage
@@ -285217,16 +285007,35 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "wgpu-hs" = callPackage
+    ({ mkDerivation, base, bytestring, data-default, GLFW-b, text
+     , transformers, vector, wgpu-raw-hs
+     }:
+     mkDerivation {
+       pname = "wgpu-hs";
+       version = "0.2.0.0";
+       sha256 = "1kc5xmknfhh9dmn90rbnplmx8n7f07xwvrvz7dcybjpiw8pr2dml";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring data-default GLFW-b text transformers vector
+         wgpu-raw-hs
+       ];
+       executableHaskellDepends = [
+         base data-default GLFW-b text transformers
+       ];
+       doHaddock = false;
+       description = "WGPU";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "wgpu-raw-hs" = callPackage
     ({ mkDerivation, base, GLFW-b, unix }:
      mkDerivation {
        pname = "wgpu-raw-hs";
-       version = "0.1.0.2";
-       sha256 = "1hagn99jdmwjcyz2afmmd9ws31dncas9fssv6lx75kshar6x4rah";
-       isLibrary = true;
-       isExecutable = true;
+       version = "0.2.0.0";
+       sha256 = "05dzz6q5laxw7wwhly7v5i4bppfqz4yahh8qq6qc0h2c8v0qmdzp";
        libraryHaskellDepends = [ base GLFW-b unix ];
-       executableHaskellDepends = [ base GLFW-b ];
        description = "WGPU Raw";
        license = lib.licenses.bsd3;
      }) {};
@@ -286365,6 +286174,22 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "word16" = callPackage
+    ({ mkDerivation, base, bytestring, criterion, hspec, hspec-discover
+     , template-haskell, text
+     }:
+     mkDerivation {
+       pname = "word16";
+       version = "0.1.0.0";
+       sha256 = "0z2nabnh7b42bl7hqy2iw68a1gxay26pgsid7m4hs8s2d7cghndx";
+       libraryHaskellDepends = [ base bytestring template-haskell text ];
+       testHaskellDepends = [ base hspec ];
+       testToolDepends = [ hspec-discover ];
+       benchmarkHaskellDepends = [ base bytestring criterion ];
+       description = "Word16 library";
+       license = lib.licenses.mit;
+     }) {};
+
   "word24" = callPackage
     ({ mkDerivation, base, criterion, deepseq, QuickCheck
      , test-framework, test-framework-quickcheck2
@@ -288182,7 +288007,9 @@ self: {
        executableSystemDepends = [ xgboost ];
        description = "XGBoost library for Haskell";
        license = lib.licenses.mit;
-       platforms = [ "i686-linux" "x86_64-darwin" "x86_64-linux" ];
+       platforms = [
+         "aarch64-darwin" "i686-linux" "x86_64-darwin" "x86_64-linux"
+       ];
      }) {inherit (pkgs) xgboost;};
 
   "xhaskell-library" = callPackage
@@ -291012,22 +290839,24 @@ self: {
      }) {};
 
   "yapb" = callPackage
-    ({ mkDerivation, base, bytestring, directory, hashable, network
-     , process, regex-tdfa
+    ({ mkDerivation, base, bytestring, directory, hashable, hspec
+     , network, process, regex-tdfa
      }:
      mkDerivation {
        pname = "yapb";
-       version = "0.1.1";
-       sha256 = "1zbk2whfi09wzx9ql4dhkbg50s7v45y309avxljypg7z9i9pvx3x";
+       version = "0.1.3";
+       sha256 = "11p3ygnfpsh9dqlnpppi02baa5bk86pw6w6f1gawdd848qh7q9if";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base bytestring directory hashable network process regex-tdfa
+         base bytestring directory hashable hspec network process regex-tdfa
        ];
-       executableHaskellDepends = [ base regex-tdfa ];
-       testHaskellDepends = [ base ];
+       executableHaskellDepends = [ base hspec regex-tdfa ];
+       testHaskellDepends = [ base hspec process ];
        description = "Yet Another Parser Builder (YAPB)";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "yarn-lock" = callPackage
@@ -291857,7 +291686,6 @@ self: {
        ];
        description = "A yesod-auth plugin for LTI 1.3";
        license = lib.licenses.lgpl3Only;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "yesod-auth-nopassword" = callPackage
diff --git a/pkgs/development/interpreters/erlang/R24.nix b/pkgs/development/interpreters/erlang/R24.nix
index 8d1d114e12c..162af7c02b9 100644
--- a/pkgs/development/interpreters/erlang/R24.nix
+++ b/pkgs/development/interpreters/erlang/R24.nix
@@ -3,6 +3,6 @@
 # How to obtain `sha256`:
 # nix-prefetch-url --unpack https://github.com/erlang/otp/archive/OTP-${version}.tar.gz
 mkDerivation {
-  version = "24.0.5";
-  sha256 = "4ZyYcBhep67aPr8SY7JK/3YXD5Th8UcyjTP7UIZ5c5Q=";
+  version = "24.0.6";
+  sha256 = "0z01hkzf2y6lz20s2vkn4q874lb6n6j00jkbgk4gg60rhrmq904z";
 }
diff --git a/pkgs/development/libraries/fftw/default.nix b/pkgs/development/libraries/fftw/default.nix
index 3f6b028a45a..b2189b77bf7 100644
--- a/pkgs/development/libraries/fftw/default.nix
+++ b/pkgs/development/libraries/fftw/default.nix
@@ -1,4 +1,15 @@
-{ fetchurl, stdenv, lib, gfortran, llvmPackages ? null, precision ? "double", perl }:
+{ fetchurl
+, stdenv
+, lib
+, gfortran
+, perl
+, llvmPackages ? null
+, precision ? "double"
+, enableAvx ? stdenv.hostPlatform.avxSupport
+, enableAvx2 ? stdenv.hostPlatform.avx2Support
+, enableAvx512 ? stdenv.hostPlatform.avx512Support
+, enableFma ? stdenv.hostPlatform.fmaSupport
+}:
 
 with lib;
 
@@ -40,6 +51,10 @@ stdenv.mkDerivation {
     # all x86_64 have sse2
     # however, not all float sizes fit
     ++ optional (stdenv.isx86_64 && (precision == "single" || precision == "double") )  "--enable-sse2"
+    ++ optional enableAvx "--enable-avx"
+    ++ optional enableAvx2 "--enable-avx2"
+    ++ optional enableAvx512 "--enable-avx512"
+    ++ optional enableFma "--enable-fma"
     ++ [ "--enable-openmp" ]
     # doc generation causes Fortran wrapper generation which hard-codes gcc
     ++ optional (!withDoc) "--disable-doc";
diff --git a/pkgs/development/libraries/frei0r/default.nix b/pkgs/development/libraries/frei0r/default.nix
index c4f99346296..ac2c43ce8db 100644
--- a/pkgs/development/libraries/frei0r/default.nix
+++ b/pkgs/development/libraries/frei0r/default.nix
@@ -1,16 +1,26 @@
-{ lib, stdenv, fetchurl, autoconf, cairo, opencv, pkg-config }:
+{ lib, stdenv, fetchurl, fetchpatch, cairo, cmake, opencv, pcre, pkg-config }:
 
 stdenv.mkDerivation rec {
   pname = "frei0r-plugins";
-  version = "1.6.1";
+  version = "1.7.0";
 
   src = fetchurl {
     url = "https://files.dyne.org/frei0r/releases/${pname}-${version}.tar.gz";
-    sha256 = "0pji26fpd0dqrx1akyhqi6729s394irl73dacnyxk58ijqq4dhp0";
+    hash = "sha256-Gx/48Pm8I+7XJOlOmnwdjwJEv+M0JLtP5o5kYMCIUjo=";
   };
 
-  nativeBuildInputs = [ autoconf pkg-config ];
-  buildInputs = [ cairo opencv ];
+  # A PR to add support for OpenCV 4 was merged in May 2020. This
+  # patch can be removed when a release beyond 1.7.0 is issued.
+  patches = [
+    (fetchpatch {
+      name = "opencv4-support.patch";
+      url = "https://github.com/dyne/frei0r/commit/c0c8eed79fc8abe6c9881a53d7391efb526a3064.patch";
+      sha256 = "sha256-qxUAui4EEBEj8M/SoyMUkj//KegMTTT6FTBDC/Chxz4=";
+    })
+  ];
+
+  nativeBuildInputs = [ cmake pkg-config ];
+  buildInputs = [ cairo opencv pcre ];
 
   postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
     for f in $out/lib/frei0r-1/*.so* ; do
diff --git a/pkgs/development/libraries/intel-media-driver/default.nix b/pkgs/development/libraries/intel-media-driver/default.nix
index 44ef637c985..5f3488a8ab1 100644
--- a/pkgs/development/libraries/intel-media-driver/default.nix
+++ b/pkgs/development/libraries/intel-media-driver/default.nix
@@ -6,7 +6,7 @@
 
 stdenv.mkDerivation rec {
   pname = "intel-media-driver";
-  version = "21.3.2";
+  version = "21.3.3";
 
   outputs = [ "out" "dev" ];
 
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     owner  = "intel";
     repo   = "media-driver";
     rev    = "intel-media-${version}";
-    sha256 = "0d2w1wmq6w2hjyja7zn9f3glykk14mvphj00dbqkbsla311gkqw4";
+    sha256 = "1j33qq53jjmcvpr9w1xlyl5bpmq4rmshrd123l9alc2ddqbngrf7";
   };
 
   cmakeFlags = [
diff --git a/pkgs/development/libraries/kddockwidgets/default.nix b/pkgs/development/libraries/kddockwidgets/default.nix
new file mode 100644
index 00000000000..b63bdc979c4
--- /dev/null
+++ b/pkgs/development/libraries/kddockwidgets/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, mkDerivation
+, fetchFromGitHub
+, cmake
+, qtbase
+, qtx11extras
+}:
+
+mkDerivation rec {
+  pname = "KDDockWidgets";
+  version = "1.4.0";
+
+  src = fetchFromGitHub {
+    owner = "KDAB";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-lgNRuRoJhBw0n/Hb58uxpa+4aXoOrK4bRldtIXYIKLI=";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ qtbase qtx11extras ];
+
+  meta = with lib; {
+    description = "KDAB's Dock Widget Framework for Qt";
+    homepage = "https://www.kdab.com/development-resources/qt-tools/kddockwidgets";
+    license = with licenses; [ gpl2Only gpl3Only ];
+    maintainers = with maintainers; [ _1000teslas ];
+  };
+}
diff --git a/pkgs/development/libraries/libint/default.nix b/pkgs/development/libraries/libint/default.nix
index 484125352ce..64b83166ae9 100644
--- a/pkgs/development/libraries/libint/default.nix
+++ b/pkgs/development/libraries/libint/default.nix
@@ -1,6 +1,7 @@
 { lib, stdenv, fetchFromGitHub, autoconf, automake, libtool
 , python3, perl, gmpxx, mpfr, boost, eigen, gfortran, cmake
-, enableFMA ? false, enableFortran ? true
+, enableFMA ? stdenv.hostPlatform.fmaSupport
+, enableFortran ? true
 }:
 
 let
diff --git a/pkgs/development/libraries/rustc-demangle/add-Cargo.lock.patch b/pkgs/development/libraries/rustc-demangle/add-Cargo.lock.patch
new file mode 100644
index 00000000000..66e8bead8a2
--- /dev/null
+++ b/pkgs/development/libraries/rustc-demangle/add-Cargo.lock.patch
@@ -0,0 +1,73 @@
+diff --git a/Cargo.lock b/Cargo.lock
+new file mode 100644
+index 0000000..0268b3b
+--- /dev/null
++++ b/Cargo.lock
+@@ -0,0 +1,67 @@
++# This file is automatically @generated by Cargo.
++# It is not intended for manual editing.
++version = 3
++
++[[package]]
++name = "arbitrary"
++version = "1.0.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "237430fd6ed3740afe94eefcc278ae21e050285be882804e0d6e8695f0c94691"
++
++[[package]]
++name = "cc"
++version = "1.0.69"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "e70cc2f62c6ce1868963827bd677764c62d07c3d9a3e1fb1177ee1a9ab199eb2"
++
++[[package]]
++name = "compiler_builtins"
++version = "0.1.49"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "20b1438ef42c655665a8ab2c1c6d605a305f031d38d9be689ddfef41a20f3aa2"
++
++[[package]]
++name = "libfuzzer-sys"
++version = "0.4.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "36a9a84a6e8b55dfefb04235e55edb2b9a2a18488fcae777a6bdaa6f06f1deb3"
++dependencies = [
++ "arbitrary",
++ "cc",
++ "once_cell",
++]
++
++[[package]]
++name = "once_cell"
++version = "1.8.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "692fcb63b64b1758029e0a96ee63e049ce8c5948587f2f7208df04625e5f6b56"
++
++[[package]]
++name = "rustc-demangle"
++version = "0.1.20"
++dependencies = [
++ "compiler_builtins",
++ "rustc-std-workspace-core",
++]
++
++[[package]]
++name = "rustc-demangle-capi"
++version = "0.1.0"
++dependencies = [
++ "rustc-demangle",
++]
++
++[[package]]
++name = "rustc-demangle-fuzz"
++version = "0.0.0"
++dependencies = [
++ "libfuzzer-sys",
++ "rustc-demangle",
++]
++
++[[package]]
++name = "rustc-std-workspace-core"
++version = "1.0.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "1956f5517128a2b6f23ab2dadf1a976f4f5b27962e7724c2bf3d45e539ec098c"
diff --git a/pkgs/development/libraries/rustc-demangle/default.nix b/pkgs/development/libraries/rustc-demangle/default.nix
new file mode 100644
index 00000000000..be02fedfde7
--- /dev/null
+++ b/pkgs/development/libraries/rustc-demangle/default.nix
@@ -0,0 +1,34 @@
+{ rustPlatform, fetchFromGitHub, rust, lib, stdenv }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "rustc-demangle";
+  version = "0.1.20";
+
+  src = fetchFromGitHub {
+    owner = "alexcrichton";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-elxclyuLmr3N66s+pR4/6OU98k1oXI2wKVJtzWPY8FI=";
+  };
+
+  cargoPatches = [
+    # generated using `cargo generate-lockfile` since repo is missing lockfile
+    ./add-Cargo.lock.patch
+  ];
+  cargoSha256 = "sha256-1tW5TOap5MstxTXAFij3IB8TIpI+FryEX9TXlVXjRl4=";
+  cargoBuildFlags = "-p rustc-demangle-capi";
+  postInstall = ''
+    mkdir -p $out/lib
+    cp target/${rust.toRustTargetSpec stdenv.hostPlatform}/release/librustc_demangle.so $out/lib
+    cp -R crates/capi/include $out
+  '';
+
+  meta = with lib; {
+    description = "Rust symbol demangling";
+    homepage = "https://github.com/alexcrichton/rustc-demangle";
+    license = with licenses; [ asl20 mit ];
+    # upstream supports other platforms, but maintainer can only test on linux
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ _1000teslas ];
+  };
+}
diff --git a/pkgs/development/python-modules/azure-mgmt-compute/default.nix b/pkgs/development/python-modules/azure-mgmt-compute/default.nix
index c45eb691dec..d8e8f45d7cc 100644
--- a/pkgs/development/python-modules/azure-mgmt-compute/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-compute/default.nix
@@ -6,13 +6,13 @@
 }:
 
 buildPythonPackage rec {
-  version = "22.1.0";
+  version = "23.0.0";
   pname = "azure-mgmt-compute";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "2aad414843aee0f54427f887f7536cc5155d6852728d44dfeef633ac52135fdc";
+    sha256 = "1eb26b965ba4049ddcf10d4f25818725fc03c491c3be76537d0d74ceb1146b04";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/buildbot/default.nix b/pkgs/development/python-modules/buildbot/default.nix
index 2a193cecca1..3c5db01cdb6 100644
--- a/pkgs/development/python-modules/buildbot/default.nix
+++ b/pkgs/development/python-modules/buildbot/default.nix
@@ -8,8 +8,13 @@
 
 let
   withPlugins = plugins: buildPythonPackage {
-    name = "${package.name}-with-plugins";
+    pname = "${package.pname}-with-plugins";
+    inherit (package) version;
+
     dontUnpack = true;
+    dontBuild = true;
+    doCheck = false;
+
     nativeBuildInputs = [ makeWrapper ];
     propagatedBuildInputs = plugins ++ package.propagatedBuildInputs;
 
diff --git a/pkgs/development/python-modules/certauth/default.nix b/pkgs/development/python-modules/certauth/default.nix
new file mode 100644
index 00000000000..782ad960814
--- /dev/null
+++ b/pkgs/development/python-modules/certauth/default.nix
@@ -0,0 +1,39 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pyopenssl
+, tldextract
+, pytestCheckHook
+, pytest-cov
+}:
+
+buildPythonPackage rec {
+  pname = "certauth";
+  version = "1.3.0";
+
+  src = fetchFromGitHub {
+    owner = "ikreymer";
+    repo = "certauth";
+    rev = "ad2bae5d40a9e45519fc1f2cd7678174bbc55b3d"; # Repo has no git tags
+    sha256 = "sha256-Rso5N0jb9k7bdorjPIUMNiZZPnzwbkxFNiTpsJ9pco0=";
+  };
+
+  propagatedBuildInputs = [
+    pyopenssl
+    tldextract
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+    pytest-cov
+  ];
+
+  pythonImportsCheck = [ "certauth" ];
+
+  meta = with lib; {
+    description = "Simple CertificateAuthority and host certificate creation, useful for man-in-the-middle HTTPS proxy";
+    homepage = "https://github.com/ikreymer/certauth";
+    license = licenses.mit;
+    maintainers = with maintainers; [ Luflosi ];
+  };
+}
diff --git a/pkgs/development/python-modules/cucumber-tag-expressions/default.nix b/pkgs/development/python-modules/cucumber-tag-expressions/default.nix
index d90e53ac365..6a2d1b1d31e 100644
--- a/pkgs/development/python-modules/cucumber-tag-expressions/default.nix
+++ b/pkgs/development/python-modules/cucumber-tag-expressions/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "cucumber-tag-expressions";
-  version = "3.0.1";
+  version = "4.0.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "71823468f567726332b87f40530b27fc83b35daea6514f5cbb03f0533d96e5be";
+    sha256 = "83ce5fa87d1b37a690106aedf58a12d0d16758f38f73336f2c703e2bfe01d7db";
   };
 
   checkInputs = [ pytest pytest-html ];
diff --git a/pkgs/development/python-modules/dogpile.cache/default.nix b/pkgs/development/python-modules/dogpile.cache/default.nix
index 05eb173c559..55dffd1dc7e 100644
--- a/pkgs/development/python-modules/dogpile.cache/default.nix
+++ b/pkgs/development/python-modules/dogpile.cache/default.nix
@@ -12,12 +12,12 @@
 
 buildPythonPackage rec {
   pname = "dogpile.cache";
-  version = "1.1.3";
+  version = "1.1.4";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "6f0bcf97c73bfec1a7bf14e5a248488cee00c2d494bf63f3789ea6d95a57c1cf";
+    sha256 = "ea09bebf24bb7c028caf98963785fe9ad0bd397305849a3303bc5380d468d813";
   };
 
   # Disable concurrency tests that often fail,
diff --git a/pkgs/development/python-modules/elasticsearch/default.nix b/pkgs/development/python-modules/elasticsearch/default.nix
index c469a7c87f9..17cf944bf14 100644
--- a/pkgs/development/python-modules/elasticsearch/default.nix
+++ b/pkgs/development/python-modules/elasticsearch/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage (rec {
   pname = "elasticsearch";
-  version = "7.14.0";
+  version = "7.14.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "f3ab1454e646170bbc6796b8707e4bff125234391d2acc022221e1c0313becb4";
+    sha256 = "f928898fe06869516f2603f9a96a6f166c06888233806b31ac6568bac0266501";
   };
 
   # Check is disabled because running them destroy the content of the local cluster!
diff --git a/pkgs/development/python-modules/elementpath/default.nix b/pkgs/development/python-modules/elementpath/default.nix
index 30ff8d0717c..ab09f0edf36 100644
--- a/pkgs/development/python-modules/elementpath/default.nix
+++ b/pkgs/development/python-modules/elementpath/default.nix
@@ -1,7 +1,7 @@
 { lib, buildPythonPackage, fetchFromGitHub, isPy27 }:
 
 buildPythonPackage rec {
-  version = "2.2.3";
+  version = "2.3.0";
   pname = "elementpath";
   disabled = isPy27; # uses incompatible class syntax
 
@@ -9,7 +9,7 @@ buildPythonPackage rec {
     owner = "sissaschool";
     repo = "elementpath";
     rev = "v${version}";
-    sha256 = "142w8xbxdvz6949nqd4malqijyxfcv917cls4lsv4x7164b4naf7";
+    sha256 = "1zghj0v1s03ahynx7sczag7iaam757ypwl1lm0ym6j37dnq8vnxk";
   };
 
   # avoid circular dependency with xmlschema which directly depends on this
diff --git a/pkgs/development/python-modules/eth-hash/default.nix b/pkgs/development/python-modules/eth-hash/default.nix
index da57aa50e07..618c39f3b73 100644
--- a/pkgs/development/python-modules/eth-hash/default.nix
+++ b/pkgs/development/python-modules/eth-hash/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "eth-hash";
-  version = "0.3.1";
+  version = "0.3.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "aee46d9c43b98ac6d4ddf957cf75d4d0a5174ee814cc6b53dd6134dcedb459bf";
+    sha256 = "3f40cecd5ead88184aa9550afc19d057f103728108c5102f592f8415949b5a76";
   };
 
   checkInputs = [ pytest ];
diff --git a/pkgs/development/python-modules/eventlet/default.nix b/pkgs/development/python-modules/eventlet/default.nix
index 87446ed95f3..11c18b61ae5 100644
--- a/pkgs/development/python-modules/eventlet/default.nix
+++ b/pkgs/development/python-modules/eventlet/default.nix
@@ -12,11 +12,11 @@
 
 buildPythonPackage rec {
   pname = "eventlet";
-  version = "0.31.1";
+  version = "0.32.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0xldgwjf9jkp28rn0pg0i32bg6m7pdh7dwgi0grcvqzs0iii5sdr";
+    sha256 = "2f0bb8ed0dc0ab21d683975d5d8ab3c054d588ce61def9faf7a465ee363e839b";
   };
 
   propagatedBuildInputs = [ dnspython greenlet monotonic six ]
diff --git a/pkgs/development/python-modules/flexmock/default.nix b/pkgs/development/python-modules/flexmock/default.nix
index 48a2f931f6b..a5382c04b00 100644
--- a/pkgs/development/python-modules/flexmock/default.nix
+++ b/pkgs/development/python-modules/flexmock/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "flexmock";
-  version = "0.10.5";
+  version = "0.10.8";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "003422fdbcf5d6570e60a0eafeb54c0af624c6cddab5fc3bfe026e52dd0f9c5a";
+    sha256 = "6820031c39b298646194a3f0b2b693322bb7f44b39dbaf1c54b0ae68b3d768fa";
   };
 
   checkInputs = [ pytest ];
diff --git a/pkgs/development/python-modules/google-cloud-datacatalog/default.nix b/pkgs/development/python-modules/google-cloud-datacatalog/default.nix
index 669d06b305d..64cf1b25364 100644
--- a/pkgs/development/python-modules/google-cloud-datacatalog/default.nix
+++ b/pkgs/development/python-modules/google-cloud-datacatalog/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-datacatalog";
-  version = "3.4.0";
+  version = "3.4.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "2faca51e974c46203c09fd4cb2c03fd6e82cd572cc06a2bbc3b401aa419cb09f";
+    sha256 = "ad1bf9991bdee2a2fee44d19e54790a6eb900652841a5d7a32aa1c468a196f49";
   };
 
   propagatedBuildInputs = [ libcst google-api-core grpc-google-iam-v1 proto-plus ];
diff --git a/pkgs/development/python-modules/google-re2/default.nix b/pkgs/development/python-modules/google-re2/default.nix
index 6fb490581d3..0e36328bd7a 100644
--- a/pkgs/development/python-modules/google-re2/default.nix
+++ b/pkgs/development/python-modules/google-re2/default.nix
@@ -2,12 +2,12 @@
 
 buildPythonPackage rec {
   pname = "google-re2";
-  version = "0.2.20210801";
+  version = "0.2.20210901";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0806d78691e67970b3761767a30f1c631fed85b87001266c6adcb672ac2c9beb";
+    sha256 = "676fa9ee54e3fb70f290526fc0f4d78d1e5a4add701b5547494eaf7c68c72247";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/haversine/default.nix b/pkgs/development/python-modules/haversine/default.nix
index 614e664c19c..6080294653e 100644
--- a/pkgs/development/python-modules/haversine/default.nix
+++ b/pkgs/development/python-modules/haversine/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "haversine";
-  version = "2.4.0";
+  version = "2.5.1";
 
   src = fetchFromGitHub {
     owner = "mapado";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Q38oeSy1ilXWc2r/GW8EWQHH2Ty+DyTxxrDX3OcOwKc=";
+    sha256 = "sha256-tHA1Ff/J1mfSnER2X/8e0QyQkuRz1mn8MeGlThVQaSg=";
   };
 
   checkInputs = [
diff --git a/pkgs/development/python-modules/ledgerblue/default.nix b/pkgs/development/python-modules/ledgerblue/default.nix
index a70923de2be..bb5f71d7320 100644
--- a/pkgs/development/python-modules/ledgerblue/default.nix
+++ b/pkgs/development/python-modules/ledgerblue/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "ledgerblue";
-  version = "0.1.35";
+  version = "0.1.37";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "44fbd8fcf62430a6b84d4e826a9ef7fc21c77a7d8ff275f3952d6086ef06d076";
+    sha256 = "f34945c9bd4b9846ed9e48ecc239d3e9aec64c3a45411092d133260246169854";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/mailmanclient/default.nix b/pkgs/development/python-modules/mailmanclient/default.nix
index c19daed1b9f..55b3b7bc14f 100644
--- a/pkgs/development/python-modules/mailmanclient/default.nix
+++ b/pkgs/development/python-modules/mailmanclient/default.nix
@@ -2,12 +2,12 @@
 
 buildPythonPackage rec {
   pname = "mailmanclient";
-  version = "3.3.2";
+  version = "3.3.3";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "4082ac0c66d7f7bee15751fe2564098b971177c0013e66d0c8ceee1ebdcb5592";
+    sha256 = "92fe624675e41f41f59de1208e0125dfaa8d062bbe6138bd7cd79e4dd0b6f85e";
   };
 
   propagatedBuildInputs = [ six httplib2 requests ];
diff --git a/pkgs/development/python-modules/mechanize/default.nix b/pkgs/development/python-modules/mechanize/default.nix
index 7eb119fa955..5309855fb49 100644
--- a/pkgs/development/python-modules/mechanize/default.nix
+++ b/pkgs/development/python-modules/mechanize/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "mechanize";
-  version = "0.4.5";
+  version = "0.4.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "6355c11141f6d4b54a17fc2106944806b5db2711e60b120d15d83db438c333fd";
+    sha256 = "d16cea241253b5eb6380bf8a46627cad91d1f2c3f93a33279a31ce276d6c5d44";
   };
 
   propagatedBuildInputs = [ html5lib ];
diff --git a/pkgs/development/python-modules/mwparserfromhell/default.nix b/pkgs/development/python-modules/mwparserfromhell/default.nix
index c1e57be4ded..2ea41e61541 100644
--- a/pkgs/development/python-modules/mwparserfromhell/default.nix
+++ b/pkgs/development/python-modules/mwparserfromhell/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "mwparserfromhell";
-  version = "0.6.2";
+  version = "0.6.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "d3f74c0101f81ff73c61985b67f2e7048a30dc5f6a578ea1544e69133988d874";
+    sha256 = "1ad779f1bc0808d280ec1026c9de74f424de535568e21debd12830b5b0fa097e";
   };
 
   checkInputs = [
diff --git a/pkgs/development/python-modules/pefile/default.nix b/pkgs/development/python-modules/pefile/default.nix
index 5cd514c871f..508ba27b294 100644
--- a/pkgs/development/python-modules/pefile/default.nix
+++ b/pkgs/development/python-modules/pefile/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "pefile";
-  version = "2021.5.24";
+  version = "2021.9.2";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "erocarrera";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0qdy88dvy29ixsyfqdcvf3w6rz09vpimk0568i09v1ayhs52p62k";
+    sha256 = "1pgsw84i9r6ydkfzqifgl5lvcz3cf3xz5c2543kl3q8mgb21wxaz";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pglast/default.nix b/pkgs/development/python-modules/pglast/default.nix
index d4a07857e3a..019acbd6567 100644
--- a/pkgs/development/python-modules/pglast/default.nix
+++ b/pkgs/development/python-modules/pglast/default.nix
@@ -1,6 +1,6 @@
 { lib
 , buildPythonPackage
-, fetchFromGitHub
+, fetchPypi
 , isPy3k
 , setuptools
 , pytest-cov
@@ -9,15 +9,11 @@
 
 buildPythonPackage rec {
   pname = "pglast";
-  version = "3.3";
-
-  # PyPI tarball does not include all the required files
-  src = fetchFromGitHub {
-    owner = "lelit";
-    repo = pname;
-    rev = "v${version}";
-    fetchSubmodules = true;
-    sha256 = "0l7nvbs1x1qil6mc0rxk7925i5xr3nbqnv0vakx3yv911kj3yhgv";
+  version = "3.4";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "d2288d9607097a08529d9165970261c1be956934e8a8f6d9ed2a96d9b8f03fc6";
   };
 
   disabled = !isPy3k;
diff --git a/pkgs/development/python-modules/policyuniverse/default.nix b/pkgs/development/python-modules/policyuniverse/default.nix
index 3c3c318efc8..d8e102957b1 100644
--- a/pkgs/development/python-modules/policyuniverse/default.nix
+++ b/pkgs/development/python-modules/policyuniverse/default.nix
@@ -7,12 +7,12 @@
 
 buildPythonPackage rec {
   pname = "policyuniverse";
-  version = "1.4.0.20210816";
+  version = "1.4.0.20210819";
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "05fxn89f6rr5rrp117cnqsfzy1p3nbmq3izq2jqk6kackcr3cl8x";
+    sha256 = "sha256-RBRUR9Rzw3/yd2ZnteEBigDApJPBagpIk5lSGzeGqL4=";
   };
 
   # Tests are not shipped and there are no GitHub tags
diff --git a/pkgs/development/python-modules/protonup/default.nix b/pkgs/development/python-modules/protonup/default.nix
new file mode 100644
index 00000000000..ad760063248
--- /dev/null
+++ b/pkgs/development/python-modules/protonup/default.nix
@@ -0,0 +1,29 @@
+{ lib, buildPythonPackage, pythonOlder, fetchPypi, requests, configparser }:
+
+buildPythonPackage rec {
+  pname = "protonup";
+  version = "0.1.4";
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0z5q0s9h51w2bqm9lkafml14g13v2dgm4nm9x06v7nxqc9msmyyy";
+  };
+
+  postPatch = ''
+    substituteInPlace setup.cfg \
+      --replace "argparse" ""
+  '';
+
+  propagatedBuildInputs = [ requests configparser ];
+
+  doCheck = false; # protonup does not have any tests
+  pythonImportsCheck = [ "protonup" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/AUNaseef/protonup";
+    description = "CLI program and API to automate the installation and update of GloriousEggroll's Proton-GE";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ flexagoon ];
+  };
+}
diff --git a/pkgs/development/python-modules/pyacoustid/default.nix b/pkgs/development/python-modules/pyacoustid/default.nix
index 752c276415f..6e1bb63f0f6 100644
--- a/pkgs/development/python-modules/pyacoustid/default.nix
+++ b/pkgs/development/python-modules/pyacoustid/default.nix
@@ -8,11 +8,11 @@
 
 buildPythonPackage rec {
   pname = "pyacoustid";
-  version = "1.2.1";
+  version = "1.2.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "e62b2929fbc5ead508758d2f700f5d355f7d83d14f5efe33c1d4fc59cbdeba84";
+    sha256 = "c279d9c30a7f481f1420fc37db65833b5f9816cd364dc2acaa93a11c482d4141";
   };
 
   propagatedBuildInputs = [ requests audioread ];
diff --git a/pkgs/development/python-modules/qcelemental/default.nix b/pkgs/development/python-modules/qcelemental/default.nix
index b6e0684a2d4..57b50f820f7 100644
--- a/pkgs/development/python-modules/qcelemental/default.nix
+++ b/pkgs/development/python-modules/qcelemental/default.nix
@@ -4,14 +4,14 @@
 
 buildPythonPackage rec {
   pname = "qcelemental";
-  version = "0.21.0";
+  version = "0.22.0";
 
   checkInputs = [ pytest-runner pytest-cov pytest ];
   propagatedBuildInputs = [ numpy pydantic pint networkx ];
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1b3c78fxbpnddrm1fnbvv4x2840jcfjg2l5cb5w4p38vzksiv238";
+    sha256 = "1d7fc613fbe30189cfa970a863a5955865b1116ff651d20325c721b6f0ef1f52";
   };
 
   doCheck = true;
diff --git a/pkgs/development/python-modules/sparse/default.nix b/pkgs/development/python-modules/sparse/default.nix
index d958fd2ed70..c081ab5e3a1 100644
--- a/pkgs/development/python-modules/sparse/default.nix
+++ b/pkgs/development/python-modules/sparse/default.nix
@@ -12,13 +12,13 @@
 
 buildPythonPackage rec {
   pname = "sparse";
-  version = "0.12.0";
+  version = "0.13.0";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "2c95c3b8ee00211a5aa4ef5e46006d25bf35009a66e406b7ea9b25b327fb9516";
+    sha256 = "685dc994aa770ee1b23f2d5392819c8429f27958771f8dceb2c4fb80210d5915";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/sqlmap/default.nix b/pkgs/development/python-modules/sqlmap/default.nix
index e66cdd8967d..310db13d1e4 100644
--- a/pkgs/development/python-modules/sqlmap/default.nix
+++ b/pkgs/development/python-modules/sqlmap/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "sqlmap";
-  version = "1.5.8";
+  version = "1.5.9";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "01wyhmvg9yh5q86z7kahbvj2xnkjyvi1h2qj7clgz5yd76sh8ygn";
+    sha256 = "1714780f8835854c6f949f854fca936c3064b9a7e0da96989bb637a6ba5c119b";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/time-machine/default.nix b/pkgs/development/python-modules/time-machine/default.nix
index 1c4be8946ae..9eabd929ae9 100644
--- a/pkgs/development/python-modules/time-machine/default.nix
+++ b/pkgs/development/python-modules/time-machine/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "time-machine";
-  version = "2.3.1";
+  version = "2.4.0";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "adamchainz";
     repo = pname;
     rev = version;
-    sha256 = "1flim8xaa7qglh2b39cf57i8g0kg0707pw3mdkrgh0xjn27bv9bi";
+    sha256 = "sha256-1k8mGkgJw0MfydJ/Sm8qDvFNaIqoHR1fZkVrXxvc8Zk=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/transitions/default.nix b/pkgs/development/python-modules/transitions/default.nix
index 752cd8fb4d5..94d937b88f2 100644
--- a/pkgs/development/python-modules/transitions/default.nix
+++ b/pkgs/development/python-modules/transitions/default.nix
@@ -12,11 +12,11 @@
 
 buildPythonPackage rec {
   pname = "transitions";
-  version = "0.8.8";
+  version = "0.8.9";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-56hrMaFhp2Ez8Ymzrp2tJ1WoDqTB4O7hgFZI0CH7Z30=";
+    sha256 = "fc2ec6d6b6f986cd7e28e119eeb9ba1c9cc51ab4fbbdb7f2dedad01983fd2de0";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/tools/analysis/hotspot/default.nix b/pkgs/development/tools/analysis/hotspot/default.nix
index 94b440f58c8..5fede1aee5c 100644
--- a/pkgs/development/tools/analysis/hotspot/default.nix
+++ b/pkgs/development/tools/analysis/hotspot/default.nix
@@ -1,18 +1,22 @@
-{ lib,
-  mkDerivation,
-  cmake,
-  elfutils,
-  extra-cmake-modules,
-  fetchFromGitHub,
-  kconfigwidgets,
-  ki18n,
-  kio,
-  kitemmodels,
-  kitemviews,
-  kwindowsystem,
-  libelf,
-  qtbase,
-  threadweaver,
+{ lib
+, mkDerivation
+, cmake
+, elfutils
+, extra-cmake-modules
+, fetchFromGitHub
+, kconfigwidgets
+, ki18n
+, kio
+, kitemmodels
+, kitemviews
+, kwindowsystem
+, libelf
+, qtbase
+, threadweaver
+, qtx11extras
+, zstd
+, kddockwidgets
+, rustc-demangle
 }:
 
 mkDerivation rec {
@@ -27,10 +31,12 @@ mkDerivation rec {
     fetchSubmodules = true;
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [
+    cmake
+    extra-cmake-modules
+  ];
   buildInputs = [
     elfutils
-    extra-cmake-modules
     kconfigwidgets
     ki18n
     kio
@@ -40,6 +46,10 @@ mkDerivation rec {
     libelf
     qtbase
     threadweaver
+    qtx11extras
+    zstd
+    kddockwidgets
+    rustc-demangle
   ];
 
   # hotspot checks for the presence of third party libraries'
@@ -47,9 +57,14 @@ mkDerivation rec {
   # submodules; but Nix clones them and removes .git (for reproducibility).
   # So we need to fake their existence here.
   postPatch = ''
-    mkdir -p 3rdparty/perfparser/.git
+    mkdir -p 3rdparty/{perfparser,PrefixTickLabels}/.git
   '';
 
+  cmakeFlags = [
+    "-DRUSTC_DEMANGLE_INCLUDE_DIR=${rustc-demangle}/include"
+    "-DRUSTC_DEMANGLE_LIBRARY=${rustc-demangle}/lib/librustc_demangle.so"
+  ];
+
   meta = {
     description = "A GUI for Linux perf";
     longDescription = ''
@@ -58,7 +73,7 @@ mkDerivation rec {
       then displays the result in a graphical way.
     '';
     homepage = "https://github.com/KDAB/hotspot";
-    license = with lib.licenses; [ gpl2 gpl3 ];
+    license = with lib.licenses; [ gpl2Only gpl3Only ];
     platforms = lib.platforms.linux;
     maintainers = with lib.maintainers; [ nh2 ];
   };
diff --git a/pkgs/development/tools/build-managers/bear/default.nix b/pkgs/development/tools/build-managers/bear/default.nix
index bb2a7ab8a64..a81a5723540 100644
--- a/pkgs/development/tools/build-managers/bear/default.nix
+++ b/pkgs/development/tools/build-managers/bear/default.nix
@@ -18,13 +18,13 @@
 
 stdenv.mkDerivation rec {
   pname = "bear";
-  version = "3.0.13";
+  version = "3.0.14";
 
   src = fetchFromGitHub {
     owner = "rizsotto";
     repo = pname;
     rev = version;
-    sha256 = "sha256-oMrTH3GjxiLBKX0i3ZuV+bNqpA7PkoAQAb/08Q/uELs=";
+    sha256 = "0qy96dyd29bjvfhi46y30hli5cvshw8am0spvcv9v43660wbczd7";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
diff --git a/pkgs/development/tools/buildpack/default.nix b/pkgs/development/tools/buildpack/default.nix
index a3e1b093e7b..f4c65120036 100644
--- a/pkgs/development/tools/buildpack/default.nix
+++ b/pkgs/development/tools/buildpack/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "pack";
-  version = "0.18.0";
+  version = "0.20.0";
 
   src = fetchFromGitHub {
     owner = "buildpacks";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-+fYw5dIDJJKGQKBL6RQh1SCQufbAkKeuJpPlywzbbnM=";
+    sha256 = "sha256-G1tnk0SlQVX4bEifmuZahazNv3bbdgmcr1V0dN9dlKc=";
   };
 
-  vendorSha256 = "sha256-fSUTl5W/DyloCuCpEqA5z4bhB7wYxzPt6E0SfjorfQ0=";
+  vendorSha256 = "sha256-jeOK4k1W/5LvqB52LriKD5jNvZa/nc2ypRowrem2y30=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/development/tools/dockfmt/default.nix b/pkgs/development/tools/dockfmt/default.nix
new file mode 100644
index 00000000000..d637b8ca3e5
--- /dev/null
+++ b/pkgs/development/tools/dockfmt/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "dockfmt";
+  version = "0.3.3";
+
+  src = fetchFromGitHub {
+    owner = "jessfraz";
+    repo = "dockfmt";
+    rev = "v${version}";
+    sha256 = "0m56ydmf7zbcsa5yym7j5fgr75v677h9s40zyzwrqccyq01myp06";
+  };
+
+  vendorSha256 = null;
+
+  ldflags = [
+    "-w"
+    "-s"
+    "-X github.com/jessfraz/dockfmt/version.VERSION=${version}"
+  ];
+
+  meta = with lib; {
+    description = "Dockerfile format";
+    homepage = "https://github.com/jessfraz/dockfmt";
+    license = [ licenses.mit ];
+    maintainers = [ maintainers.cpcloud ];
+  };
+}
diff --git a/pkgs/development/tools/gokart/default.nix b/pkgs/development/tools/gokart/default.nix
new file mode 100644
index 00000000000..3c973126c7a
--- /dev/null
+++ b/pkgs/development/tools/gokart/default.nix
@@ -0,0 +1,28 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "gokart";
+  version = "0.2.0";
+
+  src = fetchFromGitHub {
+    owner = "praetorian-inc";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0wfv33yi83klnnyfas7wnsnx34cf28k1yvq06lkii96fvnzcar36";
+  };
+
+  vendorSha256 = "0l5aj7j9m412bgm9n553m2sh9fy9dpzd0bi3qn21gj7bfdcpagnd";
+
+  # Would need files to scan which are not shipped by the project
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Static analysis tool for securing Go code";
+    homepage = "https://github.com/praetorian-inc/gokart";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/tools/haskell/haskell-language-server/withWrapper.nix b/pkgs/development/tools/haskell/haskell-language-server/withWrapper.nix
index 3b57693a28c..3a356b36be9 100644
--- a/pkgs/development/tools/haskell/haskell-language-server/withWrapper.nix
+++ b/pkgs/development/tools/haskell/haskell-language-server/withWrapper.nix
@@ -1,4 +1,4 @@
-{ lib, supportedGhcVersions ? [ "884" "8106" ], stdenv, haskellPackages
+{ lib, supportedGhcVersions ? [ "884" "8107" ], stdenv, haskellPackages
 , haskell }:
 #
 # The recommended way to override this package is
diff --git a/pkgs/development/tools/inferno/default.nix b/pkgs/development/tools/inferno/default.nix
index ce12a72dc97..9507c2fb4ac 100644
--- a/pkgs/development/tools/inferno/default.nix
+++ b/pkgs/development/tools/inferno/default.nix
@@ -2,15 +2,15 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "inferno";
-  version = "0.10.6";
+  version = "0.10.7";
 
   # github version doesn't have a Cargo.lock
   src = fetchCrate {
     inherit pname version;
-    sha256 = "1pn3ask36mv8byd62xhm8bjv59k12i1s533jgb5syml64w1cnn12";
+    sha256 = "0bzrwa87j56sv03frl0lp6izfxsldn0692g2vpwfndhrsm0gy8z9";
   };
 
-  cargoSha256 = "0w5w9pyv34x0iy9knr79491kb9bgbcagh6251pq72mv4pvx0axip";
+  cargoSha256 = "1dvk1y1afqlmmqqdm91lg2wvny5q47yfjvmjzaryk2ic1s6g17b1";
 
   # these tests depend on a patched version of flamegraph which is included in
   # the github repository as a submodule, but absent from the crates version
diff --git a/pkgs/development/tools/misc/luarocks/default.nix b/pkgs/development/tools/misc/luarocks/default.nix
index f3ec4b4d7a4..c2449de5dd2 100644
--- a/pkgs/development/tools/misc/luarocks/default.nix
+++ b/pkgs/development/tools/misc/luarocks/default.nix
@@ -5,6 +5,7 @@
 , zip
 # some packages need to be compiled with cmake
 , cmake
+, installShellFiles
 }:
 
 stdenv.mkDerivation rec {
@@ -37,9 +38,9 @@ stdenv.mkDerivation rec {
     fi
   '';
 
-  buildInputs = [
-    lua curl makeWrapper which
-  ];
+  nativeBuildInputs = [ makeWrapper installShellFiles ];
+
+  buildInputs = [ lua curl which ];
 
   postInstall = ''
     sed -e "1s@.*@#! ${lua}/bin/lua$LUA_SUFFIX@" -i "$out"/bin/*
@@ -52,6 +53,9 @@ stdenv.mkDerivation rec {
               --suffix LUA_CPATH ";" "$(echo "$out"/share/lua/*/)?/init.lua"
         }
     done
+
+    installShellCompletion --cmd luarocks --bash <($out/bin/luarocks completion bash)
+    installShellCompletion --cmd luarocks --zsh <($out/bin/luarocks completion zsh)
   '';
 
   propagatedBuildInputs = [ zip unzip cmake ];
diff --git a/pkgs/development/tools/wrangler/default.nix b/pkgs/development/tools/wrangler/default.nix
index a14bc94e3f6..6191ba75f5d 100644
--- a/pkgs/development/tools/wrangler/default.nix
+++ b/pkgs/development/tools/wrangler/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wrangler";
-  version = "1.19.1";
+  version = "1.19.2";
 
   src = fetchFromGitHub {
     owner = "cloudflare";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Dr1qVdB/UliZM8gUVibi5vyO3Ni4icUqQXTo3UYmFqQ=";
+    sha256 = "sha256-RnnmhdfYAmqfi2aM2oYrieFNOkiae4WGfR5RoHeNfmw=";
   };
 
-  cargoSha256 = "sha256-XDMxNqWxHDof5L1zX99DH1nSpqqi4NlnjtljQxNWagw=";
+  cargoSha256 = "sha256-sneNRs4DPrNA84K73DVSxAAmZ2fqX6VyQhF8bKgIbaQ=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/games/0ad/data.nix b/pkgs/games/0ad/data.nix
index 0a763bb2be8..57018e04904 100644
--- a/pkgs/games/0ad/data.nix
+++ b/pkgs/games/0ad/data.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://releases.wildfiregames.com/0ad-${version}-alpha-unix-data.tar.xz";
-    sha256 = "1d8c58s2fwdmjjpna57gk0d2ar17f2fqcrkgsn45x6s3ickf984p";
+    sha256 = "1c9zrddmjxvvacismld6fbwbw9vrdbq6g6d3424p8w5p6xg5wlwy";
   };
 
   installPhase = ''
diff --git a/pkgs/games/0ad/game.nix b/pkgs/games/0ad/game.nix
index d5c483fa9f2..4f7cf4457a7 100644
--- a/pkgs/games/0ad/game.nix
+++ b/pkgs/games/0ad/game.nix
@@ -26,11 +26,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "0ad";
-  version = "0.0.25";
+  version = "0.0.25b";
 
   src = fetchurl {
     url = "http://releases.wildfiregames.com/0ad-${version}-alpha-unix-build.tar.xz";
-    sha256 = "03s38pknggsbzkhgj692yd3vm16ass7k4bgjn63qwn51q4vsnbjr";
+    sha256 = "1p9fa8f7sjb9c5wl3mawzyfqvgr614kdkhrj2k4db9vkyisws3fp";
   };
 
   nativeBuildInputs = [ python2 perl pkg-config ];
diff --git a/pkgs/games/factorio/versions.json b/pkgs/games/factorio/versions.json
index a8e395b2731..d1175d9670e 100644
--- a/pkgs/games/factorio/versions.json
+++ b/pkgs/games/factorio/versions.json
@@ -2,12 +2,12 @@
   "x86_64-linux": {
     "alpha": {
       "experimental": {
-        "name": "factorio_alpha_x64-1.1.38.tar.xz",
+        "name": "factorio_alpha_x64-1.1.39.tar.xz",
         "needsAuth": true,
-        "sha256": "0cjhfyz4j06yn08n239ajjjpgykh39hzifhmd0ygr5szw9gdc851",
+        "sha256": "1wyvk0niyppg7h9ayfsiy6x309bjwsbgf62nah13aps89jk8n1pc",
         "tarDirectory": "x64",
-        "url": "https://factorio.com/get-download/1.1.38/alpha/linux64",
-        "version": "1.1.38"
+        "url": "https://factorio.com/get-download/1.1.39/alpha/linux64",
+        "version": "1.1.39"
       },
       "stable": {
         "name": "factorio_alpha_x64-1.1.38.tar.xz",
@@ -38,12 +38,12 @@
     },
     "headless": {
       "experimental": {
-        "name": "factorio_headless_x64-1.1.38.tar.xz",
+        "name": "factorio_headless_x64-1.1.39.tar.xz",
         "needsAuth": false,
-        "sha256": "1c929pa9ifz0cvmx9k5yd267hjd5p7fdbln0czl3dq1vlskk1w71",
+        "sha256": "06figqmyd5bgwhpppziag4hs7x3ixr7wd8186cza3ly57bibha2m",
         "tarDirectory": "x64",
-        "url": "https://factorio.com/get-download/1.1.38/headless/linux64",
-        "version": "1.1.38"
+        "url": "https://factorio.com/get-download/1.1.39/headless/linux64",
+        "version": "1.1.39"
       },
       "stable": {
         "name": "factorio_headless_x64-1.1.38.tar.xz",
diff --git a/pkgs/misc/vim-plugins/build-vim-plugin.nix b/pkgs/misc/vim-plugins/build-vim-plugin.nix
index 3c623f08a16..a3a09a93ac9 100644
--- a/pkgs/misc/vim-plugins/build-vim-plugin.nix
+++ b/pkgs/misc/vim-plugins/build-vim-plugin.nix
@@ -1,6 +1,7 @@
 { lib, stdenv
-, rtpPath ? "share/vim-plugins"
+, rtpPath
 , vim
+, vimGenDocHook
 }:
 
 rec {
@@ -25,6 +26,7 @@ rec {
     addRtp "${rtpPath}/${path}" attrs (stdenv.mkDerivation (attrs // {
       name = namePrefix + name;
 
+      nativeBuildInputs = attrs.nativeBuildInputs or [] ++ [ vimGenDocHook ];
       inherit unpackPhase configurePhase buildPhase addonInfo preInstall postInstall;
 
       installPhase = ''
@@ -34,21 +36,6 @@ rec {
         mkdir -p $out/${rtpPath}
         cp -r . $target
 
-        # build help tags
-        if [ -d "$target/doc" ]; then
-          echo "Building help tags"
-          if ! ${vim}/bin/vim -N -u NONE -i NONE -n -E -s -V1 -c "helptags $target/doc" +quit!; then
-            echo "Failed to build help tags!"
-            exit 1
-          fi
-        else
-          echo "No docs available"
-        fi
-
-        if [ -n "$addonInfo" ]; then
-          echo "$addonInfo" > $target/addon-info.json
-        fi
-
         runHook postInstall
       '';
     }));
diff --git a/pkgs/misc/vim-plugins/default.nix b/pkgs/misc/vim-plugins/default.nix
index b56dced8971..9bfcf443186 100644
--- a/pkgs/misc/vim-plugins/default.nix
+++ b/pkgs/misc/vim-plugins/default.nix
@@ -3,7 +3,7 @@
 
 let
 
-  inherit (vimUtils.override {inherit vim;}) buildVimPluginFrom2Nix;
+  inherit (vimUtils.override {inherit vim;}) buildVimPluginFrom2Nix vimGenDocHook;
 
   inherit (lib) extends;
 
@@ -11,6 +11,8 @@ let
     # Convert derivation to a vim plugin.
     toVimPlugin = drv:
       drv.overrideAttrs(oldAttrs: {
+
+        nativeBuildInputs = oldAttrs.nativeBuildInputs or [] ++ [ vimGenDocHook ];
         passthru = (oldAttrs.passthru or {}) // {
           vimPlugin = true;
         };
diff --git a/pkgs/misc/vim-plugins/update-shell.nix b/pkgs/misc/vim-plugins/update-shell.nix
new file mode 100644
index 00000000000..e95801624b6
--- /dev/null
+++ b/pkgs/misc/vim-plugins/update-shell.nix
@@ -0,0 +1,13 @@
+{ nixpkgs ? import ../../.. { } }:
+with nixpkgs;
+let
+  pyEnv = python3.withPackages(ps: [ ps.GitPython ]);
+in
+mkShell {
+  packages = [
+    bash
+    pyEnv
+    nix-prefetch-scripts
+  ];
+}
+
diff --git a/pkgs/misc/vim-plugins/update.py b/pkgs/misc/vim-plugins/update.py
index 126b0d3e7d8..fa80b58eb38 100755
--- a/pkgs/misc/vim-plugins/update.py
+++ b/pkgs/misc/vim-plugins/update.py
@@ -1,5 +1,6 @@
 #!/usr/bin/env nix-shell
-#!nix-shell -p nix-prefetch-git -p python3 -p python3Packages.GitPython nix -i python3
+#!nix-shell update-shell.nix -i python3
+
 
 # format:
 # $ nix run nixpkgs.python3Packages.black -c black update.py
diff --git a/pkgs/misc/vim-plugins/vim-gen-doc-hook.sh b/pkgs/misc/vim-plugins/vim-gen-doc-hook.sh
new file mode 100644
index 00000000000..0efc6291201
--- /dev/null
+++ b/pkgs/misc/vim-plugins/vim-gen-doc-hook.sh
@@ -0,0 +1,31 @@
+echo "Sourcing vim-gen-doc-hook"
+
+# the doc folder is copied via the copy_directories entry of the rockspec
+# in the folder gitsigns.nvim-scm-1-rocks/gitsigns.nvim/scm-1
+vimPluginGenTags() {
+    echo "Executing vimPluginGenTags"
+
+    target="$out/@rtpPath@/$pname"
+    mkdir -p $out/@rtpPath@
+    cp -r . $target
+
+    # build help tags
+    if [ -d "$target/doc" ]; then
+        echo "Building help tags"
+        if ! @vimBinary@ -N -u NONE -i NONE -n -E -s -V1 -c "helptags $target/doc" +quit!; then
+        echo "Failed to build help tags!"
+        exit 1
+        fi
+    else
+        echo "No docs available"
+    fi
+
+    if [ -n "$addonInfo" ]; then
+        echo "$addonInfo" > $target/addon-info.json
+    fi
+
+    echo "Finished executing vimPluginInstallPhase"
+}
+
+preFixupHooks+=(vimPluginGenTags)
+
diff --git a/pkgs/misc/vim-plugins/vim-utils.nix b/pkgs/misc/vim-plugins/vim-utils.nix
index 2f81820fe77..a0293b8f5cf 100644
--- a/pkgs/misc/vim-plugins/vim-utils.nix
+++ b/pkgs/misc/vim-plugins/vim-utils.nix
@@ -4,6 +4,7 @@
 , fetchFromGitHub, runtimeShell
 , hasLuaModule
 , python3
+, callPackage, makeSetupHook
 }:
 
 /*
@@ -485,7 +486,18 @@ rec {
     '';
   };
 
-  inherit (import ./build-vim-plugin.nix { inherit lib stdenv rtpPath vim; }) buildVimPlugin buildVimPluginFrom2Nix;
+  vimGenDocHook = callPackage ({ vim }:
+    makeSetupHook {
+      name = "vim-gen-doc-hook";
+      deps = [ vim ];
+      substitutions = {
+        vimBinary = "${vim}/bin/vim";
+        inherit rtpPath;
+      };
+    } ./vim-gen-doc-hook.sh) {};
+
+  inherit (import ./build-vim-plugin.nix { inherit lib stdenv rtpPath vim vimGenDocHook; })
+    buildVimPlugin buildVimPluginFrom2Nix;
 
   # used to figure out which python dependencies etc. neovim needs
   requiredPlugins = {
diff --git a/pkgs/os-specific/linux/ddcci/default.nix b/pkgs/os-specific/linux/ddcci/default.nix
index 48913e2aef7..92c33077d68 100644
--- a/pkgs/os-specific/linux/ddcci/default.nix
+++ b/pkgs/os-specific/linux/ddcci/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "ddcci-driver";
-  version = "0.3.3";
+  version = "0.4.1";
   name = "${pname}-${kernel.version}-${version}";
 
   src = fetchFromGitLab {
     owner = "${pname}-linux";
     repo = "${pname}-linux";
     rev = "v${version}";
-    sha256 = "0vkkja3ykjil783zjpwp0vz7jy2fp9ccazzi3afd4fjk8gldin7f";
+    sha256 = "1qhsm0ccwfmwn0r6sbc6ms4lf4a3iqfcgqmbs6afr6hhxkqll3fg";
   };
 
   hardeningDisable = [ "pic" ];
@@ -35,8 +35,9 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Kernel module driver for DDC/CI monitors";
     homepage = "https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ bricewge ];
     platforms = platforms.linux;
+    broken = kernel.kernelOlder "5.1";
   };
 }
diff --git a/pkgs/os-specific/linux/kernel/linux-4.14.nix b/pkgs/os-specific/linux/kernel/linux-4.14.nix
index 914626124e5..8869d0cf653 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.14.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.14.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "4.14.245";
+  version = "4.14.246";
 
   # 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 = "085jls7b2rzxlmvp0zsp4l3wi5xdrqlv2qczzwvbhzna1f4n2x0d";
+    sha256 = "0fpgig84shpas1jc0h4s3aw9brkcq1as84gjbk4bfhc48bpi4mlw";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.19.nix b/pkgs/os-specific/linux/kernel/linux-4.19.nix
index e3d58da923e..d081f92332b 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.19.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.19.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "4.19.205";
+  version = "4.19.206";
 
   # 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 = "1ii9l44d6jxhyd5qkc5h83ixailma9v7hyl60wi3rskkafqnwv2m";
+    sha256 = "1h44lvzxd0cngj71bk8qba9dz7jlqj68ir6xjwfafglb81ppgsxp";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.4.nix b/pkgs/os-specific/linux/kernel/linux-4.4.nix
index 91a1ad5311c..1469508eb0e 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.4.nix
@@ -1,12 +1,12 @@
 { buildPackages, fetchurl, perl, buildLinux, nixosTests, stdenv, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.4.282";
+  version = "4.4.283";
   extraMeta.branch = "4.4";
   extraMeta.broken = stdenv.isAarch64;
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "1rgxznjb6gsi64wk7x2rylyi64y2nx5yiah5gfm40c6l2f7lb9cc";
+    sha256 = "1d9v4h4cbc4i371lhhwpxbmg88gna6xyi2ahfvv0clz60802y982";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.9.nix b/pkgs/os-specific/linux/kernel/linux-4.9.nix
index 4586467bb57..89f45b8021a 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.9.nix
+++ b/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.281";
+  version = "4.9.282";
   extraMeta.branch = "4.9";
   extraMeta.broken = stdenv.isAarch64;
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "1dg70jv3bqanmjs31s0x2p7nd5g37bqzjn9rc1y6wvkgm4pwahi6";
+    sha256 = "059fin4si93ya13xy831w84q496ksxidpd3kyw38918sfy4p6wk7";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.10.nix b/pkgs/os-specific/linux/kernel/linux-5.10.nix
index e992196f7e7..b36deaadb4b 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.10.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.10.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.10.61";
+  version = "5.10.62";
 
   # 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 = "1lci78584c0rg5m5rkylssppnv001pzh4769m9mds4fdqn6f7sl2";
+    sha256 = "1cc6z2xzi1s69805jk4f91iarx19v0yyqvssx1f1mc0l9l1db389";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.13.nix b/pkgs/os-specific/linux/kernel/linux-5.13.nix
index 8a321456fd1..dbccfd2cae7 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.13.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.13.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.13.13";
+  version = "5.13.14";
 
   # 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 = "0d1lr3rivgf9j3bn2a9hpzdf74nq8kybf3rfxxvw68vr1hhd4cam";
+    sha256 = "06lbjsbr86qa8yai5gfclbfxvcqsw33kxj9b4r93hh6z1wajmx82";
   };
 } // (args.argsOverride or { }))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.14.nix b/pkgs/os-specific/linux/kernel/linux-5.14.nix
index e6a76146ce7..a16b35f55cb 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.14.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.14.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.14";
+  version = "5.14.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;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "1cki6af9r30k8820j73qdyycp23mwpf2a2rjwl82p9i61mg8n1ky";
+    sha256 = "1iq8s031fviccc4710biwl7gxqdimm3nhlvxd0m3fykvhhmcanq0";
   };
 } // (args.argsOverride or { }))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.4.nix b/pkgs/os-specific/linux/kernel/linux-5.4.nix
index 7c7661eb75f..ea8cf7042a2 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.4.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.4.143";
+  version = "5.4.144";
 
   # 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 = "090x087p8hxnc1daf2xwj7vg8hg1jhz5i4andkbhdy550l5nalq9";
+    sha256 = "11aqp12xwbg7ysac3f9iaxwkhvasdg9bw4r43jj8af5bf61bjhxw";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-libre.nix b/pkgs/os-specific/linux/kernel/linux-libre.nix
index 91134e18a8a..3642dfe442d 100644
--- a/pkgs/os-specific/linux/kernel/linux-libre.nix
+++ b/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 = "18268";
-    sha256 = "050rk485csj41yfydr1cvn60vhb3lzbb3486sm832vp55d34i8fd";
+    rev = "18298";
+    sha256 = "027fp6h7295cc9m5g46phqd6hixcnvihpfsyrnzvsxz6pkvjzpw4";
   }
 , ...
 }:
diff --git a/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix b/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix
index 7413728cbf6..7a1f477f847 100644
--- a/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix
@@ -6,7 +6,7 @@
 , ... } @ args:
 
 let
-  version = "5.4.138-rt62"; # updated by ./update-rt.sh
+  version = "5.4.143-rt63"; # updated by ./update-rt.sh
   branch = lib.versions.majorMinor version;
   kversion = builtins.elemAt (lib.splitString "-" version) 0;
 in buildLinux (args // {
@@ -14,14 +14,14 @@ in buildLinux (args // {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${kversion}.tar.xz";
-    sha256 = "0mw6k9zrcmv1j4b3han5c0q8xbh38bka2wkkbl1y3ralg9r5ffd4";
+    sha256 = "090x087p8hxnc1daf2xwj7vg8hg1jhz5i4andkbhdy550l5nalq9";
   };
 
   kernelPatches = let rt-patch = {
     name = "rt";
     patch = fetchurl {
       url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz";
-      sha256 = "1zw7806fxx9cai9n6siv534x5r52d8fc13r07ypgw461pijcy5p6";
+      sha256 = "13d9sx6vw3hlh0cpccfsfqkjj6yfjmbh4wp4x6ry84i39lrfbwg3";
     };
   }; in [ rt-patch ] ++ kernelPatches;
 
diff --git a/pkgs/os-specific/linux/kexectools/default.nix b/pkgs/os-specific/linux/kexec-tools/default.nix
index 21d803e2b72..21d803e2b72 100644
--- a/pkgs/os-specific/linux/kexectools/default.nix
+++ b/pkgs/os-specific/linux/kexec-tools/default.nix
diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix
index a33bb3c1a1d..01d2db5b2f1 100644
--- a/pkgs/os-specific/linux/systemd/default.nix
+++ b/pkgs/os-specific/linux/systemd/default.nix
@@ -53,8 +53,8 @@
 , libselinux
 , withLibseccomp ? lib.meta.availableOn stdenv.hostPlatform libseccomp
 , libseccomp
-, withKexectools ? lib.meta.availableOn stdenv.hostPlatform kexectools
-, kexectools
+, withKexectools ? lib.meta.availableOn stdenv.hostPlatform kexec-tools
+, kexec-tools
 , bashInteractive
 , libmicrohttpd
 
@@ -308,7 +308,7 @@ stdenv.mkDerivation {
     ++ lib.optionals withCompression [ bzip2 lz4 xz ]
     ++ lib.optional withCryptsetup (lib.getDev cryptsetup.dev)
     ++ lib.optional withEfi gnu-efi
-    ++ lib.optional withKexectools kexectools
+    ++ lib.optional withKexectools kexec-tools
     ++ lib.optional withLibseccomp libseccomp
     ++ lib.optional withNetworkd iptables
     ++ lib.optional withPCRE2 pcre2
diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix
index 78cced512a4..bf45a503761 100644
--- a/pkgs/os-specific/linux/zfs/default.nix
+++ b/pkgs/os-specific/linux/zfs/default.nix
@@ -26,6 +26,14 @@ let
   buildKernel = any (n: n == configFile) [ "kernel" "all" ];
   buildUser = any (n: n == configFile) [ "user" "all" ];
 
+  # XXX: You always want to build kernel modules with the same stdenv as the
+  # kernel was built with. However, since zfs can also be built for userspace we
+  # need to correctly pick between the provided/default stdenv, and the one used
+  # by the kernel.
+  # If you don't do this your ZFS builds will fail on any non-standard (e.g.
+  # clang-built) kernels.
+  stdenv' = if kernel == null then stdenv else kernel.stdenv;
+
   common = { version
     , sha256
     , extraPatches ? []
@@ -34,7 +42,7 @@ let
     , latestCompatibleLinuxPackages
     , kernelCompatible ? null }:
 
-    stdenv.mkDerivation {
+    stdenv'.mkDerivation {
       name = "zfs-${configFile}-${version}${optionalString buildKernel "-${kernel.version}"}";
 
       src = fetchFromGitHub {
@@ -47,11 +55,6 @@ let
 
       postPatch = optionalString buildKernel ''
         patchShebangs scripts
-
-        # https://github.com/openzfs/zfs/issues/10107
-        substituteInPlace ./config/kernel.m4 \
-          --replace "make modules" "make CC=$CC modules"
-
         # The arrays must remain the same length, so we repeat a flag that is
         # already part of the command and therefore has no effect.
         substituteInPlace ./module/os/linux/zfs/zfs_ctldir.c \
diff --git a/pkgs/servers/http/ran/default.nix b/pkgs/servers/http/ran/default.nix
new file mode 100644
index 00000000000..5d58506be3f
--- /dev/null
+++ b/pkgs/servers/http/ran/default.nix
@@ -0,0 +1,47 @@
+{ buildGoModule
+, fetchFromGitHub
+, lib
+, runCommand
+, ran
+, curl
+}:
+
+buildGoModule rec {
+  pname = "ran";
+  version = "0.1.6";
+  src = fetchFromGitHub {
+    owner = "m3ng9i";
+    repo = "ran";
+    rev = "v${version}";
+    hash = "sha256-iMvUvzr/jaTNdgHQFuoJNJnnkx2XHIUUlrPWyTlreEw=";
+  };
+
+  vendorSha256 = "sha256-ObroruWWNilHIclqNvbEaa7vwk+1zMzDKbjlVs7Fito=";
+
+  CGO_ENABLED = 0;
+
+  ldflags = [
+    "-X" "main._version_=v${version}"
+    "-X" "main._branch_=master"
+  ];
+
+  passthru.tests = {
+    simple = runCommand "ran-test" { } ''
+      echo hello world > index.html
+      ${ran}/bin/ran &
+      # Allow ran to fully initialize
+      sleep 1
+      [ "$(${curl}/bin/curl 127.0.0.1:8080)" == "hello world" ]
+      kill %1
+      ${ran}/bin/ran --version > $out
+    '';
+  };
+
+  meta = with lib; {
+    homepage = "https://github.com/m3ng9i/ran";
+    description = "Ran is a simple web server for serving static files";
+    license = licenses.mit;
+    maintainers = with maintainers; [ tomberek ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/servers/nats-server/default.nix b/pkgs/servers/nats-server/default.nix
index 0d7904d69cc..339c847898c 100644
--- a/pkgs/servers/nats-server/default.nix
+++ b/pkgs/servers/nats-server/default.nix
@@ -4,7 +4,7 @@ with lib;
 
 buildGoPackage rec {
   pname   = "nats-server";
-  version = "2.3.4";
+  version = "2.4.0";
 
   goPackagePath = "github.com/nats-io/${pname}";
 
@@ -12,7 +12,7 @@ buildGoPackage rec {
     rev    = "v${version}";
     owner  = "nats-io";
     repo   = pname;
-    sha256 = "sha256-VNnL1v7R8cko9C/494XJh4aMRZv459tAHys9nmrA9QE=";
+    sha256 = "sha256-v758qj1dy8zh3zfZxKkKALxZqNAxc1XdtTW4dxU4l5A=";
   };
 
   meta = {
diff --git a/pkgs/servers/search/meilisearch/Cargo.nix b/pkgs/servers/search/meilisearch/Cargo.nix
new file mode 100644
index 00000000000..c226ad67126
--- /dev/null
+++ b/pkgs/servers/search/meilisearch/Cargo.nix
@@ -0,0 +1,11200 @@
+
+# This file was @generated by crate2nix 0.10.0 with the command:
+#   "generate"
+# See https://github.com/kolloch/crate2nix for more info.
+
+{ nixpkgs ? <nixpkgs>
+, pkgs ? import nixpkgs { config = {}; }
+, lib ? pkgs.lib
+, stdenv ? pkgs.stdenv
+, buildRustCrateForPkgs ? if buildRustCrate != null
+    then lib.warn "crate2nix: Passing `buildRustCrate` as argument to Cargo.nix is deprecated. If you don't customize `buildRustCrate`, replace `callPackage ./Cargo.nix {}` by `import ./Cargo.nix { inherit pkgs; }`, and if you need to customize `buildRustCrate`, use `buildRustCrateForPkgs` instead." (_: buildRustCrate)
+    else pkgs: pkgs.buildRustCrate
+  # Deprecated
+, buildRustCrate ? null
+  # This is used as the `crateOverrides` argument for `buildRustCrate`.
+, defaultCrateOverrides ? pkgs.defaultCrateOverrides
+  # The features to enable for the root_crate or the workspace_members.
+, rootFeatures ? [ "default" ]
+  # If true, throw errors instead of issueing deprecation warnings.
+, strictDeprecation ? false
+  # Used for conditional compilation based on CPU feature detection.
+, targetFeatures ? []
+  # Whether to perform release builds: longer compile times, faster binaries.
+, release ? true
+  # Additional crate2nix configuration if it exists.
+, crateConfig
+  ? if builtins.pathExists ./crate-config.nix
+    then pkgs.callPackage ./crate-config.nix {}
+    else {}
+}:
+
+rec {
+  #
+  # "public" attributes that we attempt to keep stable with new versions of crate2nix.
+  #
+
+
+  # Refer your crate build derivation by name here.
+  # You can override the features with
+  # workspaceMembers."${crateName}".build.override { features = [ "default" "feature1" ... ]; }.
+  workspaceMembers = {
+    "meilisearch-error" = rec {
+      packageId = "meilisearch-error";
+      build = internal.buildRustCrateWithFeatures {
+        packageId = "meilisearch-error";
+      };
+
+      # Debug support which might change between releases.
+      # File a bug if you depend on any for non-debug work!
+      debug = internal.debugCrate { inherit packageId; };
+    };
+    "meilisearch-http" = rec {
+      packageId = "meilisearch-http";
+      build = internal.buildRustCrateWithFeatures {
+        packageId = "meilisearch-http";
+      };
+
+      # Debug support which might change between releases.
+      # File a bug if you depend on any for non-debug work!
+      debug = internal.debugCrate { inherit packageId; };
+    };
+  };
+
+  # A derivation that joins the outputs of all workspace members together.
+  allWorkspaceMembers = pkgs.symlinkJoin {
+      name = "all-workspace-members";
+      paths =
+        let members = builtins.attrValues workspaceMembers;
+        in builtins.map (m: m.build) members;
+  };
+
+  #
+  # "internal" ("private") attributes that may change in every new version of crate2nix.
+  #
+
+  internal = rec {
+    # Build and dependency information for crates.
+    # Many of the fields are passed one-to-one to buildRustCrate.
+    #
+    # Noteworthy:
+    # * `dependencies`/`buildDependencies`: similar to the corresponding fields for buildRustCrate.
+    #   but with additional information which is used during dependency/feature resolution.
+    # * `resolvedDependencies`: the selected default features reported by cargo - only included for debugging.
+    # * `devDependencies` as of now not used by `buildRustCrate` but used to
+    #   inject test dependencies into the build
+
+    crates = {
+      "actix-codec" = rec {
+        crateName = "actix-codec";
+        version = "0.4.0";
+        edition = "2018";
+        sha256 = "16h1q4qmq2r0dq71cl7wbgi9yzr1y5qc2z6ahg5l84z5v6rbwp8x";
+        libName = "actix_codec";
+        authors = [
+          "Nikolay Kim <fafhrd91@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "bitflags";
+            packageId = "bitflags";
+          }
+          {
+            name = "bytes";
+            packageId = "bytes 1.0.1";
+          }
+          {
+            name = "futures-core";
+            packageId = "futures-core";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-sink";
+            packageId = "futures-sink";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "pin-project-lite";
+            packageId = "pin-project-lite";
+          }
+          {
+            name = "tokio";
+            packageId = "tokio";
+          }
+          {
+            name = "tokio-util";
+            packageId = "tokio-util";
+            features = [ "codec" "io" ];
+          }
+        ];
+
+      };
+      "actix-cors" = rec {
+        crateName = "actix-cors";
+        version = "0.6.0-beta.1";
+        edition = "2018";
+        workspace_member = null;
+        src = pkgs.fetchgit {
+          url = "https://github.com/MarinPostma/actix-extras.git";
+          rev = "2dac1a421619bf7b386dea63d3ae25a3bc4abc43";
+          sha256 = "0ny03ibf8vvdvcmcvzlvngx80rvmh47bx517iqc5wh74yzdmdlsn";
+        };
+        libName = "actix_cors";
+        authors = [
+          "Nikolay Kim <fafhrd91@gmail.com>"
+          "Rob Ede <robjtede@icloud.com>"
+        ];
+        dependencies = [
+          {
+            name = "actix-service";
+            packageId = "actix-service";
+          }
+          {
+            name = "actix-web";
+            packageId = "actix-web";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "derive_more";
+            packageId = "derive_more";
+          }
+          {
+            name = "futures-util";
+            packageId = "futures-util";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "once_cell";
+            packageId = "once_cell";
+          }
+          {
+            name = "tinyvec";
+            packageId = "tinyvec";
+            features = [ "alloc" ];
+          }
+        ];
+
+      };
+      "actix-http" = rec {
+        crateName = "actix-http";
+        version = "3.0.0-beta.6";
+        edition = "2018";
+        sha256 = "0iq32p49ds5ag9ldwpi83j9zqapvx5hdh4njlncfcqk0l0mirmar";
+        libName = "actix_http";
+        authors = [
+          "Nikolay Kim <fafhrd91@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "actix-codec";
+            packageId = "actix-codec";
+          }
+          {
+            name = "actix-rt";
+            packageId = "actix-rt";
+          }
+          {
+            name = "actix-service";
+            packageId = "actix-service";
+          }
+          {
+            name = "actix-tls";
+            packageId = "actix-tls";
+            features = [ "accept" "connect" ];
+          }
+          {
+            name = "actix-utils";
+            packageId = "actix-utils";
+          }
+          {
+            name = "ahash";
+            packageId = "ahash 0.7.4";
+          }
+          {
+            name = "base64";
+            packageId = "base64";
+          }
+          {
+            name = "bitflags";
+            packageId = "bitflags";
+          }
+          {
+            name = "brotli2";
+            packageId = "brotli2";
+            optional = true;
+          }
+          {
+            name = "bytes";
+            packageId = "bytes 1.0.1";
+          }
+          {
+            name = "bytestring";
+            packageId = "bytestring";
+          }
+          {
+            name = "derive_more";
+            packageId = "derive_more";
+          }
+          {
+            name = "encoding_rs";
+            packageId = "encoding_rs";
+          }
+          {
+            name = "flate2";
+            packageId = "flate2";
+            optional = true;
+          }
+          {
+            name = "futures-core";
+            packageId = "futures-core";
+            usesDefaultFeatures = false;
+            features = [ "alloc" ];
+          }
+          {
+            name = "futures-util";
+            packageId = "futures-util";
+            usesDefaultFeatures = false;
+            features = [ "alloc" "sink" ];
+          }
+          {
+            name = "h2";
+            packageId = "h2";
+          }
+          {
+            name = "http";
+            packageId = "http";
+          }
+          {
+            name = "httparse";
+            packageId = "httparse";
+          }
+          {
+            name = "itoa";
+            packageId = "itoa";
+          }
+          {
+            name = "language-tags";
+            packageId = "language-tags";
+          }
+          {
+            name = "local-channel";
+            packageId = "local-channel";
+          }
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "mime";
+            packageId = "mime";
+          }
+          {
+            name = "once_cell";
+            packageId = "once_cell";
+          }
+          {
+            name = "paste";
+            packageId = "paste";
+          }
+          {
+            name = "percent-encoding";
+            packageId = "percent-encoding";
+          }
+          {
+            name = "pin-project";
+            packageId = "pin-project";
+          }
+          {
+            name = "pin-project-lite";
+            packageId = "pin-project-lite";
+          }
+          {
+            name = "rand";
+            packageId = "rand 0.8.4";
+          }
+          {
+            name = "regex";
+            packageId = "regex";
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+          }
+          {
+            name = "sha-1";
+            packageId = "sha-1 0.9.6";
+          }
+          {
+            name = "smallvec";
+            packageId = "smallvec";
+          }
+          {
+            name = "time";
+            packageId = "time 0.2.27";
+            usesDefaultFeatures = false;
+            features = [ "std" ];
+          }
+          {
+            name = "tokio";
+            packageId = "tokio";
+            features = [ "sync" ];
+          }
+        ];
+        features = {
+          "compress" = [ "flate2" "brotli2" ];
+          "openssl" = [ "actix-tls/openssl" ];
+          "rustls" = [ "actix-tls/rustls" ];
+          "trust-dns" = [ "trust-dns-resolver" ];
+        };
+        resolvedDefaultFeatures = [ "brotli2" "compress" "default" "flate2" "rustls" ];
+      };
+      "actix-macros" = rec {
+        crateName = "actix-macros";
+        version = "0.2.1";
+        edition = "2018";
+        sha256 = "0dw88g9lzrhkzq8hxh1lvykr87wdm0cicyz5kxp5w4vwhpb6ry62";
+        procMacro = true;
+        authors = [
+          "Nikolay Kim <fafhrd91@gmail.com>"
+          "Ibraheem Ahmed <ibrah1440@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+            features = [ "full" ];
+          }
+        ];
+
+      };
+      "actix-router" = rec {
+        crateName = "actix-router";
+        version = "0.2.7";
+        edition = "2018";
+        sha256 = "0b258dplqmria44mv1zzjpmm2xrpdzwcqcz3jg41z7k4ffprklia";
+        libName = "actix_router";
+        authors = [
+          "Nikolay Kim <fafhrd91@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "bytestring";
+            packageId = "bytestring";
+          }
+          {
+            name = "http";
+            packageId = "http";
+            optional = true;
+          }
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "regex";
+            packageId = "regex";
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+          }
+        ];
+        features = {
+          "default" = [ "http" ];
+        };
+        resolvedDefaultFeatures = [ "default" "http" ];
+      };
+      "actix-rt" = rec {
+        crateName = "actix-rt";
+        version = "2.2.0";
+        edition = "2018";
+        sha256 = "181bwmsazdn7v8s6m9s7abv92lpsh6prcg3wi8l95vf9azcpqzdw";
+        libName = "actix_rt";
+        authors = [
+          "Nikolay Kim <fafhrd91@gmail.com>"
+          "Rob Ede <robjtede@icloud.com>"
+        ];
+        dependencies = [
+          {
+            name = "actix-macros";
+            packageId = "actix-macros";
+            optional = true;
+          }
+          {
+            name = "futures-core";
+            packageId = "futures-core";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "tokio";
+            packageId = "tokio";
+            features = [ "rt" "net" "parking_lot" "signal" "sync" "time" ];
+          }
+        ];
+        features = {
+          "default" = [ "macros" ];
+          "macros" = [ "actix-macros" ];
+        };
+        resolvedDefaultFeatures = [ "actix-macros" "default" "macros" ];
+      };
+      "actix-server" = rec {
+        crateName = "actix-server";
+        version = "2.0.0-beta.5";
+        edition = "2018";
+        sha256 = "11xzz6hi6jclakj14qhf02xpbhmwm1b8gdmk31h1gc63zhar4di6";
+        libName = "actix_server";
+        authors = [
+          "Nikolay Kim <fafhrd91@gmail.com>"
+          "fakeshadow <24548779@qq.com>"
+        ];
+        dependencies = [
+          {
+            name = "actix-rt";
+            packageId = "actix-rt";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "actix-service";
+            packageId = "actix-service";
+          }
+          {
+            name = "actix-utils";
+            packageId = "actix-utils";
+          }
+          {
+            name = "futures-core";
+            packageId = "futures-core";
+            usesDefaultFeatures = false;
+            features = [ "alloc" ];
+          }
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "mio";
+            packageId = "mio";
+            features = [ "os-poll" "net" ];
+          }
+          {
+            name = "num_cpus";
+            packageId = "num_cpus";
+          }
+          {
+            name = "slab";
+            packageId = "slab";
+          }
+          {
+            name = "tokio";
+            packageId = "tokio";
+            features = [ "sync" ];
+          }
+        ];
+        features = {
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "actix-service" = rec {
+        crateName = "actix-service";
+        version = "2.0.0";
+        edition = "2018";
+        sha256 = "0d2hf15clvxbnx08lql6h18yalap9x1g69icwvxd0c47dbbgkxbp";
+        libName = "actix_service";
+        authors = [
+          "Nikolay Kim <fafhrd91@gmail.com>"
+          "Rob Ede <robjtede@icloud.com>"
+          "fakeshadow <24548779@qq.com>"
+        ];
+        dependencies = [
+          {
+            name = "futures-core";
+            packageId = "futures-core";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "paste";
+            packageId = "paste";
+          }
+          {
+            name = "pin-project-lite";
+            packageId = "pin-project-lite";
+          }
+        ];
+
+      };
+      "actix-tls" = rec {
+        crateName = "actix-tls";
+        version = "3.0.0-beta.5";
+        edition = "2018";
+        sha256 = "0sgmzsxm00l0zw8qaw33nqn4v8kkgnjh3spp681yyqh9hihbpdv5";
+        libName = "actix_tls";
+        authors = [
+          "Nikolay Kim <fafhrd91@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "actix-codec";
+            packageId = "actix-codec";
+          }
+          {
+            name = "actix-rt";
+            packageId = "actix-rt";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "actix-service";
+            packageId = "actix-service";
+          }
+          {
+            name = "actix-utils";
+            packageId = "actix-utils";
+          }
+          {
+            name = "derive_more";
+            packageId = "derive_more";
+          }
+          {
+            name = "futures-core";
+            packageId = "futures-core";
+            usesDefaultFeatures = false;
+            features = [ "alloc" ];
+          }
+          {
+            name = "http";
+            packageId = "http";
+            optional = true;
+          }
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "tokio-rustls";
+            packageId = "tokio-rustls";
+            optional = true;
+          }
+          {
+            name = "tokio-util";
+            packageId = "tokio-util";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "webpki-roots";
+            packageId = "webpki-roots";
+            optional = true;
+          }
+        ];
+        features = {
+          "default" = [ "accept" "connect" "uri" ];
+          "native-tls" = [ "tokio-native-tls" ];
+          "openssl" = [ "tls-openssl" "tokio-openssl" ];
+          "rustls" = [ "tokio-rustls" "webpki-roots" ];
+          "uri" = [ "http" ];
+        };
+        resolvedDefaultFeatures = [ "accept" "connect" "default" "http" "rustls" "tokio-rustls" "uri" "webpki-roots" ];
+      };
+      "actix-utils" = rec {
+        crateName = "actix-utils";
+        version = "3.0.0";
+        edition = "2018";
+        sha256 = "155aj87z8634mfmggfixyqy3pqhpyf7g97zrzy6piz77qamcp4g4";
+        libName = "actix_utils";
+        authors = [
+          "Nikolay Kim <fafhrd91@gmail.com>"
+          "Rob Ede <robjtede@icloud.com>"
+        ];
+        dependencies = [
+          {
+            name = "local-waker";
+            packageId = "local-waker";
+          }
+          {
+            name = "pin-project-lite";
+            packageId = "pin-project-lite";
+          }
+        ];
+
+      };
+      "actix-web" = rec {
+        crateName = "actix-web";
+        version = "4.0.0-beta.6";
+        edition = "2018";
+        sha256 = "0bvsjdxz3bnxx9dbqyy8bhwkijmr4pz21bgwn00dfmqm0lryj4pz";
+        libName = "actix_web";
+        authors = [
+          "Nikolay Kim <fafhrd91@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "actix-codec";
+            packageId = "actix-codec";
+          }
+          {
+            name = "actix-http";
+            packageId = "actix-http";
+          }
+          {
+            name = "actix-macros";
+            packageId = "actix-macros";
+          }
+          {
+            name = "actix-router";
+            packageId = "actix-router";
+          }
+          {
+            name = "actix-rt";
+            packageId = "actix-rt";
+          }
+          {
+            name = "actix-server";
+            packageId = "actix-server";
+          }
+          {
+            name = "actix-service";
+            packageId = "actix-service";
+          }
+          {
+            name = "actix-tls";
+            packageId = "actix-tls";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "actix-utils";
+            packageId = "actix-utils";
+          }
+          {
+            name = "actix-web-codegen";
+            packageId = "actix-web-codegen";
+          }
+          {
+            name = "ahash";
+            packageId = "ahash 0.7.4";
+          }
+          {
+            name = "bytes";
+            packageId = "bytes 1.0.1";
+          }
+          {
+            name = "cookie";
+            packageId = "cookie";
+            optional = true;
+            features = [ "percent-encode" ];
+          }
+          {
+            name = "derive_more";
+            packageId = "derive_more";
+          }
+          {
+            name = "either";
+            packageId = "either";
+          }
+          {
+            name = "encoding_rs";
+            packageId = "encoding_rs";
+          }
+          {
+            name = "futures-core";
+            packageId = "futures-core";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-util";
+            packageId = "futures-util";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "itoa";
+            packageId = "itoa";
+          }
+          {
+            name = "language-tags";
+            packageId = "language-tags";
+          }
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "mime";
+            packageId = "mime";
+          }
+          {
+            name = "once_cell";
+            packageId = "once_cell";
+          }
+          {
+            name = "pin-project";
+            packageId = "pin-project";
+          }
+          {
+            name = "regex";
+            packageId = "regex";
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+            features = [ "derive" ];
+          }
+          {
+            name = "serde_json";
+            packageId = "serde_json";
+          }
+          {
+            name = "serde_urlencoded";
+            packageId = "serde_urlencoded";
+          }
+          {
+            name = "smallvec";
+            packageId = "smallvec";
+          }
+          {
+            name = "socket2";
+            packageId = "socket2";
+          }
+          {
+            name = "time";
+            packageId = "time 0.2.27";
+            usesDefaultFeatures = false;
+            features = [ "std" ];
+          }
+          {
+            name = "url";
+            packageId = "url";
+          }
+        ];
+        features = {
+          "compress" = [ "actix-http/compress" ];
+          "cookies" = [ "cookie" ];
+          "default" = [ "compress" "cookies" ];
+          "openssl" = [ "actix-http/openssl" "actix-tls/accept" "actix-tls/openssl" ];
+          "rustls" = [ "actix-http/rustls" "actix-tls/accept" "actix-tls/rustls" ];
+          "secure-cookies" = [ "cookie/secure" ];
+        };
+        resolvedDefaultFeatures = [ "actix-tls" "compress" "cookie" "cookies" "default" "rustls" ];
+      };
+      "actix-web-codegen" = rec {
+        crateName = "actix-web-codegen";
+        version = "0.5.0-beta.3";
+        edition = "2018";
+        sha256 = "13bcbad7snnqx25sb4r3yvr6f5jxiny9ywp9x30hacblhrlqq10d";
+        procMacro = true;
+        authors = [
+          "Nikolay Kim <fafhrd91@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+            features = [ "full" "parsing" ];
+          }
+        ];
+
+      };
+      "actix-web-static-files" = rec {
+        crateName = "actix-web-static-files";
+        version = "3.0.5";
+        edition = "2018";
+        workspace_member = null;
+        src = pkgs.fetchgit {
+          url = "https://github.com/MarinPostma/actix-web-static-files.git";
+          rev = "6db8c3e2940d61659581492b5e9c9b9062567613";
+          sha256 = "1q00s1w2ry6kl7j4bn4q1xqpdn90sc3icjm2wml8fn4rszamhnqy";
+        };
+        authors = [
+          "Alexander Korolev <kilork@yandex.ru>"
+        ];
+        dependencies = [
+          {
+            name = "actix-service";
+            packageId = "actix-service";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "actix-web";
+            packageId = "actix-web";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "change-detection";
+            packageId = "change-detection";
+            optional = true;
+          }
+          {
+            name = "derive_more";
+            packageId = "derive_more";
+          }
+          {
+            name = "futures";
+            packageId = "futures";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "mime_guess";
+            packageId = "mime_guess";
+          }
+          {
+            name = "path-slash";
+            packageId = "path-slash";
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "actix-service";
+            packageId = "actix-service";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "actix-web";
+            packageId = "actix-web";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "change-detection";
+            packageId = "change-detection";
+            optional = true;
+          }
+          {
+            name = "derive_more";
+            packageId = "derive_more";
+          }
+          {
+            name = "futures";
+            packageId = "futures";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "mime_guess";
+            packageId = "mime_guess";
+          }
+          {
+            name = "path-slash";
+            packageId = "path-slash";
+          }
+        ];
+        features = {
+          "default" = [ "change-detection" ];
+        };
+        resolvedDefaultFeatures = [ "change-detection" "default" ];
+      };
+      "addr2line" = rec {
+        crateName = "addr2line";
+        version = "0.15.2";
+        edition = "2015";
+        sha256 = "0fkz8sgwp9lbhzfch89wimn4qx16a8l62vfx07hrw85y3xxf98p7";
+        authors = [
+          "Nick Fitzgerald <fitzgen@gmail.com>"
+          "Philip Craig <philipjcraig@gmail.com>"
+          "Jon Gjengset <jon@thesquareplanet.com>"
+          "Noah Bergbauer <noah.bergbauer@tum.de>"
+        ];
+        dependencies = [
+          {
+            name = "gimli";
+            packageId = "gimli";
+            usesDefaultFeatures = false;
+            features = [ "read" ];
+          }
+        ];
+        features = {
+          "default" = [ "rustc-demangle" "cpp_demangle" "std-object" "fallible-iterator" "smallvec" ];
+          "rustc-dep-of-std" = [ "core" "alloc" "compiler_builtins" "gimli/rustc-dep-of-std" ];
+          "std" = [ "gimli/std" ];
+          "std-object" = [ "std" "object" "object/std" "object/compression" "gimli/endian-reader" ];
+        };
+      };
+      "adler" = rec {
+        crateName = "adler";
+        version = "1.0.2";
+        edition = "2015";
+        sha256 = "1zim79cvzd5yrkzl3nyfx0avijwgk9fqv3yrscdy1cc79ih02qpj";
+        authors = [
+          "Jonas Schievink <jonasschievink@gmail.com>"
+        ];
+        features = {
+          "default" = [ "std" ];
+          "rustc-dep-of-std" = [ "core" "compiler_builtins" ];
+        };
+      };
+      "ahash 0.3.8" = rec {
+        crateName = "ahash";
+        version = "0.3.8";
+        edition = "2018";
+        sha256 = "05qjnr0wccch0gg2kghg0xyh8qd5gfqd15q9dd6r1lamcs375zg8";
+        authors = [
+          "Tom Kaitchuck <Tom.Kaitchuck@gmail.com>"
+        ];
+        features = {
+          "compile-time-rng" = [ "const-random" ];
+          "default" = [ "compile-time-rng" "std" ];
+        };
+      };
+      "ahash 0.7.4" = rec {
+        crateName = "ahash";
+        version = "0.7.4";
+        edition = "2018";
+        sha256 = "163vy6jcd7r3jczsv4zyhlc5x9dqsfgg1yrqbm3xhygr1czq7fs3";
+        authors = [
+          "Tom Kaitchuck <Tom.Kaitchuck@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "getrandom";
+            packageId = "getrandom 0.2.3";
+            target = { target, features }: ((target."os" == "linux") || (target."os" == "android") || (target."os" == "windows") || (target."os" == "macos") || (target."os" == "ios") || (target."os" == "freebsd") || (target."os" == "openbsd") || (target."os" == "netbsd") || (target."os" == "dragonfly") || (target."os" == "solaris") || (target."os" == "illumos") || (target."os" == "fuchsia") || (target."os" == "redox") || (target."os" == "cloudabi") || (target."os" == "haiku") || (target."os" == "vxworks") || (target."os" == "emscripten") || (target."os" == "wasi"));
+          }
+          {
+            name = "once_cell";
+            packageId = "once_cell";
+            usesDefaultFeatures = false;
+            target = { target, features }: ((target."os" == "linux") || (target."os" == "android") || (target."os" == "windows") || (target."os" == "macos") || (target."os" == "ios") || (target."os" == "freebsd") || (target."os" == "openbsd") || (target."os" == "netbsd") || (target."os" == "dragonfly") || (target."os" == "solaris") || (target."os" == "illumos") || (target."os" == "fuchsia") || (target."os" == "redox") || (target."os" == "cloudabi") || (target."os" == "haiku") || (target."os" == "vxworks") || (target."os" == "emscripten") || (target."os" == "wasi"));
+            features = [ "unstable" "alloc" ];
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "version_check";
+            packageId = "version_check";
+          }
+        ];
+        features = {
+          "compile-time-rng" = [ "const-random" ];
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "aho-corasick" = rec {
+        crateName = "aho-corasick";
+        version = "0.7.18";
+        edition = "2018";
+        sha256 = "0vv50b3nvkhyy7x7ip19qnsq11bqlnffkmj2yx2xlyk5wzawydqy";
+        libName = "aho_corasick";
+        authors = [
+          "Andrew Gallant <jamslam@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "memchr";
+            packageId = "memchr";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+          "std" = [ "memchr/std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "ansi_term" = rec {
+        crateName = "ansi_term";
+        version = "0.11.0";
+        edition = "2015";
+        sha256 = "16wpvrghvd0353584i1idnsgm0r3vchg8fyrm0x8ayv1rgvbljgf";
+        authors = [
+          "ogham@bsago.me"
+          "Ryan Scheel (Havvy) <ryan.havvy@gmail.com>"
+          "Josh Triplett <josh@joshtriplett.org>"
+        ];
+        dependencies = [
+          {
+            name = "winapi";
+            packageId = "winapi";
+            target = { target, features }: (target."os" == "windows");
+            features = [ "errhandlingapi" "consoleapi" "processenv" ];
+          }
+        ];
+
+      };
+      "anyhow" = rec {
+        crateName = "anyhow";
+        version = "1.0.41";
+        edition = "2018";
+        sha256 = "0qaa0vgsa7ybq7wqk57508l52l1lr3sbx49vk9hf43w9yql2dbqm";
+        authors = [
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "arc-swap" = rec {
+        crateName = "arc-swap";
+        version = "1.3.0";
+        edition = "2018";
+        sha256 = "08689pgnd38qjghg1njdpkj4mj46k1q4znn9gwz9082m8i72a1p9";
+        authors = [
+          "Michal 'vorner' Vaner <vorner@vorner.cz>"
+        ];
+        features = {
+        };
+      };
+      "assert-json-diff" = rec {
+        crateName = "assert-json-diff";
+        version = "1.0.1";
+        edition = "2018";
+        workspace_member = null;
+        src = pkgs.fetchgit {
+          url = "https://github.com/qdequele/assert-json-diff";
+          rev = "9012a0c8866d0f2db0ef9a6242e4a19d1e8c67e4";
+          sha256 = "1inv5y75acrw0vhpsc32rh5h0701vnm7c4lcsqcdzd8sdy76cisl";
+        };
+        authors = [
+          "David Pedersen <david.pdrsn@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "serde";
+            packageId = "serde";
+          }
+          {
+            name = "serde_json";
+            packageId = "serde_json";
+          }
+        ];
+
+      };
+      "async-stream" = rec {
+        crateName = "async-stream";
+        version = "0.3.2";
+        edition = "2018";
+        sha256 = "0986b72jksg4lndw76py9glry3snc29bbqrna874wl5jwgkp84qp";
+        authors = [
+          "Carl Lerche <me@carllerche.com>"
+        ];
+        dependencies = [
+          {
+            name = "async-stream-impl";
+            packageId = "async-stream-impl";
+          }
+          {
+            name = "futures-core";
+            packageId = "futures-core";
+          }
+        ];
+
+      };
+      "async-stream-impl" = rec {
+        crateName = "async-stream-impl";
+        version = "0.3.2";
+        edition = "2018";
+        sha256 = "024k57iwmmhzvbzacxlkssh45cqlnb8xjlvlsp60jm6fsb4di3k4";
+        procMacro = true;
+        authors = [
+          "Carl Lerche <me@carllerche.com>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+            features = [ "extra-traits" "full" "visit-mut" ];
+          }
+        ];
+
+      };
+      "async-trait" = rec {
+        crateName = "async-trait";
+        version = "0.1.50";
+        edition = "2018";
+        sha256 = "08m7xim7dvcjw5cx2ryz3wndxc0vib2s02qrvabxvg2cpd5yi60b";
+        procMacro = true;
+        authors = [
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+            features = [ "full" "visit-mut" ];
+          }
+        ];
+
+      };
+      "atty" = rec {
+        crateName = "atty";
+        version = "0.2.14";
+        edition = "2015";
+        sha256 = "1s7yslcs6a28c5vz7jwj63lkfgyx8mx99fdirlhi9lbhhzhrpcyr";
+        authors = [
+          "softprops <d.tangren@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "hermit-abi";
+            packageId = "hermit-abi";
+            target = { target, features }: (target."os" == "hermit");
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+            usesDefaultFeatures = false;
+            target = { target, features }: (target."unix" or false);
+          }
+          {
+            name = "winapi";
+            packageId = "winapi";
+            target = { target, features }: (target."windows" or false);
+            features = [ "consoleapi" "processenv" "minwinbase" "minwindef" "winbase" ];
+          }
+        ];
+
+      };
+      "autocfg" = rec {
+        crateName = "autocfg";
+        version = "1.0.1";
+        edition = "2015";
+        sha256 = "0jj6i9zn4gjl03kjvziqdji6rwx8ykz8zk2ngpc331z2g3fk3c6d";
+        authors = [
+          "Josh Stone <cuviper@gmail.com>"
+        ];
+
+      };
+      "backtrace" = rec {
+        crateName = "backtrace";
+        version = "0.3.60";
+        edition = "2018";
+        sha256 = "10kjrb4b3kjx6g4mkmcwjg4dimmzpsn7iq3225wix0jd9sjmx0dp";
+        authors = [
+          "The Rust Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "addr2line";
+            packageId = "addr2line";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "miniz_oxide";
+            packageId = "miniz_oxide";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "object";
+            packageId = "object";
+            usesDefaultFeatures = false;
+            features = [ "read_core" "elf" "macho" "pe" "unaligned" "archive" ];
+          }
+          {
+            name = "rustc-demangle";
+            packageId = "rustc-demangle";
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "cc";
+            packageId = "cc";
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+          "serialize-rustc" = [ "rustc-serialize" ];
+          "serialize-serde" = [ "serde" ];
+          "verify-winapi" = [ "winapi/dbghelp" "winapi/handleapi" "winapi/libloaderapi" "winapi/memoryapi" "winapi/minwindef" "winapi/processthreadsapi" "winapi/synchapi" "winapi/tlhelp32" "winapi/winbase" "winapi/winnt" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "base-x" = rec {
+        crateName = "base-x";
+        version = "0.2.8";
+        edition = "2015";
+        sha256 = "12zj7vgrf7wlc46f6xxc14dq1r6z6vmhn51vkdkp04q37lz1ylm4";
+        authors = [
+          "Alex R. <alexei.rudenko@gmail.com>"
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "base64" = rec {
+        crateName = "base64";
+        version = "0.13.0";
+        edition = "2018";
+        sha256 = "1z82g23mbzjgijkpcrilc7nljpxpvpf7zxf6iyiapkgka2ngwkch";
+        authors = [
+          "Alice Maz <alice@alicemaz.com>"
+          "Marshall Pierce <marshall@mpierce.org>"
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "bincode" = rec {
+        crateName = "bincode";
+        version = "1.3.3";
+        edition = "2015";
+        sha256 = "1bfw3mnwzx5g1465kiqllp5n4r10qrqy88kdlp3jfwnq2ya5xx5i";
+        authors = [
+          "Ty Overby <ty@pre-alpha.com>"
+          "Francesco Mazzoli <f@mazzo.li>"
+          "David Tolnay <dtolnay@gmail.com>"
+          "Zoey Riordan <zoey@dos.cafe>"
+        ];
+        dependencies = [
+          {
+            name = "serde";
+            packageId = "serde";
+          }
+        ];
+        features = {
+        };
+      };
+      "bitflags" = rec {
+        crateName = "bitflags";
+        version = "1.2.1";
+        edition = "2015";
+        sha256 = "14qnd5nq8p2almk79m4m8ydqhd413yaxsyjp5xd19g3mikzf47fg";
+        authors = [
+          "The Rust Project Developers"
+        ];
+        features = {
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "block-buffer 0.7.3" = rec {
+        crateName = "block-buffer";
+        version = "0.7.3";
+        edition = "2015";
+        sha256 = "12v8wizynqin0hqf140kmp9s38q223mp1b0hkqk8j5pk8720v560";
+        authors = [
+          "RustCrypto Developers"
+        ];
+        dependencies = [
+          {
+            name = "block-padding";
+            packageId = "block-padding";
+          }
+          {
+            name = "byte-tools";
+            packageId = "byte-tools";
+          }
+          {
+            name = "byteorder";
+            packageId = "byteorder";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "generic-array";
+            packageId = "generic-array 0.12.4";
+          }
+        ];
+
+      };
+      "block-buffer 0.9.0" = rec {
+        crateName = "block-buffer";
+        version = "0.9.0";
+        edition = "2018";
+        sha256 = "1r4pf90s7d7lj1wdjhlnqa26vvbm6pnc33z138lxpnp9srpi2lj1";
+        authors = [
+          "RustCrypto Developers"
+        ];
+        dependencies = [
+          {
+            name = "generic-array";
+            packageId = "generic-array 0.14.4";
+          }
+        ];
+
+      };
+      "block-padding" = rec {
+        crateName = "block-padding";
+        version = "0.1.5";
+        edition = "2015";
+        sha256 = "1xbkmysiz23vimd17rnsjpw9bgjxipwfslwyygqlkx4in3dxwygs";
+        authors = [
+          "RustCrypto Developers"
+        ];
+        dependencies = [
+          {
+            name = "byte-tools";
+            packageId = "byte-tools";
+          }
+        ];
+
+      };
+      "brotli-sys" = rec {
+        crateName = "brotli-sys";
+        version = "0.3.2";
+        edition = "2015";
+        sha256 = "1kdfdbcba6zwa13xpjwgiplblkdf6vigxjbwwp6l2ascbylxwia4";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "cc";
+            packageId = "cc";
+          }
+        ];
+
+      };
+      "brotli2" = rec {
+        crateName = "brotli2";
+        version = "0.3.2";
+        edition = "2015";
+        sha256 = "13jnhpmfkqy2xar4lxrsk3rx3i12bgnarnsxq4arhc6yxb1kdc0c";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "brotli-sys";
+            packageId = "brotli-sys";
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+          }
+        ];
+
+      };
+      "bstr" = rec {
+        crateName = "bstr";
+        version = "0.2.16";
+        edition = "2018";
+        sha256 = "0y8jy9kcqn1myzxjx7c73rbv4amfw08n936ycqz3glrsc66jqs4h";
+        authors = [
+          "Andrew Gallant <jamslam@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "lazy_static";
+            packageId = "lazy_static";
+            optional = true;
+          }
+          {
+            name = "memchr";
+            packageId = "memchr";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "regex-automata";
+            packageId = "regex-automata";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "default" = [ "std" "unicode" ];
+          "serde1" = [ "std" "serde1-nostd" "serde/std" ];
+          "serde1-nostd" = [ "serde" ];
+          "std" = [ "memchr/std" ];
+          "unicode" = [ "lazy_static" "regex-automata" ];
+        };
+        resolvedDefaultFeatures = [ "default" "lazy_static" "regex-automata" "serde" "serde1" "serde1-nostd" "std" "unicode" ];
+      };
+      "bumpalo" = rec {
+        crateName = "bumpalo";
+        version = "3.7.0";
+        edition = "2018";
+        sha256 = "0ccn025n0x1gc0ijjlabin2xs7dkx5yfagkskr93yw9c06pyfncw";
+        authors = [
+          "Nick Fitzgerald <fitzgen@gmail.com>"
+        ];
+        features = {
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "byte-tools" = rec {
+        crateName = "byte-tools";
+        version = "0.3.1";
+        edition = "2015";
+        sha256 = "1mqi29wsm8njpl51pfwr31wmpzs5ahlcb40wsjyd92l90ixcmdg3";
+        authors = [
+          "RustCrypto Developers"
+        ];
+
+      };
+      "byte-unit" = rec {
+        crateName = "byte-unit";
+        version = "4.0.12";
+        edition = "2018";
+        sha256 = "1n5w327g55ly5r4yjh71rhv2ifw615xdxv8d2rj5nxsbxgk9fc86";
+        authors = [
+          "Magic Len <len@magiclen.org>"
+        ];
+        dependencies = [
+          {
+            name = "utf8-width";
+            packageId = "utf8-width";
+          }
+        ];
+        features = {
+          "default" = [ "std" "u128" ];
+        };
+        resolvedDefaultFeatures = [ "std" ];
+      };
+      "bytemuck" = rec {
+        crateName = "bytemuck";
+        version = "1.7.0";
+        edition = "2018";
+        sha256 = "0dc4i6s9l86h2wb2h4r4njp80lm3a5i3k860p9fph3sdf6mx4rlr";
+        authors = [
+          "Lokathor <zefria@gmail.com>"
+        ];
+        features = {
+          "derive" = [ "bytemuck_derive" ];
+          "extern_crate_std" = [ "extern_crate_alloc" ];
+        };
+      };
+      "byteorder" = rec {
+        crateName = "byteorder";
+        version = "1.4.3";
+        edition = "2018";
+        sha256 = "0456lv9xi1a5bcm32arknf33ikv76p3fr9yzki4lb2897p2qkh8l";
+        authors = [
+          "Andrew Gallant <jamslam@gmail.com>"
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "bytes 0.6.0" = rec {
+        crateName = "bytes";
+        version = "0.6.0";
+        edition = "2018";
+        sha256 = "05ivrcbgl4f7z2zzm9hbsi8cy66spi70xlm6fp16zsq4ylsvrp70";
+        authors = [
+          "Carl Lerche <me@carllerche.com>"
+          "Sean McArthur <sean@seanmonstar.com>"
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "bytes 1.0.1" = rec {
+        crateName = "bytes";
+        version = "1.0.1";
+        edition = "2018";
+        sha256 = "0h6h1c8g3yj2b4k8g25gr3246mq985y0kl3z685cs784fr1ww05p";
+        authors = [
+          "Carl Lerche <me@carllerche.com>"
+          "Sean McArthur <sean@seanmonstar.com>"
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "bytestring" = rec {
+        crateName = "bytestring";
+        version = "1.0.0";
+        edition = "2018";
+        sha256 = "0ka9gkn2rrxms0d5s32ckpchh06qmgidbh4xw630gfcpkshnnw4h";
+        authors = [
+          "Nikolay Kim <fafhrd91@gmail.com>"
+          "Rob Ede <robjtede@icloud.com>"
+        ];
+        dependencies = [
+          {
+            name = "bytes";
+            packageId = "bytes 1.0.1";
+          }
+        ];
+
+      };
+      "bzip2" = rec {
+        crateName = "bzip2";
+        version = "0.4.3";
+        edition = "2015";
+        sha256 = "1c495c2zh3knxwby2v1m7b21qddvrkya4mvyqlbm197knn0dkz3a";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "bzip2-sys";
+            packageId = "bzip2-sys";
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+          }
+        ];
+        features = {
+          "static" = [ "bzip2-sys/static" ];
+          "tokio" = [ "tokio-io" "futures" ];
+        };
+      };
+      "bzip2-sys" = rec {
+        crateName = "bzip2-sys";
+        version = "0.1.11+1.0.8";
+        edition = "2015";
+        sha256 = "1p2crnv8d8gpz5c2vlvzl0j55i3yqg5bi0kwsl1531x77xgraskk";
+        libName = "bzip2_sys";
+        libPath = "lib.rs";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "cc";
+            packageId = "cc";
+          }
+          {
+            name = "pkg-config";
+            packageId = "pkg-config";
+          }
+        ];
+        features = {
+        };
+      };
+      "cargo_toml" = rec {
+        crateName = "cargo_toml";
+        version = "0.9.2";
+        edition = "2018";
+        sha256 = "14md0px40lk4hi1gn9sq1wizk19pkzddsljjdz0csbdhvynrcdcw";
+        libPath = "src/cargo_toml.rs";
+        authors = [
+          "Kornel <kornel@geekhood.net>"
+        ];
+        dependencies = [
+          {
+            name = "serde";
+            packageId = "serde";
+          }
+          {
+            name = "serde_derive";
+            packageId = "serde_derive";
+          }
+          {
+            name = "toml";
+            packageId = "toml";
+          }
+        ];
+
+      };
+      "cc" = rec {
+        crateName = "cc";
+        version = "1.0.68";
+        edition = "2018";
+        crateBin = [];
+        sha256 = "11ypa8b7iwhjf5fg5j3hvbn2116h9g8v67vyd9s7ljgzq52c4wja";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "jobserver";
+            packageId = "jobserver";
+            optional = true;
+          }
+        ];
+        features = {
+          "parallel" = [ "jobserver" ];
+        };
+        resolvedDefaultFeatures = [ "jobserver" "parallel" ];
+      };
+      "cedarwood" = rec {
+        crateName = "cedarwood";
+        version = "0.4.4";
+        edition = "2018";
+        sha256 = "13glk5w8hndgy553nrdmqxdvlr0b4s6n0lm4lf680qs1p73q4gln";
+        authors = [
+          "Paul Meng <me@paulme.ng>"
+        ];
+        dependencies = [
+          {
+            name = "smallvec";
+            packageId = "smallvec";
+          }
+        ];
+        features = {
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "cfg-if 0.1.10" = rec {
+        crateName = "cfg-if";
+        version = "0.1.10";
+        edition = "2018";
+        sha256 = "08h80ihs74jcyp24cd75wwabygbbdgl05k6p5dmq8akbr78vv1a7";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        features = {
+          "rustc-dep-of-std" = [ "core" "compiler_builtins" ];
+        };
+      };
+      "cfg-if 1.0.0" = rec {
+        crateName = "cfg-if";
+        version = "1.0.0";
+        edition = "2018";
+        sha256 = "1za0vb97n4brpzpv8lsbnzmq5r8f2b0cpqqr0sy8h5bn751xxwds";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        features = {
+          "rustc-dep-of-std" = [ "core" "compiler_builtins" ];
+        };
+      };
+      "change-detection" = rec {
+        crateName = "change-detection";
+        version = "1.2.0";
+        edition = "2018";
+        sha256 = "06mwv8d25gzxsfa27ij7lfr6xrbwr62xpv5rs2a1v2p4x89a97qm";
+        authors = [
+          "Alexander Korolev <alexander.korolev.germany@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "path-matchers";
+            packageId = "path-matchers";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "path-slash";
+            packageId = "path-slash";
+          }
+        ];
+        features = {
+          "default" = [ "glob" ];
+          "glob" = [ "path-matchers/glob" ];
+        };
+        resolvedDefaultFeatures = [ "default" "glob" ];
+      };
+      "character_converter" = rec {
+        crateName = "character_converter";
+        version = "1.0.0";
+        edition = "2018";
+        sha256 = "0p0yg30zmakgdxfha9r7af17g8r4hnb09diw0cfa5mh9rrz4fj1f";
+        authors = [
+          "Preston Wang-Stosur-Bassett <p.wanstobas@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "bincode";
+            packageId = "bincode";
+          }
+        ];
+
+      };
+      "chrono" = rec {
+        crateName = "chrono";
+        version = "0.4.19";
+        edition = "2015";
+        sha256 = "0wyfl6c00vhfl562spnfcna3zkw8jqvcp652m9iskhl8j26dc2k7";
+        authors = [
+          "Kang Seonghoon <public+rust@mearie.org>"
+          "Brandon W Maister <quodlibetor@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+            optional = true;
+          }
+          {
+            name = "num-integer";
+            packageId = "num-integer";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "num-traits";
+            packageId = "num-traits";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "time";
+            packageId = "time 0.1.44";
+            optional = true;
+          }
+          {
+            name = "winapi";
+            packageId = "winapi";
+            optional = true;
+            target = { target, features }: (target."windows" or false);
+            features = [ "std" "minwinbase" "minwindef" "timezoneapi" ];
+          }
+        ];
+        features = {
+          "clock" = [ "libc" "std" "winapi" ];
+          "default" = [ "clock" "std" "oldtime" ];
+          "oldtime" = [ "time" ];
+          "unstable-locales" = [ "pure-rust-locales" "alloc" ];
+          "wasmbind" = [ "wasm-bindgen" "js-sys" ];
+        };
+        resolvedDefaultFeatures = [ "clock" "default" "libc" "oldtime" "serde" "std" "time" "winapi" ];
+      };
+      "clap" = rec {
+        crateName = "clap";
+        version = "2.33.3";
+        edition = "2015";
+        sha256 = "00i065a58987k1sbzqmlz721rw521zcg08jmsh40gi3khp3qmr9p";
+        authors = [
+          "Kevin K. <kbknapp@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "ansi_term";
+            packageId = "ansi_term";
+            optional = true;
+            target = { target, features }: (!(target."windows" or false));
+          }
+          {
+            name = "atty";
+            packageId = "atty";
+            optional = true;
+          }
+          {
+            name = "bitflags";
+            packageId = "bitflags";
+          }
+          {
+            name = "strsim";
+            packageId = "strsim";
+            optional = true;
+          }
+          {
+            name = "textwrap";
+            packageId = "textwrap";
+          }
+          {
+            name = "unicode-width";
+            packageId = "unicode-width";
+          }
+          {
+            name = "vec_map";
+            packageId = "vec_map";
+            optional = true;
+          }
+        ];
+        features = {
+          "color" = [ "ansi_term" "atty" ];
+          "default" = [ "suggestions" "color" "vec_map" ];
+          "doc" = [ "yaml" ];
+          "lints" = [ "clippy" ];
+          "suggestions" = [ "strsim" ];
+          "wrap_help" = [ "term_size" "textwrap/term_size" ];
+          "yaml" = [ "yaml-rust" ];
+        };
+        resolvedDefaultFeatures = [ "ansi_term" "atty" "color" "default" "strsim" "suggestions" "vec_map" ];
+      };
+      "concat-arrays" = rec {
+        crateName = "concat-arrays";
+        version = "0.1.2";
+        edition = "2018";
+        sha256 = "0irpvjsws7i40nx1ywxsmqw1bx3v4jq66x7vg95y70mk9s11bxqx";
+        procMacro = true;
+        authors = [
+          "Andrew Cann <shum@canndrew.org>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+            features = [ "full" ];
+          }
+        ];
+
+      };
+      "const_fn" = rec {
+        crateName = "const_fn";
+        version = "0.4.8";
+        edition = "2018";
+        sha256 = "1rzn3ifnsgqh0lmzkqgm7jjjzwkykfysnb7gq7w3q2v9sl7zlb7r";
+        procMacro = true;
+        authors = [
+          "Taiki Endo <te316e89@gmail.com>"
+        ];
+
+      };
+      "convert_case" = rec {
+        crateName = "convert_case";
+        version = "0.4.0";
+        edition = "2018";
+        sha256 = "03jaf1wrsyqzcaah9jf8l1iznvdw5mlsca2qghhzr9w27sddaib2";
+        authors = [
+          "David Purdum <purdum41@gmail.com>"
+        ];
+        features = {
+          "random" = [ "rand" ];
+        };
+      };
+      "cookie" = rec {
+        crateName = "cookie";
+        version = "0.15.0";
+        edition = "2018";
+        sha256 = "09v6nx475xva12w7i9f76xfizc9ilj60isdxwnys7nf3p9jqipzz";
+        authors = [
+          "Sergio Benitez <sb@sergio.bz>"
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "percent-encoding";
+            packageId = "percent-encoding";
+            optional = true;
+          }
+          {
+            name = "time";
+            packageId = "time 0.2.27";
+            usesDefaultFeatures = false;
+            features = [ "std" ];
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "version_check";
+            packageId = "version_check";
+          }
+        ];
+        features = {
+          "key-expansion" = [ "sha2" "hkdf" ];
+          "percent-encode" = [ "percent-encoding" ];
+          "private" = [ "aes-gcm" "base64" "rand" "subtle" ];
+          "secure" = [ "private" "signed" "key-expansion" ];
+          "signed" = [ "hmac" "sha2" "base64" "rand" "subtle" ];
+        };
+        resolvedDefaultFeatures = [ "percent-encode" "percent-encoding" ];
+      };
+      "cow-utils" = rec {
+        crateName = "cow-utils";
+        version = "0.1.2";
+        edition = "2018";
+        sha256 = "0wq1hcqj17ivzb45w3l0l87q81srapvpbqxf055x4xazmzgkmfvr";
+        authors = [
+          "Ingvar Stepanyan <me@rreverser.com>"
+        ];
+        features = {
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "cpufeatures" = rec {
+        crateName = "cpufeatures";
+        version = "0.1.5";
+        edition = "2018";
+        sha256 = "1vvid867wpnz5wzma3f4x2ijl83fgr6x1fc6shspzpf9ysb9djb6";
+        authors = [
+          "RustCrypto Developers"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+            target = { target, features }: (stdenv.hostPlatform.config == "aarch64-apple-darwin");
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+            target = { target, features }: ((target."arch" == "aarch64") && (target."os" == "linux"));
+          }
+        ];
+
+      };
+      "crc32fast" = rec {
+        crateName = "crc32fast";
+        version = "1.2.1";
+        edition = "2015";
+        sha256 = "06ivjlkzcxxxk7nyshc44aql4zjpmvirq46vmzrakdjax3n6y5c1";
+        authors = [
+          "Sam Rijs <srijs@airpost.net>"
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "crossbeam-channel" = rec {
+        crateName = "crossbeam-channel";
+        version = "0.5.1";
+        edition = "2018";
+        sha256 = "1d1dnp61g51gnmc45cb4vpjsr5n62wz22an2y3q6avgifzhjgv86";
+        authors = [
+          "The Crossbeam Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "crossbeam-utils";
+            packageId = "crossbeam-utils 0.8.5";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+          "std" = [ "crossbeam-utils/std" ];
+        };
+        resolvedDefaultFeatures = [ "crossbeam-utils" "default" "std" ];
+      };
+      "crossbeam-deque" = rec {
+        crateName = "crossbeam-deque";
+        version = "0.8.0";
+        edition = "2018";
+        sha256 = "1ad995vzq74k7jd1pgn9zxbacyzj9ii6l0svhlb2dxzy8vxnxbwl";
+        authors = [
+          "The Crossbeam Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "crossbeam-epoch";
+            packageId = "crossbeam-epoch";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "crossbeam-utils";
+            packageId = "crossbeam-utils 0.8.5";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+          "std" = [ "crossbeam-epoch/std" "crossbeam-utils/std" ];
+        };
+        resolvedDefaultFeatures = [ "crossbeam-epoch" "crossbeam-utils" "default" "std" ];
+      };
+      "crossbeam-epoch" = rec {
+        crateName = "crossbeam-epoch";
+        version = "0.9.5";
+        edition = "2018";
+        sha256 = "1zdpfd6hjf944dr5pb7h7rkiccbwksc958x4mp1y4d56384jxh2f";
+        authors = [
+          "The Crossbeam Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "crossbeam-utils";
+            packageId = "crossbeam-utils 0.8.5";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "lazy_static";
+            packageId = "lazy_static";
+            optional = true;
+          }
+          {
+            name = "memoffset";
+            packageId = "memoffset";
+          }
+          {
+            name = "scopeguard";
+            packageId = "scopeguard";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+          "loom" = [ "loom-crate" "crossbeam-utils/loom" ];
+          "nightly" = [ "crossbeam-utils/nightly" "const_fn" ];
+          "std" = [ "alloc" "crossbeam-utils/std" "lazy_static" ];
+        };
+        resolvedDefaultFeatures = [ "alloc" "lazy_static" "std" ];
+      };
+      "crossbeam-queue" = rec {
+        crateName = "crossbeam-queue";
+        version = "0.1.2";
+        edition = "2015";
+        sha256 = "0jsa9dbxnwqcxfws09vaschf92d4imlbbikmcn4ka8z7rzb9r5vw";
+        authors = [
+          "The Crossbeam Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "crossbeam-utils";
+            packageId = "crossbeam-utils 0.6.6";
+          }
+        ];
+
+      };
+      "crossbeam-utils 0.6.6" = rec {
+        crateName = "crossbeam-utils";
+        version = "0.6.6";
+        edition = "2015";
+        sha256 = "1rk0r9n04bmq4a3g2q5qhvvlmrmx780gc6h9lmc94mwndslkz5q4";
+        authors = [
+          "The Crossbeam Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 0.1.10";
+          }
+          {
+            name = "lazy_static";
+            packageId = "lazy_static";
+            optional = true;
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+          "std" = [ "lazy_static" ];
+        };
+        resolvedDefaultFeatures = [ "default" "lazy_static" "std" ];
+      };
+      "crossbeam-utils 0.8.5" = rec {
+        crateName = "crossbeam-utils";
+        version = "0.8.5";
+        edition = "2018";
+        sha256 = "1ny481cx8a5pdknypb41jqym03dl8x26i2ldyyp3yb3zrq8zqb6q";
+        authors = [
+          "The Crossbeam Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "lazy_static";
+            packageId = "lazy_static";
+            optional = true;
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+          "std" = [ "lazy_static" ];
+        };
+        resolvedDefaultFeatures = [ "default" "lazy_static" "std" ];
+      };
+      "csv" = rec {
+        crateName = "csv";
+        version = "1.1.6";
+        edition = "2018";
+        sha256 = "1q9nqn0qlamwl18v57p82c8yhxy43lkzf2z1mndmycsvqinkm092";
+        authors = [
+          "Andrew Gallant <jamslam@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "bstr";
+            packageId = "bstr";
+            features = [ "serde1" ];
+          }
+          {
+            name = "csv-core";
+            packageId = "csv-core";
+          }
+          {
+            name = "itoa";
+            packageId = "itoa";
+          }
+          {
+            name = "ryu";
+            packageId = "ryu";
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+          }
+        ];
+        devDependencies = [
+          {
+            name = "serde";
+            packageId = "serde";
+            features = [ "derive" ];
+          }
+        ];
+
+      };
+      "csv-core" = rec {
+        crateName = "csv-core";
+        version = "0.1.10";
+        edition = "2018";
+        sha256 = "145wcc3560v1kmysqqspvddppiysr2rifqzy4nnlh3r6kxanc91b";
+        authors = [
+          "Andrew Gallant <jamslam@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "memchr";
+            packageId = "memchr";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "libc" = [ "memchr/libc" ];
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "debugid" = rec {
+        crateName = "debugid";
+        version = "0.7.2";
+        edition = "2018";
+        sha256 = "1fh2nl4dzbcm3bn9knb30phprm1mhr826wb268m7w2gjqalga77r";
+        authors = [
+          "Sentry <hello@sentry.io>"
+        ];
+        dependencies = [
+          {
+            name = "serde";
+            packageId = "serde";
+            optional = true;
+          }
+          {
+            name = "uuid";
+            packageId = "uuid";
+          }
+        ];
+
+        resolvedDefaultFeatures = [ "serde" ];
+      };
+      "derive_more" = rec {
+        crateName = "derive_more";
+        version = "0.99.14";
+        edition = "2018";
+        sha256 = "085ksssdwxrnvx9g19g9sfzgn9db8d7lx4j3ah76clg3y77bkisw";
+        procMacro = true;
+        authors = [
+          "Jelte Fennema <github-tech@jeltef.nl>"
+        ];
+        dependencies = [
+          {
+            name = "convert_case";
+            packageId = "convert_case";
+            optional = true;
+          }
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+          }
+        ];
+        features = {
+          "default" = [ "add_assign" "add" "as_mut" "as_ref" "constructor" "deref" "deref_mut" "display" "error" "from" "from_str" "index" "index_mut" "into" "into_iterator" "iterator" "mul_assign" "mul" "not" "sum" "try_into" "is_variant" ];
+          "display" = [ "syn/extra-traits" ];
+          "error" = [ "syn/extra-traits" ];
+          "from" = [ "syn/extra-traits" ];
+          "generate-parsing-rs" = [ "peg" ];
+          "into" = [ "syn/extra-traits" ];
+          "is_variant" = [ "convert_case" ];
+          "mul" = [ "syn/extra-traits" ];
+          "mul_assign" = [ "syn/extra-traits" ];
+          "not" = [ "syn/extra-traits" ];
+          "testing-helpers" = [ "rustc_version" ];
+          "try_into" = [ "syn/extra-traits" ];
+        };
+        resolvedDefaultFeatures = [ "add" "add_assign" "as_mut" "as_ref" "constructor" "convert_case" "default" "deref" "deref_mut" "display" "error" "from" "from_str" "index" "index_mut" "into" "into_iterator" "is_variant" "iterator" "mul" "mul_assign" "not" "sum" "try_into" ];
+      };
+      "deunicode" = rec {
+        crateName = "deunicode";
+        version = "1.3.0";
+        edition = "2018";
+        sha256 = "1wpqgdfhssaqd25hvm898vgmc3x7wv5y1vcy70balr4zcdfpfdvz";
+        authors = [
+          "Kornel Lesinski <kornel@geekhood.net>"
+          "Amit Chowdhury <amitc97@gmail.com>"
+        ];
+
+      };
+      "difference" = rec {
+        crateName = "difference";
+        version = "2.0.0";
+        edition = "2015";
+        crateBin = [];
+        sha256 = "1621wx4k8h452p6xzmzzvm7mz87kxh4yqz0kzxfjj9xmjxlbyk2j";
+        authors = [
+          "Johann Hofmann <mail@johann-hofmann.com>"
+        ];
+        features = {
+          "bin" = [ "getopts" ];
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "digest 0.8.1" = rec {
+        crateName = "digest";
+        version = "0.8.1";
+        edition = "2015";
+        sha256 = "1madjl27f3kj5ql7kwgvb9c8b7yb7bv7yfgx7rqzj4i3fp4cil7k";
+        authors = [
+          "RustCrypto Developers"
+        ];
+        dependencies = [
+          {
+            name = "generic-array";
+            packageId = "generic-array 0.12.4";
+          }
+        ];
+        features = {
+          "dev" = [ "blobby" ];
+        };
+      };
+      "digest 0.9.0" = rec {
+        crateName = "digest";
+        version = "0.9.0";
+        edition = "2018";
+        sha256 = "0rmhvk33rgvd6ll71z8sng91a52rw14p0drjn1da0mqa138n1pfk";
+        authors = [
+          "RustCrypto Developers"
+        ];
+        dependencies = [
+          {
+            name = "generic-array";
+            packageId = "generic-array 0.14.4";
+          }
+        ];
+        features = {
+          "dev" = [ "blobby" ];
+          "std" = [ "alloc" ];
+        };
+        resolvedDefaultFeatures = [ "alloc" "std" ];
+      };
+      "discard" = rec {
+        crateName = "discard";
+        version = "1.0.4";
+        edition = "2015";
+        sha256 = "1h67ni5bxvg95s91wgicily4ix7lcw7cq0a5gy9njrybaibhyb91";
+        authors = [
+          "Pauan <pcxunlimited@gmail.com>"
+        ];
+
+      };
+      "downcast" = rec {
+        crateName = "downcast";
+        version = "0.10.0";
+        edition = "2015";
+        sha256 = "07bh0l95gwrzak6rj29v8kkm577d8vivxsxhqgscf64b4bq59d2b";
+        authors = [
+          "Felix Köpge <fkoep@mailbox.org>"
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "either" = rec {
+        crateName = "either";
+        version = "1.6.1";
+        edition = "2015";
+        sha256 = "0mwl9vngqf5jvrhmhn9x60kr5hivxyjxbmby2pybncxfqhf4z3g7";
+        authors = [
+          "bluss"
+        ];
+        features = {
+          "default" = [ "use_std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "use_std" ];
+      };
+      "encoding_rs" = rec {
+        crateName = "encoding_rs";
+        version = "0.8.28";
+        edition = "2018";
+        sha256 = "0rf0r99q4kgjrx22kx7pjyjg4lm21599y3ggvy3hzj2spi7h5pw0";
+        authors = [
+          "Henri Sivonen <hsivonen@hsivonen.fi>"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+        ];
+        features = {
+          "fast-legacy-encode" = [ "fast-hangul-encode" "fast-hanja-encode" "fast-kanji-encode" "fast-gb-hanzi-encode" "fast-big5-hanzi-encode" ];
+          "simd-accel" = [ "packed_simd" "packed_simd/into_bits" ];
+        };
+      };
+      "enum-iterator" = rec {
+        crateName = "enum-iterator";
+        version = "0.7.0";
+        edition = "2018";
+        sha256 = "1rldnx6avpz39i1bwb65d4gs303p40syyfc4zqwlx7mpxp2wbsjf";
+        authors = [
+          "Stephane Raux <stephaneyfx@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "enum-iterator-derive";
+            packageId = "enum-iterator-derive";
+          }
+        ];
+
+      };
+      "enum-iterator-derive" = rec {
+        crateName = "enum-iterator-derive";
+        version = "0.7.0";
+        edition = "2018";
+        sha256 = "0ndihb41kmi6pxc2bs097abxliw2pgnnw412lhdqfymjc1vw6d61";
+        procMacro = true;
+        authors = [
+          "Stephane Raux <stephaneyfx@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+          }
+        ];
+
+      };
+      "env_logger" = rec {
+        crateName = "env_logger";
+        version = "0.8.4";
+        edition = "2018";
+        sha256 = "1qzw8g11dbdfi7ixm44ldykwcqsxqkh8vx5cgpd88zmclgz8g4d1";
+        authors = [
+          "The Rust Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "atty";
+            packageId = "atty";
+            optional = true;
+          }
+          {
+            name = "humantime";
+            packageId = "humantime";
+            optional = true;
+          }
+          {
+            name = "log";
+            packageId = "log";
+            features = [ "std" ];
+          }
+          {
+            name = "regex";
+            packageId = "regex";
+            optional = true;
+            usesDefaultFeatures = false;
+            features = [ "std" "perf" ];
+          }
+          {
+            name = "termcolor";
+            packageId = "termcolor";
+            optional = true;
+          }
+        ];
+        features = {
+          "default" = [ "termcolor" "atty" "humantime" "regex" ];
+        };
+        resolvedDefaultFeatures = [ "atty" "default" "humantime" "regex" "termcolor" ];
+      };
+      "fake-simd" = rec {
+        crateName = "fake-simd";
+        version = "0.1.2";
+        edition = "2015";
+        sha256 = "1vfylvk4va2ivqx85603lyqqp0zk52cgbs4n5nfbbbqx577qm2p8";
+        authors = [
+          "The Rust-Crypto Project Developers"
+        ];
+
+      };
+      "filetime" = rec {
+        crateName = "filetime";
+        version = "0.2.14";
+        edition = "2018";
+        sha256 = "1s71cb7hzkk4ahc5j53w8933gnxv2giyj7v0za5hbbk37ahwyd0x";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+            target = { target, features }: (target."unix" or false);
+          }
+          {
+            name = "redox_syscall";
+            packageId = "redox_syscall";
+            target = { target, features }: (target."os" == "redox");
+          }
+          {
+            name = "winapi";
+            packageId = "winapi";
+            target = { target, features }: (target."windows" or false);
+            features = [ "fileapi" "minwindef" "winbase" ];
+          }
+        ];
+
+      };
+      "flate2" = rec {
+        crateName = "flate2";
+        version = "1.0.20";
+        edition = "2018";
+        sha256 = "1q5b4r2rclhjbcxlbv5231avp1y6y8bynrf5v3brdzhhvr9yqfnd";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+          "Josh Triplett <josh@joshtriplett.org>"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "crc32fast";
+            packageId = "crc32fast";
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+          }
+          {
+            name = "miniz_oxide";
+            packageId = "miniz_oxide";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "miniz_oxide";
+            packageId = "miniz_oxide";
+            usesDefaultFeatures = false;
+            target = { target, features }: ((target."arch" == "wasm32") && (!(target."os" == "emscripten")));
+          }
+        ];
+        features = {
+          "cloudflare_zlib" = [ "any_zlib" "cloudflare-zlib-sys" ];
+          "default" = [ "rust_backend" ];
+          "rust_backend" = [ "miniz_oxide" ];
+          "tokio" = [ "tokio-io" "futures" ];
+          "zlib" = [ "any_zlib" "libz-sys" ];
+          "zlib-ng-compat" = [ "zlib" "libz-sys/zlib-ng" ];
+        };
+        resolvedDefaultFeatures = [ "default" "miniz_oxide" "rust_backend" ];
+      };
+      "float-cmp" = rec {
+        crateName = "float-cmp";
+        version = "0.8.0";
+        edition = "2018";
+        sha256 = "1i56hnzjn5pmrcm47fwkmfxiihk7wz5vvcgpb0kpfhzkqi57y9p1";
+        libName = "float_cmp";
+        authors = [
+          "Mike Dilger <mike@mikedilger.com>"
+        ];
+        dependencies = [
+          {
+            name = "num-traits";
+            packageId = "num-traits";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "default" = [ "ratio" ];
+          "ratio" = [ "num-traits" ];
+        };
+        resolvedDefaultFeatures = [ "default" "num-traits" "ratio" ];
+      };
+      "fnv" = rec {
+        crateName = "fnv";
+        version = "1.0.7";
+        edition = "2015";
+        sha256 = "1hc2mcqha06aibcaza94vbi81j6pr9a1bbxrxjfhc91zin8yr7iz";
+        libPath = "lib.rs";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "form_urlencoded" = rec {
+        crateName = "form_urlencoded";
+        version = "1.0.1";
+        edition = "2018";
+        sha256 = "1491fmakavcmsjbm3q6iy0bhmn9l422jasdhzx5hkljgza3mmhjz";
+        authors = [
+          "The rust-url developers"
+        ];
+        dependencies = [
+          {
+            name = "matches";
+            packageId = "matches";
+          }
+          {
+            name = "percent-encoding";
+            packageId = "percent-encoding";
+          }
+        ];
+
+      };
+      "fragile" = rec {
+        crateName = "fragile";
+        version = "1.0.0";
+        edition = "2018";
+        sha256 = "1wlihmkjyhvl5rckal32p010piy1l15s6l81h7z31jcd971kk839";
+        authors = [
+          "Armin Ronacher <armin.ronacher@active-4.com>"
+        ];
+
+      };
+      "fs_extra" = rec {
+        crateName = "fs_extra";
+        version = "1.2.0";
+        edition = "2015";
+        sha256 = "151k6dr35mhq5d8pc8krhw55ajhkyiv0pm14s7zzlc5bc9fp28i0";
+        authors = [
+          "Denis Kurilenko <webdesus@gmail.com>"
+        ];
+
+      };
+      "fst" = rec {
+        crateName = "fst";
+        version = "0.4.7";
+        edition = "2018";
+        sha256 = "06mnksicgv9rp8b7w0ykkshf355l05zym3ygm74qr5z30ndmpf3s";
+        authors = [
+          "Andrew Gallant <jamslam@gmail.com>"
+        ];
+        features = {
+          "levenshtein" = [ "utf8-ranges" ];
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "fuchsia-cprng" = rec {
+        crateName = "fuchsia-cprng";
+        version = "0.1.1";
+        edition = "2018";
+        sha256 = "1fnkqrbz7ixxzsb04bsz9p0zzazanma8znfdqjvh39n14vapfvx0";
+        authors = [
+          "Erick Tryzelaar <etryzelaar@google.com>"
+        ];
+
+      };
+      "futures" = rec {
+        crateName = "futures";
+        version = "0.3.15";
+        edition = "2018";
+        sha256 = "09zwmmfi8d1glhi0bz2didagjyqz3q9gxa7nq4vzmqns0fl46zhf";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "futures-channel";
+            packageId = "futures-channel";
+            usesDefaultFeatures = false;
+            features = [ "sink" ];
+          }
+          {
+            name = "futures-core";
+            packageId = "futures-core";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-executor";
+            packageId = "futures-executor";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-io";
+            packageId = "futures-io";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-sink";
+            packageId = "futures-sink";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-task";
+            packageId = "futures-task";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-util";
+            packageId = "futures-util";
+            usesDefaultFeatures = false;
+            features = [ "sink" ];
+          }
+        ];
+        features = {
+          "alloc" = [ "futures-core/alloc" "futures-task/alloc" "futures-sink/alloc" "futures-channel/alloc" "futures-util/alloc" ];
+          "async-await" = [ "futures-util/async-await" "futures-util/async-await-macro" ];
+          "bilock" = [ "futures-util/bilock" ];
+          "compat" = [ "std" "futures-util/compat" ];
+          "default" = [ "std" "async-await" "executor" ];
+          "executor" = [ "std" "futures-executor/std" ];
+          "io-compat" = [ "compat" "futures-util/io-compat" ];
+          "read-initializer" = [ "futures-io/read-initializer" "futures-util/read-initializer" ];
+          "std" = [ "alloc" "futures-core/std" "futures-task/std" "futures-io/std" "futures-sink/std" "futures-util/std" "futures-util/io" "futures-util/channel" ];
+          "thread-pool" = [ "executor" "futures-executor/thread-pool" ];
+          "unstable" = [ "futures-core/unstable" "futures-task/unstable" "futures-channel/unstable" "futures-io/unstable" "futures-util/unstable" ];
+          "write-all-vectored" = [ "futures-util/write-all-vectored" ];
+        };
+        resolvedDefaultFeatures = [ "alloc" "async-await" "default" "executor" "futures-executor" "std" ];
+      };
+      "futures-channel" = rec {
+        crateName = "futures-channel";
+        version = "0.3.15";
+        edition = "2018";
+        sha256 = "1qki53g079ymjkgdxg3rlh5yivys8qvdqhy18l2xz0m8565sd0p6";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "futures-core";
+            packageId = "futures-core";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-sink";
+            packageId = "futures-sink";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "alloc" = [ "futures-core/alloc" ];
+          "default" = [ "std" ];
+          "sink" = [ "futures-sink" ];
+          "std" = [ "alloc" "futures-core/std" ];
+        };
+        resolvedDefaultFeatures = [ "alloc" "default" "futures-sink" "sink" "std" ];
+      };
+      "futures-core" = rec {
+        crateName = "futures-core";
+        version = "0.3.15";
+        edition = "2018";
+        sha256 = "1lbrw5087ndaqvbjrckbz9ld4ya67k72d6w87c22d6m8v1jzf0h4";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        features = {
+          "default" = [ "std" ];
+          "std" = [ "alloc" ];
+        };
+        resolvedDefaultFeatures = [ "alloc" "default" "std" ];
+      };
+      "futures-executor" = rec {
+        crateName = "futures-executor";
+        version = "0.3.15";
+        edition = "2018";
+        sha256 = "0ydbmzg6ig9gankp2nspaq668r3ngzss4806dliygjgs16lsdnms";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "futures-core";
+            packageId = "futures-core";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-task";
+            packageId = "futures-task";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-util";
+            packageId = "futures-util";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+          "std" = [ "futures-core/std" "futures-task/std" "futures-util/std" ];
+          "thread-pool" = [ "std" "num_cpus" ];
+        };
+        resolvedDefaultFeatures = [ "std" ];
+      };
+      "futures-io" = rec {
+        crateName = "futures-io";
+        version = "0.3.15";
+        edition = "2018";
+        sha256 = "1899vd5yri6zv88by53pzxb1h4x96mc42riziy6qyd1vzgg9ki5c";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "std" ];
+      };
+      "futures-macro" = rec {
+        crateName = "futures-macro";
+        version = "0.3.15";
+        edition = "2018";
+        sha256 = "08fixp6b34lr58cs85kacp3h599bi63njvfd03655pvc92c05i54";
+        procMacro = true;
+        authors = [
+          "Taylor Cramer <cramertj@google.com>"
+          "Taiki Endo <te316e89@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro-hack";
+            packageId = "proc-macro-hack";
+          }
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+            features = [ "full" ];
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "autocfg";
+            packageId = "autocfg";
+          }
+        ];
+
+      };
+      "futures-sink" = rec {
+        crateName = "futures-sink";
+        version = "0.3.15";
+        edition = "2018";
+        sha256 = "10j21j3k358512qyglqpfyxj309kr6bcspj6izg6s3gzrv8flyx5";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        features = {
+          "default" = [ "std" ];
+          "std" = [ "alloc" ];
+        };
+        resolvedDefaultFeatures = [ "alloc" "default" "std" ];
+      };
+      "futures-task" = rec {
+        crateName = "futures-task";
+        version = "0.3.15";
+        edition = "2018";
+        sha256 = "1bixscylw61w61dizqxhrdlnb8mv7yg9h775pssxsk8szkwvw5la";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        features = {
+          "default" = [ "std" ];
+          "std" = [ "alloc" ];
+        };
+        resolvedDefaultFeatures = [ "alloc" "std" ];
+      };
+      "futures-util" = rec {
+        crateName = "futures-util";
+        version = "0.3.15";
+        edition = "2018";
+        sha256 = "0rqr36zy4na270kn9fwk866adx1xkv1b49zxzm7zjavys8wc5dgy";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "futures-channel";
+            packageId = "futures-channel";
+            optional = true;
+            usesDefaultFeatures = false;
+            features = [ "std" ];
+          }
+          {
+            name = "futures-core";
+            packageId = "futures-core";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-io";
+            packageId = "futures-io";
+            optional = true;
+            usesDefaultFeatures = false;
+            features = [ "std" ];
+          }
+          {
+            name = "futures-macro";
+            packageId = "futures-macro";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-sink";
+            packageId = "futures-sink";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-task";
+            packageId = "futures-task";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "memchr";
+            packageId = "memchr";
+            optional = true;
+          }
+          {
+            name = "pin-project-lite";
+            packageId = "pin-project-lite";
+          }
+          {
+            name = "pin-utils";
+            packageId = "pin-utils";
+          }
+          {
+            name = "proc-macro-hack";
+            packageId = "proc-macro-hack";
+            optional = true;
+          }
+          {
+            name = "proc-macro-nested";
+            packageId = "proc-macro-nested";
+            optional = true;
+          }
+          {
+            name = "slab";
+            packageId = "slab";
+            optional = true;
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "autocfg";
+            packageId = "autocfg";
+          }
+        ];
+        features = {
+          "alloc" = [ "futures-core/alloc" "futures-task/alloc" ];
+          "async-await-macro" = [ "async-await" "futures-macro" "proc-macro-hack" "proc-macro-nested" ];
+          "channel" = [ "std" "futures-channel" ];
+          "compat" = [ "std" "futures_01" ];
+          "default" = [ "std" "async-await" "async-await-macro" ];
+          "io" = [ "std" "futures-io" "memchr" ];
+          "io-compat" = [ "io" "compat" "tokio-io" ];
+          "read-initializer" = [ "io" "futures-io/read-initializer" "futures-io/unstable" ];
+          "sink" = [ "futures-sink" ];
+          "std" = [ "alloc" "futures-core/std" "futures-task/std" "slab" ];
+          "unstable" = [ "futures-core/unstable" "futures-task/unstable" ];
+          "write-all-vectored" = [ "io" ];
+        };
+        resolvedDefaultFeatures = [ "alloc" "async-await" "async-await-macro" "channel" "default" "futures-channel" "futures-io" "futures-macro" "futures-sink" "io" "memchr" "proc-macro-hack" "proc-macro-nested" "sink" "slab" "std" ];
+      };
+      "fxhash" = rec {
+        crateName = "fxhash";
+        version = "0.2.1";
+        edition = "2015";
+        sha256 = "037mb9ichariqi45xm6mz0b11pa92gj38ba0409z3iz239sns6y3";
+        libPath = "lib.rs";
+        authors = [
+          "cbreeden <github@u.breeden.cc>"
+        ];
+        dependencies = [
+          {
+            name = "byteorder";
+            packageId = "byteorder";
+          }
+        ];
+
+      };
+      "generic-array 0.12.4" = rec {
+        crateName = "generic-array";
+        version = "0.12.4";
+        edition = "2015";
+        sha256 = "1gfpay78vijl9vrwl1k9v7fbvbhkhcmnrk4kfg9l6x24y4s9zpzz";
+        libName = "generic_array";
+        authors = [
+          "Bartłomiej Kamiński <fizyk20@gmail.com>"
+          "Aaron Trent <novacrazy@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "typenum";
+            packageId = "typenum";
+          }
+        ];
+
+      };
+      "generic-array 0.14.4" = rec {
+        crateName = "generic-array";
+        version = "0.14.4";
+        edition = "2015";
+        sha256 = "05qqwm9v5asbil9z28wjkmpfvs1c5c99n8n9gwxis3d3r3n6c52h";
+        libName = "generic_array";
+        authors = [
+          "Bartłomiej Kamiński <fizyk20@gmail.com>"
+          "Aaron Trent <novacrazy@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "typenum";
+            packageId = "typenum";
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "version_check";
+            packageId = "version_check";
+          }
+        ];
+        features = {
+        };
+      };
+      "getrandom 0.1.16" = rec {
+        crateName = "getrandom";
+        version = "0.1.16";
+        edition = "2018";
+        sha256 = "1kjzmz60qx9mn615ks1akjbf36n3lkv27zfwbcam0fzmj56wphwg";
+        authors = [
+          "The Rand Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+            usesDefaultFeatures = false;
+            target = { target, features }: (target."unix" or false);
+          }
+          {
+            name = "wasi";
+            packageId = "wasi 0.9.0+wasi-snapshot-preview1";
+            target = { target, features }: (target."os" == "wasi");
+          }
+        ];
+        features = {
+          "rustc-dep-of-std" = [ "compiler_builtins" "core" ];
+          "test-in-browser" = [ "wasm-bindgen" ];
+          "wasm-bindgen" = [ "bindgen" "js-sys" ];
+        };
+        resolvedDefaultFeatures = [ "std" ];
+      };
+      "getrandom 0.2.3" = rec {
+        crateName = "getrandom";
+        version = "0.2.3";
+        edition = "2018";
+        sha256 = "0lr7mnkvnzdh1xxmwmhhbm4gwg29k3m2rzhpjmjm4k2jcfa9kkbz";
+        authors = [
+          "The Rand Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+            usesDefaultFeatures = false;
+            target = { target, features }: (target."unix" or false);
+          }
+          {
+            name = "wasi";
+            packageId = "wasi 0.10.0+wasi-snapshot-preview1";
+            target = { target, features }: (target."os" == "wasi");
+          }
+        ];
+        features = {
+          "js" = [ "wasm-bindgen" "js-sys" ];
+          "rustc-dep-of-std" = [ "compiler_builtins" "core" "libc/rustc-dep-of-std" "wasi/rustc-dep-of-std" ];
+        };
+        resolvedDefaultFeatures = [ "std" ];
+      };
+      "getset" = rec {
+        crateName = "getset";
+        version = "0.1.1";
+        edition = "2018";
+        sha256 = "016590lxhlqga016z1qnavl0zavk59b97aix2zcd4wad3b02icr4";
+        procMacro = true;
+        authors = [
+          "Ana Hobden <ana@hoverbear.org>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro-error";
+            packageId = "proc-macro-error";
+          }
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+          }
+        ];
+
+      };
+      "gimli" = rec {
+        crateName = "gimli";
+        version = "0.24.0";
+        edition = "2018";
+        sha256 = "12c1arfrzvw0lxy487wm66xb3vn7wy0r1v5hvn32fri6cqw7ah0f";
+        authors = [
+          "Nick Fitzgerald <fitzgen@gmail.com>"
+          "Philip Craig <philipjcraig@gmail.com>"
+        ];
+        features = {
+          "default" = [ "read" "write" "std" "fallible-iterator" "endian-reader" ];
+          "endian-reader" = [ "stable_deref_trait" ];
+          "rustc-dep-of-std" = [ "core" "alloc" "compiler_builtins" ];
+          "std" = [ "fallible-iterator/std" "stable_deref_trait/std" ];
+          "write" = [ "indexmap" ];
+        };
+        resolvedDefaultFeatures = [ "read" ];
+      };
+      "git2" = rec {
+        crateName = "git2";
+        version = "0.13.20";
+        edition = "2018";
+        sha256 = "1fkc2gzcnl4ci3rja9mc5jl2ygl3fkc1fgym3rcwby216ac1x0yr";
+        authors = [
+          "Josh Triplett <josh@joshtriplett.org>"
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "bitflags";
+            packageId = "bitflags";
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+          }
+          {
+            name = "libgit2-sys";
+            packageId = "libgit2-sys";
+          }
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "url";
+            packageId = "url";
+          }
+        ];
+        features = {
+          "default" = [ "ssh" "https" "ssh_key_from_memory" ];
+          "https" = [ "libgit2-sys/https" "openssl-sys" "openssl-probe" ];
+          "ssh" = [ "libgit2-sys/ssh" ];
+          "ssh_key_from_memory" = [ "libgit2-sys/ssh_key_from_memory" ];
+          "vendored-openssl" = [ "openssl-sys/vendored" ];
+          "zlib-ng-compat" = [ "libgit2-sys/zlib-ng-compat" ];
+        };
+      };
+      "glob" = rec {
+        crateName = "glob";
+        version = "0.3.0";
+        edition = "2015";
+        sha256 = "0x25wfr7vg3mzxc9x05dcphvd3nwlcmbnxrvwcvrrdwplcrrk4cv";
+        authors = [
+          "The Rust Project Developers"
+        ];
+
+      };
+      "grenad" = rec {
+        crateName = "grenad";
+        version = "0.1.0";
+        edition = "2018";
+        workspace_member = null;
+        src = pkgs.fetchgit {
+          url = "https://github.com/Kerollmops/grenad.git";
+          rev = "3adcb267dcbc590c7da10eb5f887a254865b3dbe";
+          sha256 = "03zzi59yk2rgasdzsf7rgz26vpk5060vlfskls9cb556wiizh6cl";
+        };
+        authors = [
+          "Clément Renault <clement@meilisearch.com>"
+        ];
+        dependencies = [
+          {
+            name = "byteorder";
+            packageId = "byteorder";
+          }
+          {
+            name = "flate2";
+            packageId = "flate2";
+            optional = true;
+          }
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "nix";
+            packageId = "nix";
+            target = { target, features }: (target."os" == "linux");
+          }
+          {
+            name = "snap";
+            packageId = "snap";
+            optional = true;
+          }
+          {
+            name = "tempfile";
+            packageId = "tempfile";
+          }
+          {
+            name = "zstd";
+            packageId = "zstd";
+            optional = true;
+          }
+        ];
+        features = {
+          "default" = [ "zlib" "snappy" "zstd" ];
+          "snappy" = [ "snap" ];
+          "zlib" = [ "flate2" ];
+        };
+        resolvedDefaultFeatures = [ "default" "flate2" "snap" "snappy" "zlib" "zstd" ];
+      };
+      "h2" = rec {
+        crateName = "h2";
+        version = "0.3.3";
+        edition = "2018";
+        sha256 = "09kpwgqpwlk282l9jmwvjwm3dssvvjaz60w93xa3zdphxv246lw2";
+        authors = [
+          "Carl Lerche <me@carllerche.com>"
+          "Sean McArthur <sean@seanmonstar.com>"
+        ];
+        dependencies = [
+          {
+            name = "bytes";
+            packageId = "bytes 1.0.1";
+          }
+          {
+            name = "fnv";
+            packageId = "fnv";
+          }
+          {
+            name = "futures-core";
+            packageId = "futures-core";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-sink";
+            packageId = "futures-sink";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-util";
+            packageId = "futures-util";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "http";
+            packageId = "http";
+          }
+          {
+            name = "indexmap";
+            packageId = "indexmap";
+            features = [ "std" ];
+          }
+          {
+            name = "slab";
+            packageId = "slab";
+          }
+          {
+            name = "tokio";
+            packageId = "tokio";
+            features = [ "io-util" ];
+          }
+          {
+            name = "tokio-util";
+            packageId = "tokio-util";
+            features = [ "codec" ];
+          }
+          {
+            name = "tracing";
+            packageId = "tracing";
+            usesDefaultFeatures = false;
+            features = [ "std" ];
+          }
+        ];
+        devDependencies = [
+          {
+            name = "tokio";
+            packageId = "tokio";
+            features = [ "rt-multi-thread" "macros" "sync" "net" ];
+          }
+        ];
+        features = {
+        };
+      };
+      "hashbrown 0.11.2" = rec {
+        crateName = "hashbrown";
+        version = "0.11.2";
+        edition = "2018";
+        sha256 = "0vkjsf5nzs7qcia5ya79j9sq2p1caz4crrncr1675wwyj3ag0pmb";
+        authors = [
+          "Amanieu d'Antras <amanieu@gmail.com>"
+        ];
+        features = {
+          "ahash-compile-time-rng" = [ "ahash/compile-time-rng" ];
+          "default" = [ "ahash" "inline-more" ];
+          "rustc-dep-of-std" = [ "nightly" "core" "compiler_builtins" "alloc" "rustc-internal-api" ];
+        };
+        resolvedDefaultFeatures = [ "inline-more" ];
+      };
+      "hashbrown 0.7.2" = rec {
+        crateName = "hashbrown";
+        version = "0.7.2";
+        edition = "2018";
+        sha256 = "1ks110dbp81ddn3v826vnrlk5psh3vgvwf4rmb9s0gfdpyb2wa4n";
+        authors = [
+          "Amanieu d'Antras <amanieu@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "ahash";
+            packageId = "ahash 0.3.8";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "autocfg";
+            packageId = "autocfg";
+          }
+        ];
+        features = {
+          "ahash-compile-time-rng" = [ "ahash/compile-time-rng" ];
+          "default" = [ "ahash" "inline-more" ];
+          "rustc-dep-of-std" = [ "nightly" "core" "compiler_builtins" "alloc" "rustc-internal-api" ];
+        };
+        resolvedDefaultFeatures = [ "ahash" "default" "inline-more" ];
+      };
+      "hashbrown 0.9.1" = rec {
+        crateName = "hashbrown";
+        version = "0.9.1";
+        edition = "2018";
+        sha256 = "016dsm9s4xmxlkw2jfikm54qlz6vyk0qr280gab7kzp342jf9byp";
+        authors = [
+          "Amanieu d'Antras <amanieu@gmail.com>"
+        ];
+        features = {
+          "ahash-compile-time-rng" = [ "ahash/compile-time-rng" ];
+          "default" = [ "ahash" "inline-more" ];
+          "rustc-dep-of-std" = [ "nightly" "core" "compiler_builtins" "alloc" "rustc-internal-api" ];
+        };
+        resolvedDefaultFeatures = [ "raw" ];
+      };
+      "heck" = rec {
+        crateName = "heck";
+        version = "0.3.3";
+        edition = "2018";
+        sha256 = "0b0kkr790p66lvzn9nsmfjvydrbmh9z5gb664jchwgw64vxiwqkd";
+        authors = [
+          "Without Boats <woboats@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "unicode-segmentation";
+            packageId = "unicode-segmentation";
+          }
+        ];
+
+      };
+      "heed" = rec {
+        crateName = "heed";
+        version = "0.12.0";
+        edition = "2018";
+        workspace_member = null;
+        src = pkgs.fetchgit {
+          url = "https://github.com/Kerollmops/heed";
+          rev = "8e5dc6d71c8166a8d7d0db059e6e51478942b551";
+          sha256 = "09h9i693jiy3ybvc5acj8giszsv3kchpaxs4ld2ha81zxcmmfkrw";
+        };
+        authors = [
+          "Kerollmops <renault.cle@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "byteorder";
+            packageId = "byteorder";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "heed-traits";
+            packageId = "heed-traits";
+          }
+          {
+            name = "heed-types";
+            packageId = "heed-types";
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+          }
+          {
+            name = "lmdb-rkv-sys";
+            packageId = "lmdb-rkv-sys";
+            optional = true;
+          }
+          {
+            name = "once_cell";
+            packageId = "once_cell";
+          }
+          {
+            name = "page_size";
+            packageId = "page_size";
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+            optional = true;
+            features = [ "derive" ];
+          }
+          {
+            name = "synchronoise";
+            packageId = "synchronoise";
+          }
+          {
+            name = "url";
+            packageId = "url";
+            target = { target, features }: (target."windows" or false);
+          }
+          {
+            name = "zerocopy";
+            packageId = "zerocopy";
+          }
+        ];
+        devDependencies = [
+          {
+            name = "serde";
+            packageId = "serde";
+            features = [ "derive" ];
+          }
+        ];
+        features = {
+          "arbitrary_precision" = [ "heed-types/arbitrary_precision" ];
+          "default" = [ "lmdb" "serde" "serde-bincode" "serde-json" ];
+          "lmdb" = [ "lmdb-rkv-sys" ];
+          "mdbx" = [ "mdbx-sys" ];
+          "preserve_order" = [ "heed-types/preserve_order" ];
+          "raw_value" = [ "heed-types/raw_value" ];
+          "serde-bincode" = [ "heed-types/serde" "heed-types/bincode" ];
+          "serde-json" = [ "heed-types/serde" "heed-types/serde_json" ];
+          "unbounded_depth" = [ "heed-types/unbounded_depth" ];
+        };
+        resolvedDefaultFeatures = [ "default" "lmdb" "lmdb-rkv-sys" "serde" "serde-bincode" "serde-json" "sync-read-txn" ];
+      };
+      "heed-traits" = rec {
+        crateName = "heed-traits";
+        version = "0.7.0";
+        edition = "2018";
+        workspace_member = null;
+        src = pkgs.fetchgit {
+          url = "https://github.com/Kerollmops/heed";
+          rev = "8e5dc6d71c8166a8d7d0db059e6e51478942b551";
+          sha256 = "09h9i693jiy3ybvc5acj8giszsv3kchpaxs4ld2ha81zxcmmfkrw";
+        };
+        authors = [
+          "Kerollmops <renault.cle@gmail.com>"
+        ];
+
+      };
+      "heed-types" = rec {
+        crateName = "heed-types";
+        version = "0.7.2";
+        edition = "2018";
+        workspace_member = null;
+        src = pkgs.fetchgit {
+          url = "https://github.com/Kerollmops/heed";
+          rev = "8e5dc6d71c8166a8d7d0db059e6e51478942b551";
+          sha256 = "09h9i693jiy3ybvc5acj8giszsv3kchpaxs4ld2ha81zxcmmfkrw";
+        };
+        authors = [
+          "Kerollmops <renault.cle@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "bincode";
+            packageId = "bincode";
+            optional = true;
+          }
+          {
+            name = "heed-traits";
+            packageId = "heed-traits";
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+            optional = true;
+          }
+          {
+            name = "serde_json";
+            packageId = "serde_json";
+            optional = true;
+          }
+          {
+            name = "zerocopy";
+            packageId = "zerocopy";
+          }
+        ];
+        features = {
+          "arbitrary_precision" = [ "serde_json/arbitrary_precision" ];
+          "default" = [ "serde-bincode" "serde-json" ];
+          "preserve_order" = [ "serde_json/preserve_order" ];
+          "raw_value" = [ "serde_json/raw_value" ];
+          "serde-bincode" = [ "serde" "bincode" ];
+          "serde-json" = [ "serde" "serde_json" ];
+          "unbounded_depth" = [ "serde_json/unbounded_depth" ];
+        };
+        resolvedDefaultFeatures = [ "bincode" "default" "serde" "serde-bincode" "serde-json" "serde_json" ];
+      };
+      "hermit-abi" = rec {
+        crateName = "hermit-abi";
+        version = "0.1.18";
+        edition = "2018";
+        sha256 = "0p6czgbk1izviwxzm6ypy3vz2wqj1yd3ab03wp82xqjng7klsbrj";
+        authors = [
+          "Stefan Lankes"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "rustc-dep-of-std" = [ "core" "compiler_builtins/rustc-dep-of-std" "libc/rustc-dep-of-std" ];
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "hex" = rec {
+        crateName = "hex";
+        version = "0.4.3";
+        edition = "2018";
+        sha256 = "0w1a4davm1lgzpamwnba907aysmlrnygbqmfis2mqjx5m552a93z";
+        authors = [
+          "KokaKiwi <kokakiwi@kokakiwi.net>"
+        ];
+        features = {
+          "default" = [ "std" ];
+          "std" = [ "alloc" ];
+        };
+        resolvedDefaultFeatures = [ "alloc" "default" "std" ];
+      };
+      "hostname" = rec {
+        crateName = "hostname";
+        version = "0.3.1";
+        edition = "2015";
+        sha256 = "0rz8yf70cvzl3nry71m4bz9w6x4j9kdz3qng6pnwhk2h20z1qwrw";
+        authors = [
+          "fengcen <fengcen.love@gmail.com>"
+          "svartalf <self@svartalf.info>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+            target = { target, features }: ((target."unix" or false) || (target."os" == "redox"));
+          }
+          {
+            name = "match_cfg";
+            packageId = "match_cfg";
+          }
+          {
+            name = "winapi";
+            packageId = "winapi";
+            target = { target, features }: (target."os" == "windows");
+            features = [ "sysinfoapi" ];
+          }
+        ];
+        features = {
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "http" = rec {
+        crateName = "http";
+        version = "0.2.4";
+        edition = "2018";
+        sha256 = "04fcnqbnqmrsnphz5lbca2plascsm8bib5csd518bqj7qyd8qzjj";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+          "Carl Lerche <me@carllerche.com>"
+          "Sean McArthur <sean@seanmonstar.com>"
+        ];
+        dependencies = [
+          {
+            name = "bytes";
+            packageId = "bytes 1.0.1";
+          }
+          {
+            name = "fnv";
+            packageId = "fnv";
+          }
+          {
+            name = "itoa";
+            packageId = "itoa";
+          }
+        ];
+
+      };
+      "http-body" = rec {
+        crateName = "http-body";
+        version = "0.4.2";
+        edition = "2018";
+        sha256 = "1abmxi1mgv4qxawn4v1bxmp7b7ac835mg7isy2q6sy70w15s3nk0";
+        authors = [
+          "Carl Lerche <me@carllerche.com>"
+          "Lucio Franco <luciofranco14@gmail.com>"
+          "Sean McArthur <sean@seanmonstar.com>"
+        ];
+        dependencies = [
+          {
+            name = "bytes";
+            packageId = "bytes 1.0.1";
+          }
+          {
+            name = "http";
+            packageId = "http";
+          }
+          {
+            name = "pin-project-lite";
+            packageId = "pin-project-lite";
+          }
+        ];
+
+      };
+      "httparse" = rec {
+        crateName = "httparse";
+        version = "1.4.1";
+        edition = "2015";
+        sha256 = "0s2y7ki3sxyf1ynp0mm2k3mgafigy23d7g0rzci3rs9pdrhppa7k";
+        authors = [
+          "Sean McArthur <sean@seanmonstar.com>"
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "httpdate 0.3.2" = rec {
+        crateName = "httpdate";
+        version = "0.3.2";
+        edition = "2015";
+        sha256 = "0izbd3sf0625wm4rrfv85xa4xa8j4n1ldxhwlkgff4cm6rh4sjs9";
+        authors = [
+          "Pyfisch <pyfisch@gmail.com>"
+        ];
+        features = {
+        };
+      };
+      "httpdate 1.0.1" = rec {
+        crateName = "httpdate";
+        version = "1.0.1";
+        edition = "2018";
+        sha256 = "0h240ck2xlp62dqfhfp6g45984avsmh1pkcgjmyywgzkr2kbhmk4";
+        authors = [
+          "Pyfisch <pyfisch@posteo.org>"
+        ];
+
+      };
+      "human_format" = rec {
+        crateName = "human_format";
+        version = "1.0.3";
+        edition = "2015";
+        sha256 = "1c3w2lm41gmnd82acjsi6y50ym2sh5fdb6abghysmaaqsxhf5k46";
+        authors = [
+          "Bob Chatman <bob.chatman@gmail.com>"
+        ];
+
+      };
+      "humantime" = rec {
+        crateName = "humantime";
+        version = "2.1.0";
+        edition = "2018";
+        sha256 = "1r55pfkkf5v0ji1x6izrjwdq9v6sc7bv99xj6srywcar37xmnfls";
+        authors = [
+          "Paul Colomiets <paul@colomiets.name>"
+        ];
+
+      };
+      "hyper" = rec {
+        crateName = "hyper";
+        version = "0.14.9";
+        edition = "2018";
+        sha256 = "10yxz4wchlq1dnya2p3kv9nw8iv5zchw92h9wly5ycs1njhvmmh7";type = [ "lib" "staticlib" "cdylib" ];
+        authors = [
+          "Sean McArthur <sean@seanmonstar.com>"
+        ];
+        dependencies = [
+          {
+            name = "bytes";
+            packageId = "bytes 1.0.1";
+          }
+          {
+            name = "futures-channel";
+            packageId = "futures-channel";
+          }
+          {
+            name = "futures-core";
+            packageId = "futures-core";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-util";
+            packageId = "futures-util";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "h2";
+            packageId = "h2";
+            optional = true;
+          }
+          {
+            name = "http";
+            packageId = "http";
+          }
+          {
+            name = "http-body";
+            packageId = "http-body";
+          }
+          {
+            name = "httparse";
+            packageId = "httparse";
+          }
+          {
+            name = "httpdate";
+            packageId = "httpdate 1.0.1";
+          }
+          {
+            name = "itoa";
+            packageId = "itoa";
+          }
+          {
+            name = "pin-project-lite";
+            packageId = "pin-project-lite";
+          }
+          {
+            name = "socket2";
+            packageId = "socket2";
+            optional = true;
+          }
+          {
+            name = "tokio";
+            packageId = "tokio";
+            features = [ "sync" ];
+          }
+          {
+            name = "tower-service";
+            packageId = "tower-service";
+          }
+          {
+            name = "tracing";
+            packageId = "tracing";
+            usesDefaultFeatures = false;
+            features = [ "std" ];
+          }
+          {
+            name = "want";
+            packageId = "want";
+          }
+        ];
+        devDependencies = [
+          {
+            name = "futures-util";
+            packageId = "futures-util";
+            usesDefaultFeatures = false;
+            features = [ "alloc" ];
+          }
+          {
+            name = "tokio";
+            packageId = "tokio";
+            features = [ "fs" "macros" "io-std" "io-util" "rt" "rt-multi-thread" "sync" "time" "test-util" ];
+          }
+        ];
+        features = {
+          "ffi" = [ "libc" ];
+          "full" = [ "client" "http1" "http2" "server" "stream" "runtime" ];
+          "http2" = [ "h2" ];
+          "runtime" = [ "tcp" "tokio/rt" ];
+          "tcp" = [ "socket2" "tokio/net" "tokio/rt" "tokio/time" ];
+        };
+        resolvedDefaultFeatures = [ "client" "h2" "http1" "http2" "runtime" "socket2" "tcp" ];
+      };
+      "hyper-rustls" = rec {
+        crateName = "hyper-rustls";
+        version = "0.22.1";
+        edition = "2018";
+        sha256 = "0r2szp06nzqx6gblcw69kwx8afjp218fc083kfpw0i3d66bpm7sz";
+        authors = [
+          "Joseph Birr-Pixton <jpixton@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "futures-util";
+            packageId = "futures-util";
+          }
+          {
+            name = "hyper";
+            packageId = "hyper";
+            usesDefaultFeatures = false;
+            features = [ "client" "http1" ];
+          }
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "rustls";
+            packageId = "rustls";
+          }
+          {
+            name = "tokio";
+            packageId = "tokio";
+          }
+          {
+            name = "tokio-rustls";
+            packageId = "tokio-rustls";
+          }
+          {
+            name = "webpki";
+            packageId = "webpki";
+          }
+        ];
+        devDependencies = [
+          {
+            name = "hyper";
+            packageId = "hyper";
+            features = [ "full" ];
+          }
+          {
+            name = "tokio";
+            packageId = "tokio";
+            features = [ "io-std" "macros" "net" "rt-multi-thread" ];
+          }
+        ];
+        features = {
+          "default" = [ "native-tokio" ];
+          "native-tokio" = [ "tokio-runtime" "rustls-native-certs" ];
+          "tokio-runtime" = [ "hyper/runtime" "ct-logs" ];
+          "webpki-tokio" = [ "tokio-runtime" "webpki-roots" ];
+        };
+      };
+      "idna" = rec {
+        crateName = "idna";
+        version = "0.2.3";
+        edition = "2018";
+        sha256 = "1y7ca2w5qp9msgl57n03zqp78gq1bk2crqzg6kv7a542mdphm2j1";
+        authors = [
+          "The rust-url developers"
+        ];
+        dependencies = [
+          {
+            name = "matches";
+            packageId = "matches";
+          }
+          {
+            name = "unicode-bidi";
+            packageId = "unicode-bidi";
+          }
+          {
+            name = "unicode-normalization";
+            packageId = "unicode-normalization";
+          }
+        ];
+
+      };
+      "indexmap" = rec {
+        crateName = "indexmap";
+        version = "1.6.2";
+        edition = "2018";
+        sha256 = "1wxfh55zlrlpdxfcvvvj6wwc46f23cnb0j9q71190yl9pyh4aj42";
+        authors = [
+          "bluss"
+          "Josh Stone <cuviper@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "hashbrown";
+            packageId = "hashbrown 0.9.1";
+            usesDefaultFeatures = false;
+            features = [ "raw" ];
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "autocfg";
+            packageId = "autocfg";
+          }
+        ];
+        features = {
+          "serde-1" = [ "serde" ];
+        };
+        resolvedDefaultFeatures = [ "serde" "serde-1" "std" ];
+      };
+      "instant" = rec {
+        crateName = "instant";
+        version = "0.1.9";
+        edition = "2018";
+        sha256 = "1v659qqm55misvjijfbl1p7azjp4yynjbwldan8836ynpgp4w4k1";
+        authors = [
+          "sebcrozet <developer@crozet.re>"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+        ];
+        features = {
+          "now" = [ "time" ];
+          "wasm-bindgen" = [ "js-sys" "wasm-bindgen_rs" "web-sys" ];
+        };
+      };
+      "ipnet" = rec {
+        crateName = "ipnet";
+        version = "2.3.1";
+        edition = "2015";
+        sha256 = "1ad32j3kkbb0bgf5whzfkdw6843ywr48245dhk7c9gny5r7xdwk8";
+        authors = [
+          "Kris Price <kris@krisprice.nz>"
+        ];
+
+      };
+      "itertools 0.10.1" = rec {
+        crateName = "itertools";
+        version = "0.10.1";
+        edition = "2018";
+        sha256 = "1bsyxnm20x05rwc5qskrqy4cfswrcadzlwc26dkqml6hz64vipb9";
+        authors = [
+          "bluss"
+        ];
+        dependencies = [
+          {
+            name = "either";
+            packageId = "either";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "default" = [ "use_std" ];
+          "use_std" = [ "use_alloc" ];
+        };
+        resolvedDefaultFeatures = [ "default" "use_alloc" "use_std" ];
+      };
+      "itertools 0.9.0" = rec {
+        crateName = "itertools";
+        version = "0.9.0";
+        edition = "2018";
+        sha256 = "0jyml7ygr7kijkcjdl3fk5f34y5h5jsavclim7l13zjiavw1hkr8";
+        authors = [
+          "bluss"
+        ];
+        dependencies = [
+          {
+            name = "either";
+            packageId = "either";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "default" = [ "use_std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "use_std" ];
+      };
+      "itoa" = rec {
+        crateName = "itoa";
+        version = "0.4.7";
+        edition = "2015";
+        sha256 = "0di7fggbknwfjcw8cgzm1dnm3ik32l2m1f7nmyh8ipmh45h069fx";
+        authors = [
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "jemalloc-sys" = rec {
+        crateName = "jemalloc-sys";
+        version = "0.3.2";
+        edition = "2015";
+        sha256 = "0ify9vlql01qhfxlj7d4p9jvcp90mj2h69nkbq7slccvbhzryfqd";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+          "Gonzalo Brito Gadeschi <gonzalobg88@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+            usesDefaultFeatures = false;
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "cc";
+            packageId = "cc";
+          }
+          {
+            name = "fs_extra";
+            packageId = "fs_extra";
+          }
+        ];
+        features = {
+          "background_threads" = [ "background_threads_runtime_support" ];
+          "default" = [ "background_threads_runtime_support" ];
+        };
+        resolvedDefaultFeatures = [ "background_threads_runtime_support" ];
+      };
+      "jemallocator" = rec {
+        crateName = "jemallocator";
+        version = "0.3.2";
+        edition = "2015";
+        sha256 = "0sabfa5118b7l4ars5n36s2fjyfn59w4d6mjs6rrmsa5zky67bj3";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+          "Gonzalo Brito Gadeschi <gonzalobg88@gmail.com>"
+          "Simon Sapin <simon.sapin@exyr.org>"
+          "Steven Fackler <sfackler@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "jemalloc-sys";
+            packageId = "jemalloc-sys";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "background_threads" = [ "jemalloc-sys/background_threads" ];
+          "background_threads_runtime_support" = [ "jemalloc-sys/background_threads_runtime_support" ];
+          "debug" = [ "jemalloc-sys/debug" ];
+          "default" = [ "background_threads_runtime_support" ];
+          "disable_initial_exec_tls" = [ "jemalloc-sys/disable_initial_exec_tls" ];
+          "profiling" = [ "jemalloc-sys/profiling" ];
+          "stats" = [ "jemalloc-sys/stats" ];
+          "unprefixed_malloc_on_supported_platforms" = [ "jemalloc-sys/unprefixed_malloc_on_supported_platforms" ];
+        };
+        resolvedDefaultFeatures = [ "background_threads_runtime_support" "default" ];
+      };
+      "jieba-rs" = rec {
+        crateName = "jieba-rs";
+        version = "0.6.4";
+        edition = "2018";
+        sha256 = "0m8h66jvhaf9bh7484v8vjbdc71i9rz676ivpj59byc058bv78zy";
+        authors = [
+          "messense <messense@icloud.com>"
+          "Paul Meng <me@paulme.ng>"
+        ];
+        dependencies = [
+          {
+            name = "cedarwood";
+            packageId = "cedarwood";
+          }
+          {
+            name = "fxhash";
+            packageId = "fxhash";
+          }
+          {
+            name = "hashbrown";
+            packageId = "hashbrown 0.11.2";
+            usesDefaultFeatures = false;
+            features = [ "inline-more" ];
+          }
+          {
+            name = "lazy_static";
+            packageId = "lazy_static";
+          }
+          {
+            name = "phf";
+            packageId = "phf";
+          }
+          {
+            name = "regex";
+            packageId = "regex";
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "phf_codegen";
+            packageId = "phf_codegen";
+          }
+        ];
+        features = {
+          "default" = [ "default-dict" ];
+          "textrank" = [ "ordered-float" ];
+          "tfidf" = [ "ordered-float" ];
+        };
+        resolvedDefaultFeatures = [ "default" "default-dict" ];
+      };
+      "jobserver" = rec {
+        crateName = "jobserver";
+        version = "0.1.22";
+        edition = "2018";
+        sha256 = "1zg7p4khibisbvd8b1lqvvni6lr00g49d4bq2zj6m76bs7jmlbwp";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+            target = { target, features }: (target."unix" or false);
+          }
+        ];
+
+      };
+      "js-sys" = rec {
+        crateName = "js-sys";
+        version = "0.3.51";
+        edition = "2018";
+        sha256 = "0qkhnsidcx4vkgacn4hhl6bf6lxhc3lljfzpad11ms50wfngpgc3";
+        authors = [
+          "The wasm-bindgen Developers"
+        ];
+        dependencies = [
+          {
+            name = "wasm-bindgen";
+            packageId = "wasm-bindgen";
+          }
+        ];
+
+      };
+      "language-tags" = rec {
+        crateName = "language-tags";
+        version = "0.2.2";
+        edition = "2015";
+        sha256 = "16hrjdpa827carq5x4b8zhas24d8kg4s16m6nmmn1kb7cr5qh7d9";
+        authors = [
+          "Pyfisch <pyfisch@gmail.com>"
+        ];
+        features = {
+          "heap_size" = [ "heapsize" "heapsize_plugin" ];
+        };
+      };
+      "lazy_static" = rec {
+        crateName = "lazy_static";
+        version = "1.4.0";
+        edition = "2015";
+        sha256 = "0in6ikhw8mgl33wjv6q6xfrb5b9jr16q8ygjy803fay4zcisvaz2";
+        authors = [
+          "Marvin Löbel <loebel.marvin@gmail.com>"
+        ];
+        features = {
+          "spin_no_std" = [ "spin" ];
+        };
+      };
+      "levenshtein_automata" = rec {
+        crateName = "levenshtein_automata";
+        version = "0.2.1";
+        edition = "2018";
+        sha256 = "09dv3rahqgslyv347s5ymwv0krw44d6xpfymz9mz7sa5dsvdwb0c";
+        authors = [
+          "Paul Masurel <paul.masurel@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "fst";
+            packageId = "fst";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "fst_automaton" = [ "fst" ];
+        };
+        resolvedDefaultFeatures = [ "fst" "fst_automaton" ];
+      };
+      "libc" = rec {
+        crateName = "libc";
+        version = "0.2.97";
+        edition = "2015";
+        sha256 = "1dlgdziv6nkabx287jjmghnlgc5dqv6fgpvh9n7ibpr0synsvf0j";
+        authors = [
+          "The Rust Project Developers"
+        ];
+        features = {
+          "default" = [ "std" ];
+          "rustc-dep-of-std" = [ "align" "rustc-std-workspace-core" ];
+          "use_std" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "extra_traits" "std" ];
+      };
+      "libgit2-sys" = rec {
+        crateName = "libgit2-sys";
+        version = "0.12.21+1.1.0";
+        edition = "2018";
+        sha256 = "09b85x3gpvq0d7v1mhg4f3w1b3skzlpbikrx9j2rwarbsyn1n9w6";
+        libName = "libgit2_sys";
+        libPath = "lib.rs";
+        authors = [
+          "Josh Triplett <josh@joshtriplett.org>"
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+          }
+          {
+            name = "libz-sys";
+            packageId = "libz-sys";
+            usesDefaultFeatures = false;
+            features = [ "libc" ];
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "cc";
+            packageId = "cc";
+            features = [ "parallel" ];
+          }
+          {
+            name = "pkg-config";
+            packageId = "pkg-config";
+          }
+        ];
+        features = {
+          "https" = [ "openssl-sys" ];
+          "ssh" = [ "libssh2-sys" ];
+          "zlib-ng-compat" = [ "libz-sys/zlib-ng" "libssh2-sys/zlib-ng-compat" ];
+        };
+      };
+      "libz-sys" = rec {
+        crateName = "libz-sys";
+        version = "1.1.3";
+        edition = "2015";
+        sha256 = "0rpcxkccjn8da9114kvl8hrnrkspzsmdn0qcxlix85lwajw3am6y";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+          "Josh Triplett <josh@joshtriplett.org>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+            optional = true;
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "cc";
+            packageId = "cc";
+          }
+          {
+            name = "pkg-config";
+            packageId = "pkg-config";
+          }
+          {
+            name = "vcpkg";
+            packageId = "vcpkg";
+            target = {target, features}: (target."env" == "msvc");
+          }
+        ];
+        features = {
+          "default" = [ "libc" "stock-zlib" ];
+          "zlib-ng" = [ "libc" "cmake" ];
+        };
+        resolvedDefaultFeatures = [ "libc" ];
+      };
+      "linked-hash-map" = rec {
+        crateName = "linked-hash-map";
+        version = "0.5.4";
+        edition = "2015";
+        sha256 = "1ww8zsraqnvrsknd315481185igwkx5n14xnhq5i8216z65b7fbz";
+        authors = [
+          "Stepan Koltsov <stepan.koltsov@gmail.com>"
+          "Andrew Paseltiner <apaseltiner@gmail.com>"
+        ];
+        features = {
+          "heapsize_impl" = [ "heapsize" ];
+          "serde_impl" = [ "serde" "serde_test" ];
+        };
+      };
+      "lmdb-rkv-sys" = rec {
+        crateName = "lmdb-rkv-sys";
+        version = "0.15.0";
+        edition = "2015";
+        workspace_member = null;
+        src = pkgs.fetchgit {
+          url = "https://github.com/meilisearch/lmdb-rs";
+          rev = "d0b50d02938ee84e4e4372697ea991fe2a4cae3b";
+          sha256 = "0pqar429y4qzxmyr6daw32syvggm4dk7cs7g01lp6f8a6cvbbwkc";
+        };
+        libName = "lmdb_sys";
+        authors = [
+          "Dan Burkert <dan@danburkert.com>"
+          "Victor Porof <vporof@mozilla.com>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "cc";
+            packageId = "cc";
+          }
+          {
+            name = "pkg-config";
+            packageId = "pkg-config";
+          }
+        ];
+        features = {
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "local-channel" = rec {
+        crateName = "local-channel";
+        version = "0.1.2";
+        edition = "2018";
+        sha256 = "17zy0g5wv4i0crnj03mzk18zkshmgv4mj9ail02p424my66ccik2";
+        authors = [
+          "Nikolay Kim <fafhrd91@gmail.com>"
+          "Rob Ede <robjtede@icloud.com>"
+        ];
+        dependencies = [
+          {
+            name = "futures-core";
+            packageId = "futures-core";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-sink";
+            packageId = "futures-sink";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "futures-util";
+            packageId = "futures-util";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "local-waker";
+            packageId = "local-waker";
+          }
+        ];
+
+      };
+      "local-waker" = rec {
+        crateName = "local-waker";
+        version = "0.1.1";
+        edition = "2018";
+        sha256 = "194dvpx4drizq4jgcawvxa9n54bv3adv1l5aqgi9rsbwwb9s5yc4";
+        authors = [
+          "Nikolay Kim <fafhrd91@gmail.com>"
+          "Rob Ede <robjtede@icloud.com>"
+        ];
+
+      };
+      "lock_api" = rec {
+        crateName = "lock_api";
+        version = "0.4.4";
+        edition = "2018";
+        sha256 = "1sq7pw7h7jbfvnv5nq3vm912gdwhhv8idi3njifd3xnz0q38i0h3";
+        authors = [
+          "Amanieu d'Antras <amanieu@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "scopeguard";
+            packageId = "scopeguard";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+        };
+      };
+      "log" = rec {
+        crateName = "log";
+        version = "0.4.14";
+        edition = "2015";
+        sha256 = "04175hv0v62shd82qydq58a48k3bjijmk54v38zgqlbxqkkbpfai";
+        authors = [
+          "The Rust Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+        ];
+        features = {
+          "kv_unstable" = [ "value-bag" ];
+          "kv_unstable_serde" = [ "kv_unstable_std" "value-bag/serde" "serde" ];
+          "kv_unstable_std" = [ "std" "kv_unstable" "value-bag/error" ];
+          "kv_unstable_sval" = [ "kv_unstable" "value-bag/sval" "sval" ];
+        };
+        resolvedDefaultFeatures = [ "std" ];
+      };
+      "logging_timer" = rec {
+        crateName = "logging_timer";
+        version = "1.0.0";
+        edition = "2018";
+        sha256 = "14x7wanqbfmisb8v3xvmwyxrwl6j2qdm0pvbz3wc45swjm4w5l20";
+        authors = [
+          "Philip Daniels <Philip.Daniels1971@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "logging_timer_proc_macros";
+            packageId = "logging_timer_proc_macros";
+          }
+        ];
+
+      };
+      "logging_timer_proc_macros" = rec {
+        crateName = "logging_timer_proc_macros";
+        version = "1.0.0";
+        edition = "2018";
+        sha256 = "01zbw1k0kk8g8qcxdpryhymfcmfpfhbp0bzqfi17rzmwwql2qb28";
+        procMacro = true;
+        authors = [
+          "Philip Daniels <Philip.Daniels1971@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 0.4.30";
+          }
+          {
+            name = "quote";
+            packageId = "quote 0.6.13";
+          }
+          {
+            name = "syn";
+            packageId = "syn 0.15.44";
+            features = [ "full" ];
+          }
+        ];
+
+      };
+      "main_error" = rec {
+        crateName = "main_error";
+        version = "0.1.1";
+        edition = "2018";
+        sha256 = "0r4a13lgh2513g9dzcj2h6k1w65mgklg1cfx1ax6l2rf50gbnqxv";
+        authors = [
+          "Daniel Lehmann <mail@dlehmann.eu>"
+        ];
+
+      };
+      "maplit" = rec {
+        crateName = "maplit";
+        version = "1.0.2";
+        edition = "2015";
+        sha256 = "07b5kjnhrrmfhgqm9wprjw8adx6i225lqp49gasgqg74lahnabiy";
+        authors = [
+          "bluss"
+        ];
+
+      };
+      "match_cfg" = rec {
+        crateName = "match_cfg";
+        version = "0.1.0";
+        edition = "2015";
+        sha256 = "1r5j3zqc3qr8ybcx95bk8q57mkizmgmffj5lmicd4i8d9riyigpz";
+        authors = [
+          "gnzlbg <gonzalobg88@gmail.com>"
+        ];
+        features = {
+          "default" = [ "use_core" ];
+        };
+        resolvedDefaultFeatures = [ "default" "use_core" ];
+      };
+      "matches" = rec {
+        crateName = "matches";
+        version = "0.1.8";
+        edition = "2015";
+        sha256 = "020axl4q7rk9vz90phs7f8jas4imxal9y9kxl4z4v7a6719mrz3z";
+        libPath = "lib.rs";
+        authors = [
+          "Simon Sapin <simon.sapin@exyr.org>"
+        ];
+
+      };
+      "meilisearch-error" = rec {
+        crateName = "meilisearch-error";
+        version = "0.21.1";
+        edition = "2018";
+        src = lib.cleanSourceWith { filter = sourceFilter;  src = ./meilisearch-error; };
+        authors = [
+          "marin <postma.marin@protonmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "actix-http";
+            packageId = "actix-http";
+          }
+        ];
+
+      };
+      "meilisearch-http" = rec {
+        crateName = "meilisearch-http";
+        version = "0.21.1";
+        edition = "2018";
+        crateBin = [
+          { name = "meilisearch"; path = "src/main.rs"; }
+        ];
+        src = lib.cleanSourceWith { filter = sourceFilter;  src = ./meilisearch-http; };
+        authors = [
+          "Quentin de Quelen <quentin@dequelen.me>"
+          "Clément Renault <clement@meilisearch.com>"
+        ];
+        dependencies = [
+          {
+            name = "actix-cors";
+            packageId = "actix-cors";
+          }
+          {
+            name = "actix-http";
+            packageId = "actix-http";
+          }
+          {
+            name = "actix-service";
+            packageId = "actix-service";
+          }
+          {
+            name = "actix-web";
+            packageId = "actix-web";
+            features = [ "rustls" ];
+          }
+          {
+            name = "actix-web-static-files";
+            packageId = "actix-web-static-files";
+            optional = true;
+          }
+          {
+            name = "anyhow";
+            packageId = "anyhow";
+          }
+          {
+            name = "arc-swap";
+            packageId = "arc-swap";
+          }
+          {
+            name = "async-stream";
+            packageId = "async-stream";
+          }
+          {
+            name = "async-trait";
+            packageId = "async-trait";
+          }
+          {
+            name = "byte-unit";
+            packageId = "byte-unit";
+            usesDefaultFeatures = false;
+            features = [ "std" ];
+          }
+          {
+            name = "bytes";
+            packageId = "bytes 0.6.0";
+          }
+          {
+            name = "chrono";
+            packageId = "chrono";
+            features = [ "serde" ];
+          }
+          {
+            name = "crossbeam-channel";
+            packageId = "crossbeam-channel";
+          }
+          {
+            name = "either";
+            packageId = "either";
+          }
+          {
+            name = "env_logger";
+            packageId = "env_logger";
+          }
+          {
+            name = "flate2";
+            packageId = "flate2";
+          }
+          {
+            name = "fst";
+            packageId = "fst";
+          }
+          {
+            name = "futures";
+            packageId = "futures";
+          }
+          {
+            name = "futures-util";
+            packageId = "futures-util";
+          }
+          {
+            name = "grenad";
+            packageId = "grenad";
+          }
+          {
+            name = "heed";
+            packageId = "heed";
+          }
+          {
+            name = "http";
+            packageId = "http";
+          }
+          {
+            name = "indexmap";
+            packageId = "indexmap";
+            features = [ "serde-1" ];
+          }
+          {
+            name = "itertools";
+            packageId = "itertools 0.10.1";
+          }
+          {
+            name = "jemallocator";
+            packageId = "jemallocator";
+            target = { target, features }: (target."os" == "linux");
+          }
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "main_error";
+            packageId = "main_error";
+          }
+          {
+            name = "meilisearch-error";
+            packageId = "meilisearch-error";
+          }
+          {
+            name = "meilisearch-tokenizer";
+            packageId = "meilisearch-tokenizer";
+          }
+          {
+            name = "memmap";
+            packageId = "memmap";
+          }
+          {
+            name = "milli";
+            packageId = "milli";
+          }
+          {
+            name = "mime";
+            packageId = "mime";
+          }
+          {
+            name = "num_cpus";
+            packageId = "num_cpus";
+          }
+          {
+            name = "obkv";
+            packageId = "obkv";
+          }
+          {
+            name = "once_cell";
+            packageId = "once_cell";
+          }
+          {
+            name = "parking_lot";
+            packageId = "parking_lot";
+          }
+          {
+            name = "pin-project";
+            packageId = "pin-project";
+          }
+          {
+            name = "rand";
+            packageId = "rand 0.7.3";
+          }
+          {
+            name = "rayon";
+            packageId = "rayon";
+          }
+          {
+            name = "regex";
+            packageId = "regex";
+          }
+          {
+            name = "reqwest";
+            packageId = "reqwest";
+            optional = true;
+            usesDefaultFeatures = false;
+            features = [ "json" "rustls-tls" ];
+          }
+          {
+            name = "rustls";
+            packageId = "rustls";
+          }
+          {
+            name = "sentry";
+            packageId = "sentry";
+            optional = true;
+            usesDefaultFeatures = false;
+            features = [ "backtrace" "contexts" "panic" "reqwest" "rustls" "log" ];
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+            features = [ "derive" ];
+          }
+          {
+            name = "serde_json";
+            packageId = "serde_json";
+            features = [ "preserve_order" ];
+          }
+          {
+            name = "serdeval";
+            packageId = "serdeval";
+          }
+          {
+            name = "sha2";
+            packageId = "sha2";
+          }
+          {
+            name = "siphasher";
+            packageId = "siphasher";
+          }
+          {
+            name = "slice-group-by";
+            packageId = "slice-group-by";
+          }
+          {
+            name = "structopt";
+            packageId = "structopt";
+          }
+          {
+            name = "tar";
+            packageId = "tar";
+          }
+          {
+            name = "tempfile";
+            packageId = "tempfile";
+          }
+          {
+            name = "thiserror";
+            packageId = "thiserror";
+          }
+          {
+            name = "tokio";
+            packageId = "tokio";
+            features = [ "full" ];
+          }
+          {
+            name = "uuid";
+            packageId = "uuid";
+            features = [ "serde" ];
+          }
+          {
+            name = "walkdir";
+            packageId = "walkdir";
+          }
+          {
+            name = "whoami";
+            packageId = "whoami";
+            optional = true;
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "actix-web-static-files";
+            packageId = "actix-web-static-files";
+            optional = true;
+          }
+          {
+            name = "anyhow";
+            packageId = "anyhow";
+            optional = true;
+          }
+          {
+            name = "cargo_toml";
+            packageId = "cargo_toml";
+            optional = true;
+          }
+          {
+            name = "hex";
+            packageId = "hex";
+            optional = true;
+          }
+          {
+            name = "reqwest";
+            packageId = "reqwest";
+            optional = true;
+            usesDefaultFeatures = false;
+            features = [ "blocking" "rustls-tls" ];
+          }
+          {
+            name = "sha-1";
+            packageId = "sha-1 0.9.6";
+            optional = true;
+          }
+          {
+            name = "tempfile";
+            packageId = "tempfile";
+            optional = true;
+          }
+          {
+            name = "vergen";
+            packageId = "vergen";
+            usesDefaultFeatures = false;
+            features = [ "git" ];
+          }
+          {
+            name = "zip";
+            packageId = "zip";
+            optional = true;
+          }
+        ];
+        devDependencies = [
+          {
+            name = "actix-rt";
+            packageId = "actix-rt";
+          }
+          {
+            name = "assert-json-diff";
+            packageId = "assert-json-diff";
+          }
+          {
+            name = "mockall";
+            packageId = "mockall";
+          }
+          {
+            name = "paste";
+            packageId = "paste";
+          }
+          {
+            name = "serde_url_params";
+            packageId = "serde_url_params";
+          }
+          {
+            name = "tempdir";
+            packageId = "tempdir";
+          }
+          {
+            name = "urlencoding";
+            packageId = "urlencoding";
+          }
+        ];
+        features = {
+          "analytics" = [ "sentry" "whoami" "reqwest" ];
+          "default" = [ "analytics" "mini-dashboard" ];
+          "mini-dashboard" = [ "actix-web-static-files" "anyhow" "cargo_toml" "hex" "reqwest" "sha-1" "tempfile" "zip" ];
+        };
+        resolvedDefaultFeatures = [ "actix-web-static-files" "analytics" "anyhow" "cargo_toml" "default" "hex" "mini-dashboard" "reqwest" "sentry" "sha-1" "tempfile" "whoami" "zip" ];
+      };
+      "meilisearch-tokenizer" = rec {
+        crateName = "meilisearch-tokenizer";
+        version = "0.2.5";
+        edition = "2018";
+        workspace_member = null;
+        src = pkgs.fetchgit {
+          url = "https://github.com/meilisearch/tokenizer.git";
+          rev = "c0b5cf741ed9485147f2cbe523f2214d4fa4c395";
+          sha256 = "0hvf92z24adqwhh81r9arirhrvgyp1wva9g2wsrir4xqvaqdzdr5";
+        };
+        authors = [
+          "Many <many@meilisearch.com>"
+        ];
+        dependencies = [
+          {
+            name = "character_converter";
+            packageId = "character_converter";
+          }
+          {
+            name = "cow-utils";
+            packageId = "cow-utils";
+          }
+          {
+            name = "deunicode";
+            packageId = "deunicode";
+          }
+          {
+            name = "fst";
+            packageId = "fst";
+          }
+          {
+            name = "jieba-rs";
+            packageId = "jieba-rs";
+          }
+          {
+            name = "once_cell";
+            packageId = "once_cell";
+          }
+          {
+            name = "slice-group-by";
+            packageId = "slice-group-by";
+          }
+          {
+            name = "unicode-segmentation";
+            packageId = "unicode-segmentation";
+          }
+          {
+            name = "whatlang";
+            packageId = "whatlang";
+          }
+        ];
+
+      };
+      "memchr" = rec {
+        crateName = "memchr";
+        version = "2.4.0";
+        edition = "2018";
+        sha256 = "1p478fqf4nia2ma0kv4npb8x1hli0zz6k16517ikb51jkryx8sxi";
+        authors = [
+          "Andrew Gallant <jamslam@gmail.com>"
+          "bluss"
+        ];
+        features = {
+          "default" = [ "std" ];
+          "use_std" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "memmap" = rec {
+        crateName = "memmap";
+        version = "0.7.0";
+        edition = "2015";
+        sha256 = "0ns7kkd1h4pijdkwfvw4qlbbmqmlmzwlq3g2676dcl5vwyazv1b5";
+        authors = [
+          "Dan Burkert <dan@danburkert.com>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+            target = { target, features }: (target."unix" or false);
+          }
+          {
+            name = "winapi";
+            packageId = "winapi";
+            target = { target, features }: (target."windows" or false);
+            features = [ "basetsd" "handleapi" "memoryapi" "minwindef" "std" "sysinfoapi" ];
+          }
+        ];
+
+      };
+      "memoffset" = rec {
+        crateName = "memoffset";
+        version = "0.6.4";
+        edition = "2015";
+        sha256 = "1yfx2v8kmkhr2d4gwk8ghihdwg73vapn3vvp0im06f0kgx8crb2r";
+        authors = [
+          "Gilad Naaman <gilad.naaman@gmail.com>"
+        ];
+        buildDependencies = [
+          {
+            name = "autocfg";
+            packageId = "autocfg";
+          }
+        ];
+        features = {
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "milli" = rec {
+        crateName = "milli";
+        version = "0.10.2";
+        edition = "2018";
+        workspace_member = null;
+        src = pkgs.fetchgit {
+          url = "https://github.com/meilisearch/milli.git";
+          rev = "879d5e8799836d93f8995810965b6797be4f69d1";
+          sha256 = "09gdf4mwrn3ka1iqh3h33b86p68c8ichkkkd4231igl11wxj91d1";
+        };
+        authors = [
+          "Kerollmops <clement@meilisearch.com>"
+        ];
+        dependencies = [
+          {
+            name = "bstr";
+            packageId = "bstr";
+          }
+          {
+            name = "byteorder";
+            packageId = "byteorder";
+          }
+          {
+            name = "chrono";
+            packageId = "chrono";
+            features = [ "serde" ];
+          }
+          {
+            name = "concat-arrays";
+            packageId = "concat-arrays";
+          }
+          {
+            name = "csv";
+            packageId = "csv";
+          }
+          {
+            name = "either";
+            packageId = "either";
+          }
+          {
+            name = "flate2";
+            packageId = "flate2";
+          }
+          {
+            name = "fst";
+            packageId = "fst";
+          }
+          {
+            name = "fxhash";
+            packageId = "fxhash";
+          }
+          {
+            name = "grenad";
+            packageId = "grenad";
+          }
+          {
+            name = "heed";
+            packageId = "heed";
+            usesDefaultFeatures = false;
+            features = [ "lmdb" "sync-read-txn" ];
+          }
+          {
+            name = "human_format";
+            packageId = "human_format";
+          }
+          {
+            name = "itertools";
+            packageId = "itertools 0.10.1";
+          }
+          {
+            name = "levenshtein_automata";
+            packageId = "levenshtein_automata";
+            features = [ "fst_automaton" ];
+          }
+          {
+            name = "linked-hash-map";
+            packageId = "linked-hash-map";
+          }
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "logging_timer";
+            packageId = "logging_timer";
+          }
+          {
+            name = "meilisearch-tokenizer";
+            packageId = "meilisearch-tokenizer";
+          }
+          {
+            name = "memmap";
+            packageId = "memmap";
+          }
+          {
+            name = "obkv";
+            packageId = "obkv";
+          }
+          {
+            name = "once_cell";
+            packageId = "once_cell";
+          }
+          {
+            name = "ordered-float";
+            packageId = "ordered-float";
+          }
+          {
+            name = "pest";
+            packageId = "pest";
+          }
+          {
+            name = "pest_derive";
+            packageId = "pest_derive";
+          }
+          {
+            name = "rayon";
+            packageId = "rayon";
+          }
+          {
+            name = "regex";
+            packageId = "regex";
+          }
+          {
+            name = "roaring";
+            packageId = "roaring";
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+            features = [ "derive" ];
+          }
+          {
+            name = "serde_json";
+            packageId = "serde_json";
+            features = [ "preserve_order" ];
+          }
+          {
+            name = "slice-group-by";
+            packageId = "slice-group-by";
+          }
+          {
+            name = "smallstr";
+            packageId = "smallstr";
+            features = [ "serde" ];
+          }
+          {
+            name = "smallvec";
+            packageId = "smallvec";
+          }
+          {
+            name = "tempfile";
+            packageId = "tempfile";
+          }
+          {
+            name = "tinytemplate";
+            packageId = "tinytemplate";
+          }
+          {
+            name = "uuid";
+            packageId = "uuid";
+            features = [ "v4" ];
+          }
+        ];
+        features = {
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "mime" = rec {
+        crateName = "mime";
+        version = "0.3.16";
+        edition = "2015";
+        sha256 = "13dcm9lh01hdwfjcg74ppljyjfj1c6w3a3cwkhxf0w8wa37cfq1a";
+        authors = [
+          "Sean McArthur <sean@seanmonstar.com>"
+        ];
+
+      };
+      "mime_guess" = rec {
+        crateName = "mime_guess";
+        version = "2.0.3";
+        edition = "2015";
+        sha256 = "04pjpbl90z4yn0cmifvwgf4mqznciw6b095k626q96bxx71d9116";
+        authors = [
+          "Austin Bonander <austin.bonander@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "mime";
+            packageId = "mime";
+          }
+          {
+            name = "unicase";
+            packageId = "unicase";
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "unicase";
+            packageId = "unicase";
+          }
+        ];
+        features = {
+          "default" = [ "rev-mappings" ];
+        };
+        resolvedDefaultFeatures = [ "default" "rev-mappings" ];
+      };
+      "miniz_oxide" = rec {
+        crateName = "miniz_oxide";
+        version = "0.4.4";
+        edition = "2018";
+        sha256 = "0jsfv00hl5rmx1nijn59sr9jmjd4rjnjhh4kdjy8d187iklih9d9";
+        authors = [
+          "Frommi <daniil.liferenko@gmail.com>"
+          "oyvindln <oyvindln@users.noreply.github.com>"
+        ];
+        dependencies = [
+          {
+            name = "adler";
+            packageId = "adler";
+            usesDefaultFeatures = false;
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "autocfg";
+            packageId = "autocfg";
+          }
+        ];
+        features = {
+          "rustc-dep-of-std" = [ "core" "alloc" "compiler_builtins" "adler/rustc-dep-of-std" ];
+        };
+      };
+      "mio" = rec {
+        crateName = "mio";
+        version = "0.7.13";
+        edition = "2018";
+        sha256 = "05mvlrn3r2vqps4fflmknw15r0rs8xld4g99sdf8647c2iixnawc";
+        authors = [
+          "Carl Lerche <me@carllerche.com>"
+          "Thomas de Zeeuw <thomasdezeeuw@gmail.com>"
+          "Tokio Contributors <team@tokio.rs>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+            target = { target, features }: (target."unix" or false);
+          }
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "miow";
+            packageId = "miow";
+            target = { target, features }: (target."windows" or false);
+          }
+          {
+            name = "ntapi";
+            packageId = "ntapi";
+            target = { target, features }: (target."windows" or false);
+          }
+          {
+            name = "winapi";
+            packageId = "winapi";
+            target = { target, features }: (target."windows" or false);
+            features = [ "winsock2" "mswsock" "mstcpip" ];
+          }
+        ];
+        features = {
+          "os-ext" = [ "os-poll" ];
+          "os-util" = [ "os-ext" ];
+          "pipe" = [ "os-ext" ];
+          "tcp" = [ "net" ];
+          "udp" = [ "net" ];
+          "uds" = [ "net" ];
+        };
+        resolvedDefaultFeatures = [ "default" "net" "os-ext" "os-poll" "os-util" "tcp" "udp" "uds" ];
+      };
+      "miow" = rec {
+        crateName = "miow";
+        version = "0.3.7";
+        edition = "2018";
+        sha256 = "08afp2xfpxmdw003111lxz6g9jgbj4zi2fpldvv7da6d4nqcbwdr";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "winapi";
+            packageId = "winapi";
+            features = [ "std" "fileapi" "handleapi" "ioapiset" "minwindef" "namedpipeapi" "ntdef" "synchapi" "winerror" "winsock2" "ws2def" "ws2ipdef" ];
+          }
+        ];
+
+      };
+      "mockall" = rec {
+        crateName = "mockall";
+        version = "0.9.1";
+        edition = "2018";
+        sha256 = "1m9kpv4523503v48ahyzk9g2rabvbjl70mlbkc8mkfzr4fni9mhq";
+        authors = [
+          "Alan Somers <asomers@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "downcast";
+            packageId = "downcast";
+          }
+          {
+            name = "fragile";
+            packageId = "fragile";
+          }
+          {
+            name = "lazy_static";
+            packageId = "lazy_static";
+          }
+          {
+            name = "mockall_derive";
+            packageId = "mockall_derive";
+          }
+          {
+            name = "predicates";
+            packageId = "predicates";
+          }
+          {
+            name = "predicates-tree";
+            packageId = "predicates-tree";
+          }
+        ];
+        features = {
+          "nightly" = [ "mockall_derive/nightly_derive" "downcast/nightly" ];
+        };
+      };
+      "mockall_derive" = rec {
+        crateName = "mockall_derive";
+        version = "0.9.1";
+        edition = "2018";
+        sha256 = "1snywdscj3chgs0xqr5700dsw2hy0qwd0s3kdk4nz85w6m327m2x";
+        procMacro = true;
+        authors = [
+          "Alan Somers <asomers@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+            features = [ "extra-traits" "full" ];
+          }
+        ];
+        features = {
+          "nightly_derive" = [ "proc-macro2/nightly" ];
+        };
+      };
+      "nix" = rec {
+        crateName = "nix";
+        version = "0.19.1";
+        edition = "2018";
+        sha256 = "1wk1pmaf9pv84sc4jf19gm1as2yq3ydwcx0n5nc1bpsgzq6bmk5j";
+        authors = [
+          "The nix-rust Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "bitflags";
+            packageId = "bitflags";
+          }
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+            features = [ "extra_traits" ];
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "cc";
+            packageId = "cc";
+            target = {target, features}: (target."os" == "dragonfly");
+          }
+        ];
+
+      };
+      "normalize-line-endings" = rec {
+        crateName = "normalize-line-endings";
+        version = "0.3.0";
+        edition = "2015";
+        sha256 = "1gp52dfn2glz26a352zra8h04351icf0fkqzw1shkwrgh1vpz031";
+        authors = [
+          "Richard Dodd <richdodj@gmail.com>"
+        ];
+
+      };
+      "ntapi" = rec {
+        crateName = "ntapi";
+        version = "0.3.6";
+        edition = "2018";
+        sha256 = "0i5daj9sr8wyi5jkpwpybln2jqpn59z0mqfc0dpdidipwh1bjsrz";
+        authors = [
+          "MSxDOS <melcodos@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "winapi";
+            packageId = "winapi";
+            features = [ "cfg" "evntrace" "in6addr" "inaddr" "minwinbase" "ntsecapi" "windef" "winioctl" ];
+          }
+        ];
+        features = {
+          "default" = [ "user" ];
+          "impl-default" = [ "winapi/impl-default" ];
+        };
+        resolvedDefaultFeatures = [ "default" "user" ];
+      };
+      "num-integer" = rec {
+        crateName = "num-integer";
+        version = "0.1.44";
+        edition = "2015";
+        sha256 = "1nq152y3304as1iai95hqz8prqnc94lks1s7q05sfjdmcf56kk6j";
+        authors = [
+          "The Rust Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "num-traits";
+            packageId = "num-traits";
+            usesDefaultFeatures = false;
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "autocfg";
+            packageId = "autocfg";
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+          "i128" = [ "num-traits/i128" ];
+          "std" = [ "num-traits/std" ];
+        };
+      };
+      "num-traits" = rec {
+        crateName = "num-traits";
+        version = "0.2.14";
+        edition = "2015";
+        sha256 = "144j176s2p76azy2ngk2vkdzgwdc0bc8c93jhki8c9fsbknb2r4s";
+        authors = [
+          "The Rust Project Developers"
+        ];
+        buildDependencies = [
+          {
+            name = "autocfg";
+            packageId = "autocfg";
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "std" ];
+      };
+      "num_cpus" = rec {
+        crateName = "num_cpus";
+        version = "1.13.0";
+        edition = "2015";
+        sha256 = "1cv6yxhz2zbnwn8pn1yn8grg7zsnd523947fby41a737aqvryj85";
+        authors = [
+          "Sean McArthur <sean@seanmonstar.com>"
+        ];
+        dependencies = [
+          {
+            name = "hermit-abi";
+            packageId = "hermit-abi";
+            target = { target, features }: (((target."arch" == "x86_64") || (target."arch" == "aarch64")) && (target."os" == "hermit"));
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+          }
+        ];
+
+      };
+      "object" = rec {
+        crateName = "object";
+        version = "0.25.3";
+        edition = "2018";
+        sha256 = "1irb91bk41kfd4bpr1ypda8hv1qn9js43zvl003b8mvsd7ijp3x3";
+        authors = [
+          "Nick Fitzgerald <fitzgen@gmail.com>"
+          "Philip Craig <philipjcraig@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "memchr";
+            packageId = "memchr";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "all" = [ "read" "write" "std" "compression" "default" ];
+          "compression" = [ "flate2" "std" ];
+          "default" = [ "read" "compression" ];
+          "pe" = [ "coff" ];
+          "read" = [ "read_core" "archive" "coff" "elf" "macho" "pe" "unaligned" ];
+          "rustc-dep-of-std" = [ "core" "compiler_builtins" "alloc" ];
+          "std" = [ "memchr/std" ];
+          "wasm" = [ "wasmparser" ];
+          "write" = [ "write_core" "coff" "elf" "macho" ];
+          "write_core" = [ "crc32fast" "indexmap" "std" ];
+        };
+        resolvedDefaultFeatures = [ "archive" "coff" "elf" "macho" "pe" "read_core" "unaligned" ];
+      };
+      "obkv" = rec {
+        crateName = "obkv";
+        version = "0.2.0";
+        edition = "2018";
+        sha256 = "11d3mc0v4qydckk3qn3n65kk4z47zpdpya513lmbanwfgk6li7pn";
+        authors = [
+          "Kerollmops <clement@meilisearch.com>"
+        ];
+
+      };
+      "once_cell" = rec {
+        crateName = "once_cell";
+        version = "1.8.0";
+        edition = "2018";
+        sha256 = "0mkbbxg6416z11r2yzsq91cqrkj9w1iyx5hakq15h5sbnriwnbv9";
+        authors = [
+          "Aleksey Kladov <aleksey.kladov@gmail.com>"
+        ];
+        features = {
+          "alloc" = [ "race" ];
+          "default" = [ "std" ];
+          "std" = [ "alloc" ];
+        };
+        resolvedDefaultFeatures = [ "alloc" "default" "race" "std" "unstable" ];
+      };
+      "opaque-debug 0.2.3" = rec {
+        crateName = "opaque-debug";
+        version = "0.2.3";
+        edition = "2015";
+        sha256 = "172j6bs8ndclqxa2m64qc0y1772rr73g4l9fg2svscgicnbfff98";
+        authors = [
+          "RustCrypto Developers"
+        ];
+
+      };
+      "opaque-debug 0.3.0" = rec {
+        crateName = "opaque-debug";
+        version = "0.3.0";
+        edition = "2018";
+        sha256 = "1m8kzi4nd6shdqimn0mgb24f0hxslhnqd1whakyq06wcqd086jk2";
+        authors = [
+          "RustCrypto Developers"
+        ];
+
+      };
+      "ordered-float" = rec {
+        crateName = "ordered-float";
+        version = "2.5.1";
+        edition = "2018";
+        sha256 = "1hpxm9mh948488cs4hhmhabbiya941rq2jgpj44mwf7587xzq07i";
+        authors = [
+          "Jonathan Reem <jonathan.reem@gmail.com>"
+          "Matt Brubeck <mbrubeck@limpet.net>"
+        ];
+        dependencies = [
+          {
+            name = "num-traits";
+            packageId = "num-traits";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+          "randtest" = [ "rand/std" "rand/std_rng" ];
+          "std" = [ "num-traits/std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "page_size" = rec {
+        crateName = "page_size";
+        version = "0.4.2";
+        edition = "2015";
+        sha256 = "1kgdv7f626jy4i2pq8czp4ppady4g4kqfa5ik4dah7mzzd4fbggf";
+        authors = [
+          "Philip Woods <elzairthesorcerer@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+            target = { target, features }: (target."unix" or false);
+          }
+          {
+            name = "winapi";
+            packageId = "winapi";
+            target = { target, features }: (target."windows" or false);
+            features = [ "sysinfoapi" ];
+          }
+        ];
+        features = {
+          "no_std" = [ "spin" ];
+        };
+      };
+      "parking_lot" = rec {
+        crateName = "parking_lot";
+        version = "0.11.1";
+        edition = "2018";
+        sha256 = "1sqmgaia8zfd5fbnqw2w13ijh7crk3lf9vw4cb52vwlx0an48xvd";
+        authors = [
+          "Amanieu d'Antras <amanieu@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "instant";
+            packageId = "instant";
+          }
+          {
+            name = "lock_api";
+            packageId = "lock_api";
+          }
+          {
+            name = "parking_lot_core";
+            packageId = "parking_lot_core";
+          }
+        ];
+        features = {
+          "deadlock_detection" = [ "parking_lot_core/deadlock_detection" ];
+          "nightly" = [ "parking_lot_core/nightly" "lock_api/nightly" ];
+          "owning_ref" = [ "lock_api/owning_ref" ];
+          "serde" = [ "lock_api/serde" ];
+          "stdweb" = [ "instant/stdweb" ];
+          "wasm-bindgen" = [ "instant/wasm-bindgen" ];
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "parking_lot_core" = rec {
+        crateName = "parking_lot_core";
+        version = "0.8.3";
+        edition = "2018";
+        sha256 = "065hkylji0g0fkh1vqp7kzs74vclhsxcczwhwqzpcig770lphyps";
+        authors = [
+          "Amanieu d'Antras <amanieu@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "instant";
+            packageId = "instant";
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+            target = { target, features }: (target."unix" or false);
+          }
+          {
+            name = "redox_syscall";
+            packageId = "redox_syscall";
+            target = { target, features }: (target."os" == "redox");
+          }
+          {
+            name = "smallvec";
+            packageId = "smallvec";
+          }
+          {
+            name = "winapi";
+            packageId = "winapi";
+            target = { target, features }: (target."windows" or false);
+            features = [ "winnt" "ntstatus" "minwindef" "winerror" "winbase" "errhandlingapi" "handleapi" ];
+          }
+        ];
+        features = {
+          "deadlock_detection" = [ "petgraph" "thread-id" "backtrace" ];
+        };
+      };
+      "paste" = rec {
+        crateName = "paste";
+        version = "1.0.5";
+        edition = "2018";
+        sha256 = "0n7y1pabn6vspdxgzx62rs9wdlbnay9r1g84j8jk2pn6s1x59gxc";
+        procMacro = true;
+        authors = [
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+
+      };
+      "path-matchers" = rec {
+        crateName = "path-matchers";
+        version = "1.0.2";
+        edition = "2018";
+        sha256 = "0avv7zcg7jakz765kg0zbva7nsv8mgcjj0jz78cyqybnlir9pk9n";
+        authors = [
+          "Alexander Korolev <kilork@yandex.ru>"
+        ];
+        dependencies = [
+          {
+            name = "glob";
+            packageId = "glob";
+            optional = true;
+          }
+        ];
+        features = {
+          "default" = [ "glob" ];
+        };
+        resolvedDefaultFeatures = [ "glob" ];
+      };
+      "path-slash" = rec {
+        crateName = "path-slash";
+        version = "0.1.4";
+        edition = "2018";
+        sha256 = "06dnnmd3fvmr9ngwgj0xrfj9s8h09m9dgf3zlqsbalzk9wybpb1w";
+        authors = [
+          "rhysd <https://rhysd.github.io>"
+        ];
+
+      };
+      "percent-encoding" = rec {
+        crateName = "percent-encoding";
+        version = "2.1.0";
+        edition = "2015";
+        sha256 = "0bp3zrsk3kr47fbpipyczidbbx4g54lzxdm77ni1i3qws10mdzfl";
+        libPath = "lib.rs";
+        authors = [
+          "The rust-url developers"
+        ];
+
+      };
+      "pest" = rec {
+        crateName = "pest";
+        version = "2.1.3";
+        edition = "2015";
+        workspace_member = null;
+        src = pkgs.fetchgit {
+          url = "https://github.com/pest-parser/pest.git";
+          rev = "51fd1d49f1041f7839975664ef71fe15c7dcaf67";
+          sha256 = "1l2ixz723f58ksdm0j12z9zw5cnap0fhcd5kbhbz5ndazy8sn5rf";
+        };
+        authors = [
+          "Dragoș Tiselice <dragostiselice@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "ucd-trie";
+            packageId = "ucd-trie";
+          }
+        ];
+        features = {
+          "pretty-print" = [ "serde" "serde_json" ];
+        };
+      };
+      "pest_derive" = rec {
+        crateName = "pest_derive";
+        version = "2.1.0";
+        edition = "2015";
+        sha256 = "1l5jfa6ril71cw5nsiw0r45br54dd8cj2r1nc2d1wq6wb3jilgc3";
+        procMacro = true;
+        authors = [
+          "Dragoș Tiselice <dragostiselice@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "pest";
+            packageId = "pest";
+          }
+          {
+            name = "pest_generator";
+            packageId = "pest_generator";
+          }
+        ];
+
+      };
+      "pest_generator" = rec {
+        crateName = "pest_generator";
+        version = "2.1.3";
+        edition = "2015";
+        sha256 = "0mfgl0p6v91ywdqr9i8w053v70cnfqjk8y5rhwbvir9idridpf4r";
+        authors = [
+          "Dragoș Tiselice <dragostiselice@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "pest";
+            packageId = "pest";
+          }
+          {
+            name = "pest_meta";
+            packageId = "pest_meta";
+          }
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+          }
+        ];
+
+      };
+      "pest_meta" = rec {
+        crateName = "pest_meta";
+        version = "2.1.3";
+        edition = "2015";
+        sha256 = "07d1jbbbpxpchk0j37ljas46sdyyg599z3zw2ac0f5sk9x06xgjl";
+        authors = [
+          "Dragoș Tiselice <dragostiselice@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "maplit";
+            packageId = "maplit";
+          }
+          {
+            name = "pest";
+            packageId = "pest";
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "sha-1";
+            packageId = "sha-1 0.8.2";
+            usesDefaultFeatures = false;
+          }
+        ];
+
+      };
+      "phf" = rec {
+        crateName = "phf";
+        version = "0.8.0";
+        edition = "2018";
+        sha256 = "04pyv8bzqvw69rd5dynd5nb85py1hf7wa4ixyhrvdz1l5qin3yrx";
+        authors = [
+          "Steven Fackler <sfackler@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "phf_shared";
+            packageId = "phf_shared";
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+          "macros" = [ "phf_macros" "proc-macro-hack" ];
+          "std" = [ "phf_shared/std" ];
+          "unicase" = [ "phf_shared/unicase" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "phf_codegen" = rec {
+        crateName = "phf_codegen";
+        version = "0.8.0";
+        edition = "2018";
+        sha256 = "05d8w7aqqjb6039pfm6404gk5dlwrrf97kiy1n21212vb1hyxzyb";
+        authors = [
+          "Steven Fackler <sfackler@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "phf_generator";
+            packageId = "phf_generator";
+          }
+          {
+            name = "phf_shared";
+            packageId = "phf_shared";
+          }
+        ];
+
+      };
+      "phf_generator" = rec {
+        crateName = "phf_generator";
+        version = "0.8.0";
+        edition = "2018";
+        crateBin = [];
+        sha256 = "09i5338d1kixq6a60fcayz6awgxjlxcfw9ic5f02abbgr067ydhp";
+        authors = [
+          "Steven Fackler <sfackler@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "phf_shared";
+            packageId = "phf_shared";
+          }
+          {
+            name = "rand";
+            packageId = "rand 0.7.3";
+            features = [ "small_rng" ];
+          }
+        ];
+
+      };
+      "phf_shared" = rec {
+        crateName = "phf_shared";
+        version = "0.8.0";
+        edition = "2018";
+        sha256 = "1xssnqrrcn0nr9ayqrnm8xm37ac4xvwcx8pax7jxss7yxawzh360";
+        authors = [
+          "Steven Fackler <sfackler@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "siphasher";
+            packageId = "siphasher";
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "pin-project" = rec {
+        crateName = "pin-project";
+        version = "1.0.7";
+        edition = "2018";
+        sha256 = "1964rh32hiy5v2ircli8wv8fxq9h2nkgfalda6j407040v0rql67";
+        authors = [
+          "Taiki Endo <te316e89@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "pin-project-internal";
+            packageId = "pin-project-internal";
+            usesDefaultFeatures = false;
+          }
+        ];
+
+      };
+      "pin-project-internal" = rec {
+        crateName = "pin-project-internal";
+        version = "1.0.7";
+        edition = "2018";
+        sha256 = "0vs289my2262ziwxj60mnzr2k41ibga73z8yddah1dc34l9m1ja8";
+        procMacro = true;
+        authors = [
+          "Taiki Endo <te316e89@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+            features = [ "full" "visit-mut" ];
+          }
+        ];
+
+      };
+      "pin-project-lite" = rec {
+        crateName = "pin-project-lite";
+        version = "0.2.6";
+        edition = "2018";
+        sha256 = "01g96zxghb33s1vsjmjpn9l3a2nxdqj7glf9lhq7q5wjkhjiy3nw";
+        authors = [
+          "Taiki Endo <te316e89@gmail.com>"
+        ];
+
+      };
+      "pin-utils" = rec {
+        crateName = "pin-utils";
+        version = "0.1.0";
+        edition = "2018";
+        sha256 = "117ir7vslsl2z1a7qzhws4pd01cg2d3338c47swjyvqv2n60v1wb";
+        authors = [
+          "Josef Brandl <mail@josefbrandl.de>"
+        ];
+
+      };
+      "pkg-config" = rec {
+        crateName = "pkg-config";
+        version = "0.3.19";
+        edition = "2015";
+        sha256 = "0k4860955riciibxr8bhnklp79jydp4xfylwdn5v9kj96hxlac9q";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+
+      };
+      "ppv-lite86" = rec {
+        crateName = "ppv-lite86";
+        version = "0.2.10";
+        edition = "2018";
+        sha256 = "0ms8198kclg4h96ggbziixxmsdl847s648kmbx11zlmjsqjccx5c";
+        authors = [
+          "The CryptoCorrosion Contributors"
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "simd" "std" ];
+      };
+      "predicates" = rec {
+        crateName = "predicates";
+        version = "1.0.8";
+        edition = "2018";
+        sha256 = "1pr1h0gqak6zc7vdrzaw98spi20lcm70brx3dz6glfxazpvzm77l";
+        authors = [
+          "Nick Stevens <nick@bitcurry.com>"
+        ];
+        dependencies = [
+          {
+            name = "difference";
+            packageId = "difference";
+            optional = true;
+          }
+          {
+            name = "float-cmp";
+            packageId = "float-cmp";
+            optional = true;
+          }
+          {
+            name = "normalize-line-endings";
+            packageId = "normalize-line-endings";
+            optional = true;
+          }
+          {
+            name = "predicates-core";
+            packageId = "predicates-core";
+          }
+          {
+            name = "regex";
+            packageId = "regex";
+            optional = true;
+          }
+        ];
+        features = {
+          "default" = [ "difference" "regex" "float-cmp" "normalize-line-endings" ];
+        };
+        resolvedDefaultFeatures = [ "default" "difference" "float-cmp" "normalize-line-endings" "regex" ];
+      };
+      "predicates-core" = rec {
+        crateName = "predicates-core";
+        version = "1.0.2";
+        edition = "2018";
+        sha256 = "0l947jviipblyaqsp3p5mvsqq421bg0nxp7mhnm4jpmp4qrmmqsp";
+        authors = [
+          "Nick Stevens <nick@bitcurry.com>"
+        ];
+
+      };
+      "predicates-tree" = rec {
+        crateName = "predicates-tree";
+        version = "1.0.2";
+        edition = "2018";
+        sha256 = "1wliadgjnl47b4hyp5j4mgjscq58v5gy31gba6a408apbqkm7x8m";
+        authors = [
+          "Nick Stevens <nick@bitcurry.com>"
+        ];
+        dependencies = [
+          {
+            name = "predicates-core";
+            packageId = "predicates-core";
+          }
+          {
+            name = "treeline";
+            packageId = "treeline";
+          }
+        ];
+
+      };
+      "proc-macro-error" = rec {
+        crateName = "proc-macro-error";
+        version = "1.0.4";
+        edition = "2018";
+        sha256 = "1373bhxaf0pagd8zkyd03kkx6bchzf6g0dkwrwzsnal9z47lj9fs";
+        authors = [
+          "CreepySkeleton <creepy-skeleton@yandex.ru>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro-error-attr";
+            packageId = "proc-macro-error-attr";
+          }
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "version_check";
+            packageId = "version_check";
+          }
+        ];
+        features = {
+          "default" = [ "syn-error" ];
+          "syn-error" = [ "syn" ];
+        };
+        resolvedDefaultFeatures = [ "default" "syn" "syn-error" ];
+      };
+      "proc-macro-error-attr" = rec {
+        crateName = "proc-macro-error-attr";
+        version = "1.0.4";
+        edition = "2018";
+        sha256 = "0sgq6m5jfmasmwwy8x4mjygx5l7kp8s4j60bv25ckv2j1qc41gm1";
+        procMacro = true;
+        authors = [
+          "CreepySkeleton <creepy-skeleton@yandex.ru>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "version_check";
+            packageId = "version_check";
+          }
+        ];
+
+      };
+      "proc-macro-hack" = rec {
+        crateName = "proc-macro-hack";
+        version = "0.5.19";
+        edition = "2018";
+        sha256 = "1rg0kzsj7lj00qj602d3h77spwfz48vixn1wbjp7a4yrq65w9w6v";
+        procMacro = true;
+        authors = [
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+
+      };
+      "proc-macro-nested" = rec {
+        crateName = "proc-macro-nested";
+        version = "0.1.7";
+        edition = "2015";
+        sha256 = "11hh1jynh62f3m1ii0f9gf1l3y0fhkwpmr40lz3704v848n1p25w";
+        authors = [
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+
+      };
+      "proc-macro2 0.4.30" = rec {
+        crateName = "proc-macro2";
+        version = "0.4.30";
+        edition = "2015";
+        sha256 = "0nd71fl24sys066jrha6j7i34nfkjv44yzw8yww9742wmc8j0gfg";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "unicode-xid";
+            packageId = "unicode-xid 0.1.0";
+          }
+        ];
+        features = {
+          "default" = [ "proc-macro" ];
+        };
+        resolvedDefaultFeatures = [ "default" "proc-macro" ];
+      };
+      "proc-macro2 1.0.27" = rec {
+        crateName = "proc-macro2";
+        version = "1.0.27";
+        edition = "2018";
+        sha256 = "0f3h0zl5w5090ajmmvpmhkpr4iwqnn5rip3afacabhc657vwmn7h";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "unicode-xid";
+            packageId = "unicode-xid 0.2.2";
+          }
+        ];
+        features = {
+          "default" = [ "proc-macro" ];
+        };
+        resolvedDefaultFeatures = [ "default" "proc-macro" ];
+      };
+      "quote 0.6.13" = rec {
+        crateName = "quote";
+        version = "0.6.13";
+        edition = "2015";
+        sha256 = "1qgqq48jymp5h4y082aanf25hrw6bpb678xh3zw993qfhxmkpqkc";
+        authors = [
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 0.4.30";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "default" = [ "proc-macro" ];
+          "proc-macro" = [ "proc-macro2/proc-macro" ];
+        };
+        resolvedDefaultFeatures = [ "default" "proc-macro" ];
+      };
+      "quote 1.0.9" = rec {
+        crateName = "quote";
+        version = "1.0.9";
+        edition = "2018";
+        sha256 = "19rjmfqzk26rxbgxy5j2ckqc2v12sw2xw8l4gi8bzpn2bmsbkl63";
+        authors = [
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "default" = [ "proc-macro" ];
+          "proc-macro" = [ "proc-macro2/proc-macro" ];
+        };
+        resolvedDefaultFeatures = [ "default" "proc-macro" ];
+      };
+      "rand 0.4.6" = rec {
+        crateName = "rand";
+        version = "0.4.6";
+        edition = "2015";
+        sha256 = "14qjfv3gggzhnma20k0sc1jf8y6pplsaq7n1j9ls5c8kf2wl0a2m";
+        authors = [
+          "The Rust Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "fuchsia-cprng";
+            packageId = "fuchsia-cprng";
+            target = { target, features }: (target."os" == "fuchsia");
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+            optional = true;
+            target = { target, features }: (target."unix" or false);
+          }
+          {
+            name = "rand_core";
+            packageId = "rand_core 0.3.1";
+            usesDefaultFeatures = false;
+            target = { target, features }: (target."env" == "sgx");
+          }
+          {
+            name = "rdrand";
+            packageId = "rdrand";
+            target = { target, features }: (target."env" == "sgx");
+          }
+          {
+            name = "winapi";
+            packageId = "winapi";
+            target = { target, features }: (target."windows" or false);
+            features = [ "minwindef" "ntsecapi" "profileapi" "winnt" ];
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+          "nightly" = [ "i128_support" ];
+          "std" = [ "libc" ];
+        };
+        resolvedDefaultFeatures = [ "default" "libc" "std" ];
+      };
+      "rand 0.7.3" = rec {
+        crateName = "rand";
+        version = "0.7.3";
+        edition = "2018";
+        sha256 = "00sdaimkbz491qgi6qxkv582yivl32m2jd401kzbn94vsiwicsva";
+        authors = [
+          "The Rand Project Developers"
+          "The Rust Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "getrandom";
+            packageId = "getrandom 0.1.16";
+            rename = "getrandom_package";
+            optional = true;
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+            optional = true;
+            usesDefaultFeatures = false;
+            target = { target, features }: (target."unix" or false);
+          }
+          {
+            name = "rand_chacha";
+            packageId = "rand_chacha 0.2.2";
+            usesDefaultFeatures = false;
+            target = { target, features }: (!(target."os" == "emscripten"));
+          }
+          {
+            name = "rand_core";
+            packageId = "rand_core 0.5.1";
+          }
+          {
+            name = "rand_hc";
+            packageId = "rand_hc 0.2.0";
+            target = { target, features }: (target."os" == "emscripten");
+          }
+          {
+            name = "rand_pcg";
+            packageId = "rand_pcg";
+            optional = true;
+          }
+        ];
+        devDependencies = [
+          {
+            name = "rand_hc";
+            packageId = "rand_hc 0.2.0";
+          }
+          {
+            name = "rand_pcg";
+            packageId = "rand_pcg";
+          }
+        ];
+        features = {
+          "alloc" = [ "rand_core/alloc" ];
+          "default" = [ "std" ];
+          "getrandom" = [ "getrandom_package" "rand_core/getrandom" ];
+          "nightly" = [ "simd_support" ];
+          "simd_support" = [ "packed_simd" ];
+          "small_rng" = [ "rand_pcg" ];
+          "std" = [ "rand_core/std" "rand_chacha/std" "alloc" "getrandom" "libc" ];
+          "stdweb" = [ "getrandom_package/stdweb" ];
+          "wasm-bindgen" = [ "getrandom_package/wasm-bindgen" ];
+        };
+        resolvedDefaultFeatures = [ "alloc" "default" "getrandom" "getrandom_package" "libc" "rand_pcg" "small_rng" "std" ];
+      };
+      "rand 0.8.4" = rec {
+        crateName = "rand";
+        version = "0.8.4";
+        edition = "2018";
+        sha256 = "1n5wska2fbfj4dsfz8mc0pd0dgjlrb6c9anpk5mwym345rip6x9f";
+        authors = [
+          "The Rand Project Developers"
+          "The Rust Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+            optional = true;
+            usesDefaultFeatures = false;
+            target = { target, features }: (target."unix" or false);
+          }
+          {
+            name = "rand_chacha";
+            packageId = "rand_chacha 0.3.1";
+            optional = true;
+            usesDefaultFeatures = false;
+            target = { target, features }: (!(target."os" == "emscripten"));
+          }
+          {
+            name = "rand_core";
+            packageId = "rand_core 0.6.3";
+          }
+          {
+            name = "rand_hc";
+            packageId = "rand_hc 0.3.1";
+            optional = true;
+            target = { target, features }: (target."os" == "emscripten");
+          }
+        ];
+        devDependencies = [
+          {
+            name = "rand_hc";
+            packageId = "rand_hc 0.3.1";
+          }
+        ];
+        features = {
+          "alloc" = [ "rand_core/alloc" ];
+          "default" = [ "std" "std_rng" ];
+          "getrandom" = [ "rand_core/getrandom" ];
+          "serde1" = [ "serde" "rand_core/serde1" ];
+          "simd_support" = [ "packed_simd" ];
+          "std" = [ "rand_core/std" "rand_chacha/std" "alloc" "getrandom" "libc" ];
+          "std_rng" = [ "rand_chacha" "rand_hc" ];
+        };
+        resolvedDefaultFeatures = [ "alloc" "default" "getrandom" "libc" "rand_chacha" "rand_hc" "std" "std_rng" ];
+      };
+      "rand_chacha 0.2.2" = rec {
+        crateName = "rand_chacha";
+        version = "0.2.2";
+        edition = "2018";
+        sha256 = "00il36fkdbsmpr99p9ksmmp6dn1md7rmnwmz0rr77jbrca2yvj7l";
+        authors = [
+          "The Rand Project Developers"
+          "The Rust Project Developers"
+          "The CryptoCorrosion Contributors"
+        ];
+        dependencies = [
+          {
+            name = "ppv-lite86";
+            packageId = "ppv-lite86";
+            usesDefaultFeatures = false;
+            features = [ "simd" ];
+          }
+          {
+            name = "rand_core";
+            packageId = "rand_core 0.5.1";
+          }
+        ];
+        features = {
+          "default" = [ "std" "simd" ];
+          "std" = [ "ppv-lite86/std" ];
+        };
+        resolvedDefaultFeatures = [ "std" ];
+      };
+      "rand_chacha 0.3.1" = rec {
+        crateName = "rand_chacha";
+        version = "0.3.1";
+        edition = "2018";
+        sha256 = "123x2adin558xbhvqb8w4f6syjsdkmqff8cxwhmjacpsl1ihmhg6";
+        authors = [
+          "The Rand Project Developers"
+          "The Rust Project Developers"
+          "The CryptoCorrosion Contributors"
+        ];
+        dependencies = [
+          {
+            name = "ppv-lite86";
+            packageId = "ppv-lite86";
+            usesDefaultFeatures = false;
+            features = [ "simd" ];
+          }
+          {
+            name = "rand_core";
+            packageId = "rand_core 0.6.3";
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+          "serde1" = [ "serde" ];
+          "std" = [ "ppv-lite86/std" ];
+        };
+        resolvedDefaultFeatures = [ "std" ];
+      };
+      "rand_core 0.3.1" = rec {
+        crateName = "rand_core";
+        version = "0.3.1";
+        edition = "2015";
+        sha256 = "0jzdgszfa4bliigiy4hi66k7fs3gfwi2qxn8vik84ph77fwdwvvs";
+        authors = [
+          "The Rand Project Developers"
+          "The Rust Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "rand_core";
+            packageId = "rand_core 0.4.2";
+          }
+        ];
+        features = {
+          "alloc" = [ "rand_core/alloc" ];
+          "default" = [ "std" ];
+          "serde1" = [ "rand_core/serde1" ];
+          "std" = [ "rand_core/std" ];
+        };
+      };
+      "rand_core 0.4.2" = rec {
+        crateName = "rand_core";
+        version = "0.4.2";
+        edition = "2015";
+        sha256 = "1p09ynysrq1vcdlmcqnapq4qakl2yd1ng3kxh3qscpx09k2a6cww";
+        authors = [
+          "The Rand Project Developers"
+          "The Rust Project Developers"
+        ];
+        features = {
+          "serde1" = [ "serde" "serde_derive" ];
+          "std" = [ "alloc" ];
+        };
+      };
+      "rand_core 0.5.1" = rec {
+        crateName = "rand_core";
+        version = "0.5.1";
+        edition = "2018";
+        sha256 = "06bdvx08v3rkz451cm7z59xwwqn1rkfh6v9ay77b14f8dwlybgch";
+        authors = [
+          "The Rand Project Developers"
+          "The Rust Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "getrandom";
+            packageId = "getrandom 0.1.16";
+            optional = true;
+          }
+        ];
+        features = {
+          "serde1" = [ "serde" ];
+          "std" = [ "alloc" "getrandom" "getrandom/std" ];
+        };
+        resolvedDefaultFeatures = [ "alloc" "getrandom" "std" ];
+      };
+      "rand_core 0.6.3" = rec {
+        crateName = "rand_core";
+        version = "0.6.3";
+        edition = "2018";
+        sha256 = "1rxlxc3bpzgwphcg9c9yasvv9idipcg2z2y4j0vlb52jyl418kyk";
+        authors = [
+          "The Rand Project Developers"
+          "The Rust Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "getrandom";
+            packageId = "getrandom 0.2.3";
+            optional = true;
+          }
+        ];
+        features = {
+          "serde1" = [ "serde" ];
+          "std" = [ "alloc" "getrandom" "getrandom/std" ];
+        };
+        resolvedDefaultFeatures = [ "alloc" "getrandom" "std" ];
+      };
+      "rand_hc 0.2.0" = rec {
+        crateName = "rand_hc";
+        version = "0.2.0";
+        edition = "2018";
+        sha256 = "0g31sqwpmsirdlwr0svnacr4dbqyz339im4ssl9738cjgfpjjcfa";
+        authors = [
+          "The Rand Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "rand_core";
+            packageId = "rand_core 0.5.1";
+          }
+        ];
+
+      };
+      "rand_hc 0.3.1" = rec {
+        crateName = "rand_hc";
+        version = "0.3.1";
+        edition = "2018";
+        sha256 = "1rwpykyvhkxs4jvqdja3mzp9dqaqamzn113cxaigs9z2dmcry7nm";
+        authors = [
+          "The Rand Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "rand_core";
+            packageId = "rand_core 0.6.3";
+          }
+        ];
+
+      };
+      "rand_pcg" = rec {
+        crateName = "rand_pcg";
+        version = "0.2.1";
+        edition = "2018";
+        sha256 = "0ab4h6s6x3py833jk61lwadq83qd1c8bih2hgi6yps9rnv0x1aqn";
+        authors = [
+          "The Rand Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "rand_core";
+            packageId = "rand_core 0.5.1";
+          }
+        ];
+        features = {
+          "serde1" = [ "serde" ];
+        };
+      };
+      "rayon" = rec {
+        crateName = "rayon";
+        version = "1.5.1";
+        edition = "2018";
+        sha256 = "143dl2453bazgk7rwjrickmyqd0ks3q69nfz8axcins19n0clsn0";
+        authors = [
+          "Niko Matsakis <niko@alum.mit.edu>"
+          "Josh Stone <cuviper@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "crossbeam-deque";
+            packageId = "crossbeam-deque";
+          }
+          {
+            name = "either";
+            packageId = "either";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "rayon-core";
+            packageId = "rayon-core";
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "autocfg";
+            packageId = "autocfg";
+          }
+        ];
+
+      };
+      "rayon-core" = rec {
+        crateName = "rayon-core";
+        version = "1.9.1";
+        edition = "2018";
+        sha256 = "13kdcnqp2p1a5a3amamfjpnm7ay463vq4dfxy4rrh9shr3i210fp";
+        authors = [
+          "Niko Matsakis <niko@alum.mit.edu>"
+          "Josh Stone <cuviper@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "crossbeam-channel";
+            packageId = "crossbeam-channel";
+          }
+          {
+            name = "crossbeam-deque";
+            packageId = "crossbeam-deque";
+          }
+          {
+            name = "crossbeam-utils";
+            packageId = "crossbeam-utils 0.8.5";
+          }
+          {
+            name = "lazy_static";
+            packageId = "lazy_static";
+          }
+          {
+            name = "num_cpus";
+            packageId = "num_cpus";
+          }
+        ];
+
+      };
+      "rdrand" = rec {
+        crateName = "rdrand";
+        version = "0.4.0";
+        edition = "2015";
+        sha256 = "1cjq0kwx1bk7jx3kzyciiish5gqsj7620dm43dc52sr8fzmm9037";
+        authors = [
+          "Simonas Kazlauskas <rdrand@kazlauskas.me>"
+        ];
+        dependencies = [
+          {
+            name = "rand_core";
+            packageId = "rand_core 0.3.1";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "redox_syscall" = rec {
+        crateName = "redox_syscall";
+        version = "0.2.9";
+        edition = "2018";
+        sha256 = "1vpyfnfrw5ki262720yks8m7vn1a2mg89s4rqi5ir7izvyx9md2s";
+        libName = "syscall";
+        authors = [
+          "Jeremy Soller <jackpot51@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "bitflags";
+            packageId = "bitflags";
+          }
+        ];
+
+      };
+      "regex" = rec {
+        crateName = "regex";
+        version = "1.5.4";
+        edition = "2018";
+        sha256 = "0qf479kjbmb582h4d1d6gfl75h0j8aq2nrdi5wg6zdcy6llqcynh";
+        authors = [
+          "The Rust Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "aho-corasick";
+            packageId = "aho-corasick";
+            optional = true;
+          }
+          {
+            name = "memchr";
+            packageId = "memchr";
+            optional = true;
+          }
+          {
+            name = "regex-syntax";
+            packageId = "regex-syntax";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "default" = [ "std" "perf" "unicode" "regex-syntax/default" ];
+          "perf" = [ "perf-cache" "perf-dfa" "perf-inline" "perf-literal" ];
+          "perf-literal" = [ "aho-corasick" "memchr" ];
+          "unicode" = [ "unicode-age" "unicode-bool" "unicode-case" "unicode-gencat" "unicode-perl" "unicode-script" "unicode-segment" "regex-syntax/unicode" ];
+          "unicode-age" = [ "regex-syntax/unicode-age" ];
+          "unicode-bool" = [ "regex-syntax/unicode-bool" ];
+          "unicode-case" = [ "regex-syntax/unicode-case" ];
+          "unicode-gencat" = [ "regex-syntax/unicode-gencat" ];
+          "unicode-perl" = [ "regex-syntax/unicode-perl" ];
+          "unicode-script" = [ "regex-syntax/unicode-script" ];
+          "unicode-segment" = [ "regex-syntax/unicode-segment" ];
+          "unstable" = [ "pattern" ];
+          "use_std" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "aho-corasick" "default" "memchr" "perf" "perf-cache" "perf-dfa" "perf-inline" "perf-literal" "std" "unicode" "unicode-age" "unicode-bool" "unicode-case" "unicode-gencat" "unicode-perl" "unicode-script" "unicode-segment" ];
+      };
+      "regex-automata" = rec {
+        crateName = "regex-automata";
+        version = "0.1.10";
+        edition = "2015";
+        sha256 = "0ci1hvbzhrfby5fdpf4ganhf7kla58acad9i1ff1p34dzdrhs8vc";
+        authors = [
+          "Andrew Gallant <jamslam@gmail.com>"
+        ];
+        features = {
+          "default" = [ "std" ];
+          "std" = [ "regex-syntax" ];
+          "transducer" = [ "std" "fst" ];
+        };
+      };
+      "regex-syntax" = rec {
+        crateName = "regex-syntax";
+        version = "0.6.25";
+        edition = "2018";
+        sha256 = "16y87hz1bxmmz6kk360cxwfm3jnbsxb3x4zw9x1gzz7khic2i5zl";
+        authors = [
+          "The Rust Project Developers"
+        ];
+        features = {
+          "default" = [ "unicode" ];
+          "unicode" = [ "unicode-age" "unicode-bool" "unicode-case" "unicode-gencat" "unicode-perl" "unicode-script" "unicode-segment" ];
+        };
+        resolvedDefaultFeatures = [ "default" "unicode" "unicode-age" "unicode-bool" "unicode-case" "unicode-gencat" "unicode-perl" "unicode-script" "unicode-segment" ];
+      };
+      "remove_dir_all" = rec {
+        crateName = "remove_dir_all";
+        version = "0.5.3";
+        edition = "2015";
+        sha256 = "1rzqbsgkmr053bxxl04vmvsd1njyz0nxvly97aip6aa2cmb15k9s";
+        authors = [
+          "Aaronepower <theaaronepower@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "winapi";
+            packageId = "winapi";
+            target = { target, features }: (target."windows" or false);
+            features = [ "std" "errhandlingapi" "winerror" "fileapi" "winbase" ];
+          }
+        ];
+
+      };
+      "reqwest" = rec {
+        crateName = "reqwest";
+        version = "0.11.4";
+        edition = "2018";
+        sha256 = "08kdxaa7c5wzlr2f4qkqlczc86p30sz84xllk83dyxxvp5hryvi4";
+        authors = [
+          "Sean McArthur <sean@seanmonstar.com>"
+        ];
+        dependencies = [
+          {
+            name = "base64";
+            packageId = "base64";
+            target = { target, features }: (!(target."arch" == "wasm32"));
+          }
+          {
+            name = "bytes";
+            packageId = "bytes 1.0.1";
+          }
+          {
+            name = "encoding_rs";
+            packageId = "encoding_rs";
+            target = { target, features }: (!(target."arch" == "wasm32"));
+          }
+          {
+            name = "futures-core";
+            packageId = "futures-core";
+            usesDefaultFeatures = false;
+            target = { target, features }: (!(target."arch" == "wasm32"));
+          }
+          {
+            name = "futures-util";
+            packageId = "futures-util";
+            usesDefaultFeatures = false;
+            target = { target, features }: (!(target."arch" == "wasm32"));
+          }
+          {
+            name = "http";
+            packageId = "http";
+          }
+          {
+            name = "http-body";
+            packageId = "http-body";
+            target = { target, features }: (!(target."arch" == "wasm32"));
+          }
+          {
+            name = "hyper";
+            packageId = "hyper";
+            usesDefaultFeatures = false;
+            target = { target, features }: (!(target."arch" == "wasm32"));
+            features = [ "tcp" "http1" "http2" "client" "runtime" ];
+          }
+          {
+            name = "hyper-rustls";
+            packageId = "hyper-rustls";
+            optional = true;
+            usesDefaultFeatures = false;
+            target = { target, features }: (!(target."arch" == "wasm32"));
+          }
+          {
+            name = "ipnet";
+            packageId = "ipnet";
+            target = { target, features }: (!(target."arch" == "wasm32"));
+          }
+          {
+            name = "js-sys";
+            packageId = "js-sys";
+            target = { target, features }: (target."arch" == "wasm32");
+          }
+          {
+            name = "lazy_static";
+            packageId = "lazy_static";
+            target = { target, features }: (!(target."arch" == "wasm32"));
+          }
+          {
+            name = "log";
+            packageId = "log";
+            target = { target, features }: (!(target."arch" == "wasm32"));
+          }
+          {
+            name = "mime";
+            packageId = "mime";
+            target = { target, features }: (!(target."arch" == "wasm32"));
+          }
+          {
+            name = "percent-encoding";
+            packageId = "percent-encoding";
+            target = { target, features }: (!(target."arch" == "wasm32"));
+          }
+          {
+            name = "pin-project-lite";
+            packageId = "pin-project-lite";
+            target = { target, features }: (!(target."arch" == "wasm32"));
+          }
+          {
+            name = "rustls";
+            packageId = "rustls";
+            optional = true;
+            target = { target, features }: (!(target."arch" == "wasm32"));
+            features = [ "dangerous_configuration" ];
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+          }
+          {
+            name = "serde_json";
+            packageId = "serde_json";
+            optional = true;
+          }
+          {
+            name = "serde_urlencoded";
+            packageId = "serde_urlencoded";
+          }
+          {
+            name = "tokio";
+            packageId = "tokio";
+            usesDefaultFeatures = false;
+            target = { target, features }: (!(target."arch" == "wasm32"));
+            features = [ "net" "time" ];
+          }
+          {
+            name = "tokio-rustls";
+            packageId = "tokio-rustls";
+            optional = true;
+            target = { target, features }: (!(target."arch" == "wasm32"));
+          }
+          {
+            name = "url";
+            packageId = "url";
+          }
+          {
+            name = "wasm-bindgen";
+            packageId = "wasm-bindgen";
+            target = { target, features }: (target."arch" == "wasm32");
+            features = [ "serde-serialize" ];
+          }
+          {
+            name = "wasm-bindgen-futures";
+            packageId = "wasm-bindgen-futures";
+            target = { target, features }: (target."arch" == "wasm32");
+          }
+          {
+            name = "web-sys";
+            packageId = "web-sys";
+            target = { target, features }: (target."arch" == "wasm32");
+            features = [ "Headers" "Request" "RequestInit" "RequestMode" "Response" "Window" "FormData" "Blob" "BlobPropertyBag" "ServiceWorkerGlobalScope" "RequestCredentials" ];
+          }
+          {
+            name = "webpki-roots";
+            packageId = "webpki-roots";
+            optional = true;
+            target = { target, features }: (!(target."arch" == "wasm32"));
+          }
+          {
+            name = "winreg";
+            packageId = "winreg";
+            target = { target, features }: (target."windows" or false);
+          }
+        ];
+        devDependencies = [
+          {
+            name = "hyper";
+            packageId = "hyper";
+            usesDefaultFeatures = false;
+            target = {target, features}: (!(target."arch" == "wasm32"));
+            features = [ "tcp" "stream" "http1" "http2" "client" "server" "runtime" ];
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+            target = {target, features}: (!(target."arch" == "wasm32"));
+            features = [ "derive" ];
+          }
+          {
+            name = "tokio";
+            packageId = "tokio";
+            usesDefaultFeatures = false;
+            target = {target, features}: (!(target."arch" == "wasm32"));
+            features = [ "macros" "rt-multi-thread" ];
+          }
+        ];
+        features = {
+          "__rustls" = [ "hyper-rustls" "tokio-rustls" "rustls" "__tls" ];
+          "blocking" = [ "futures-util/io" "tokio/rt-multi-thread" "tokio/sync" ];
+          "brotli" = [ "async-compression" "async-compression/brotli" "tokio-util" ];
+          "cookies" = [ "cookie_crate" "cookie_store" "time" ];
+          "default" = [ "default-tls" ];
+          "default-tls" = [ "hyper-tls" "native-tls-crate" "__tls" "tokio-native-tls" ];
+          "deflate" = [ "async-compression" "async-compression/zlib" "tokio-util" ];
+          "gzip" = [ "async-compression" "async-compression/gzip" "tokio-util" ];
+          "json" = [ "serde_json" ];
+          "multipart" = [ "mime_guess" ];
+          "native-tls" = [ "default-tls" ];
+          "native-tls-alpn" = [ "native-tls" "native-tls-crate/alpn" ];
+          "native-tls-vendored" = [ "native-tls" "native-tls-crate/vendored" ];
+          "rustls-tls" = [ "rustls-tls-webpki-roots" ];
+          "rustls-tls-manual-roots" = [ "__rustls" ];
+          "rustls-tls-native-roots" = [ "rustls-native-certs" "__rustls" ];
+          "rustls-tls-webpki-roots" = [ "webpki-roots" "__rustls" ];
+          "socks" = [ "tokio-socks" ];
+          "trust-dns" = [ "trust-dns-resolver" ];
+        };
+        resolvedDefaultFeatures = [ "__rustls" "__tls" "blocking" "hyper-rustls" "json" "rustls" "rustls-tls" "rustls-tls-webpki-roots" "serde_json" "tokio-rustls" "webpki-roots" ];
+      };
+      "retain_mut" = rec {
+        crateName = "retain_mut";
+        version = "0.1.3";
+        edition = "2015";
+        sha256 = "0nvfimwjidjfj50k2lh2xplc179zzsz8dlh38s52jz82m4jpkhg9";
+        authors = [
+          "Xidorn Quan <me@upsuper.org>"
+        ];
+
+      };
+      "ring" = rec {
+        crateName = "ring";
+        version = "0.16.20";
+        edition = "2018";
+        sha256 = "1z682xp7v38ayq9g9nkbhhfpj6ygralmlx7wdmsfv8rnw99cylrh";
+        authors = [
+          "Brian Smith <brian@briansmith.org>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+            usesDefaultFeatures = false;
+            target = { target, features }: ((target."os" == "android") || (target."os" == "linux"));
+          }
+          {
+            name = "once_cell";
+            packageId = "once_cell";
+            optional = true;
+            usesDefaultFeatures = false;
+            target = { target, features }: ((target."os" == "android") || (target."os" == "linux"));
+            features = [ "std" ];
+          }
+          {
+            name = "once_cell";
+            packageId = "once_cell";
+            usesDefaultFeatures = false;
+            target = { target, features }: ((target."os" == "dragonfly") || (target."os" == "freebsd") || (target."os" == "illumos") || (target."os" == "netbsd") || (target."os" == "openbsd") || (target."os" == "solaris"));
+            features = [ "std" ];
+          }
+          {
+            name = "spin";
+            packageId = "spin";
+            usesDefaultFeatures = false;
+            target = { target, features }: ((target."arch" == "x86") || (target."arch" == "x86_64") || (((target."arch" == "aarch64") || (target."arch" == "arm")) && ((target."os" == "android") || (target."os" == "fuchsia") || (target."os" == "linux"))));
+          }
+          {
+            name = "untrusted";
+            packageId = "untrusted";
+          }
+          {
+            name = "web-sys";
+            packageId = "web-sys";
+            usesDefaultFeatures = false;
+            target = { target, features }: ((target."arch" == "wasm32") && (target."vendor" == "unknown") && (target."os" == "unknown") && (target."env" == ""));
+            features = [ "Crypto" "Window" ];
+          }
+          {
+            name = "winapi";
+            packageId = "winapi";
+            usesDefaultFeatures = false;
+            target = { target, features }: (target."os" == "windows");
+            features = [ "ntsecapi" "wtypesbase" ];
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "cc";
+            packageId = "cc";
+            usesDefaultFeatures = false;
+          }
+        ];
+        devDependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+            usesDefaultFeatures = false;
+            target = {target, features}: ((target."unix" or false) || (target."windows" or false));
+          }
+        ];
+        features = {
+          "default" = [ "alloc" "dev_urandom_fallback" ];
+          "dev_urandom_fallback" = [ "once_cell" ];
+          "std" = [ "alloc" ];
+        };
+        resolvedDefaultFeatures = [ "alloc" "default" "dev_urandom_fallback" "once_cell" ];
+      };
+      "roaring" = rec {
+        crateName = "roaring";
+        version = "0.6.7";
+        edition = "2018";
+        sha256 = "02capyx1axzi621ipnlm2ff7v6w4f1wnvygdd6pbi263by4glv2k";
+        authors = [
+          "Wim Looman <wim@nemo157.com>"
+          "Kerollmops <kero@meilisearch.com>"
+        ];
+        dependencies = [
+          {
+            name = "bytemuck";
+            packageId = "bytemuck";
+          }
+          {
+            name = "byteorder";
+            packageId = "byteorder";
+          }
+          {
+            name = "retain_mut";
+            packageId = "retain_mut";
+          }
+        ];
+
+      };
+      "rustc-demangle" = rec {
+        crateName = "rustc-demangle";
+        version = "0.1.20";
+        edition = "2015";
+        sha256 = "0jcdh4zanli1r4pcfj5ah1xcbxv87vh02syb9f0rqgp0nnq71bfy";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        features = {
+          "rustc-dep-of-std" = [ "core" "compiler_builtins" ];
+        };
+      };
+      "rustc_version 0.2.3" = rec {
+        crateName = "rustc_version";
+        version = "0.2.3";
+        edition = "2015";
+        sha256 = "02h3x57lcr8l2pm0a645s9whdh33pn5cnrwvn5cb57vcrc53x3hk";
+        authors = [
+          "Marvin Löbel <loebel.marvin@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "semver";
+            packageId = "semver 0.9.0";
+          }
+        ];
+
+      };
+      "rustc_version 0.3.3" = rec {
+        crateName = "rustc_version";
+        version = "0.3.3";
+        edition = "2018";
+        sha256 = "1vjmw7xcdri0spsf24mkpwpph853wrbqppihhw061i2igh4f5pzh";
+        authors = [
+          "Marvin Löbel <loebel.marvin@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "semver";
+            packageId = "semver 0.11.0";
+          }
+        ];
+
+      };
+      "rustls" = rec {
+        crateName = "rustls";
+        version = "0.19.1";
+        edition = "2018";
+        sha256 = "1mx6nzbplydy9khll4clsl35m6c1a2cgz9czr74swfgfzrsvdv9m";
+        authors = [
+          "Joseph Birr-Pixton <jpixton@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "base64";
+            packageId = "base64";
+          }
+          {
+            name = "log";
+            packageId = "log";
+            optional = true;
+          }
+          {
+            name = "ring";
+            packageId = "ring";
+          }
+          {
+            name = "sct";
+            packageId = "sct";
+          }
+          {
+            name = "webpki";
+            packageId = "webpki";
+          }
+        ];
+        devDependencies = [
+          {
+            name = "log";
+            packageId = "log";
+          }
+        ];
+        features = {
+          "default" = [ "logging" ];
+          "logging" = [ "log" ];
+        };
+        resolvedDefaultFeatures = [ "dangerous_configuration" "default" "log" "logging" ];
+      };
+      "rustversion" = rec {
+        crateName = "rustversion";
+        version = "1.0.5";
+        edition = "2018";
+        sha256 = "1250m7ymrhp3c5xfmliskmknhf23r7x3cirxy9wmrdwbfnfr1cv1";
+        procMacro = true;
+        build = "build/build.rs";
+        authors = [
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+
+      };
+      "ryu" = rec {
+        crateName = "ryu";
+        version = "1.0.5";
+        edition = "2018";
+        sha256 = "0vpqv1dj7fksa6hm3zpk5rbsjs0ifbfy7xwzsyyil0rx37a03lvi";
+        authors = [
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+        features = {
+        };
+      };
+      "same-file" = rec {
+        crateName = "same-file";
+        version = "1.0.6";
+        edition = "2018";
+        sha256 = "00h5j1w87dmhnvbv9l8bic3y7xxsnjmssvifw2ayvgx9mb1ivz4k";
+        authors = [
+          "Andrew Gallant <jamslam@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "winapi-util";
+            packageId = "winapi-util";
+            target = { target, features }: (target."windows" or false);
+          }
+        ];
+
+      };
+      "scopeguard" = rec {
+        crateName = "scopeguard";
+        version = "1.1.0";
+        edition = "2015";
+        sha256 = "1kbqm85v43rq92vx7hfiay6pmcga03vrjbbfwqpyj3pwsg3b16nj";
+        authors = [
+          "bluss"
+        ];
+        features = {
+          "default" = [ "use_std" ];
+        };
+      };
+      "sct" = rec {
+        crateName = "sct";
+        version = "0.6.1";
+        edition = "2018";
+        sha256 = "1ki8qa7yf4d9i4ynsfvwwkpnnqw0m8ayx0jva4w9zrp0k0wbhqmk";
+        authors = [
+          "Joseph Birr-Pixton <jpixton@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "ring";
+            packageId = "ring";
+          }
+          {
+            name = "untrusted";
+            packageId = "untrusted";
+          }
+        ];
+
+      };
+      "semver 0.11.0" = rec {
+        crateName = "semver";
+        version = "0.11.0";
+        edition = "2015";
+        sha256 = "1dn6064fipjymnmjccyjhb70miyvqvp08gvw1wbg8vbg4c8ay0gk";
+        authors = [
+          "Steve Klabnik <steve@steveklabnik.com>"
+          "The Rust Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "semver-parser";
+            packageId = "semver-parser 0.10.2";
+          }
+        ];
+        features = {
+          "ci" = [ "serde" "diesel/sqlite" ];
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "semver 0.9.0" = rec {
+        crateName = "semver";
+        version = "0.9.0";
+        edition = "2015";
+        sha256 = "00q4lkcj0rrgbhviv9sd4p6qmdsipkwkbra7rh11jrhq5kpvjzhx";
+        authors = [
+          "Steve Klabnik <steve@steveklabnik.com>"
+          "The Rust Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "semver-parser";
+            packageId = "semver-parser 0.7.0";
+          }
+        ];
+        features = {
+          "ci" = [ "serde" ];
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "semver-parser 0.10.2" = rec {
+        crateName = "semver-parser";
+        version = "0.10.2";
+        edition = "2018";
+        crateBin = [];
+        sha256 = "1xqijhqhx3bn77xnl1mlcp032hz8nv7n2fbdacbdzq7rnzsvxc00";
+        authors = [
+          "Steve Klabnik <steve@steveklabnik.com>"
+        ];
+        dependencies = [
+          {
+            name = "pest";
+            packageId = "pest";
+          }
+        ];
+
+      };
+      "semver-parser 0.7.0" = rec {
+        crateName = "semver-parser";
+        version = "0.7.0";
+        edition = "2015";
+        sha256 = "18vhypw6zgccnrlm5ps1pwa0khz7ry927iznpr88b87cagr1v2iq";
+        authors = [
+          "Steve Klabnik <steve@steveklabnik.com>"
+        ];
+
+      };
+      "sentry" = rec {
+        crateName = "sentry";
+        version = "0.22.0";
+        edition = "2018";
+        sha256 = "1d22kgsvj5pj0x6n1vx70n5ygnh1bfic76pgw8c606670xdl4z7j";
+        authors = [
+          "Sentry <hello@sentry.io>"
+        ];
+        dependencies = [
+          {
+            name = "httpdate";
+            packageId = "httpdate 0.3.2";
+            optional = true;
+          }
+          {
+            name = "reqwest";
+            packageId = "reqwest";
+            rename = "reqwest_";
+            optional = true;
+            usesDefaultFeatures = false;
+            features = [ "blocking" "json" ];
+          }
+          {
+            name = "sentry-backtrace";
+            packageId = "sentry-backtrace";
+            optional = true;
+          }
+          {
+            name = "sentry-contexts";
+            packageId = "sentry-contexts";
+            optional = true;
+          }
+          {
+            name = "sentry-core";
+            packageId = "sentry-core";
+            features = [ "client" ];
+          }
+          {
+            name = "sentry-log";
+            packageId = "sentry-log";
+            optional = true;
+          }
+          {
+            name = "sentry-panic";
+            packageId = "sentry-panic";
+            optional = true;
+          }
+        ];
+        features = {
+          "anyhow" = [ "sentry-anyhow" ];
+          "backtrace" = [ "sentry-backtrace" ];
+          "contexts" = [ "sentry-contexts" ];
+          "curl" = [ "curl_" "httpdate" "serde_json" ];
+          "debug-images" = [ "sentry-debug-images" ];
+          "debug-logs" = [ "log_" "sentry-core/debug-logs" ];
+          "default" = [ "backtrace" "contexts" "panic" "transport" ];
+          "log" = [ "sentry-log" ];
+          "native-tls" = [ "reqwest_/default-tls" ];
+          "panic" = [ "sentry-panic" ];
+          "reqwest" = [ "reqwest_" "httpdate" ];
+          "rustls" = [ "reqwest_/rustls-tls" ];
+          "slog" = [ "sentry-slog" ];
+          "surf" = [ "surf_" "httpdate" "futures" ];
+          "test" = [ "sentry-core/test" ];
+          "transport" = [ "reqwest" "native-tls" ];
+        };
+        resolvedDefaultFeatures = [ "backtrace" "contexts" "httpdate" "log" "panic" "reqwest" "reqwest_" "rustls" "sentry-backtrace" "sentry-contexts" "sentry-log" "sentry-panic" ];
+      };
+      "sentry-backtrace" = rec {
+        crateName = "sentry-backtrace";
+        version = "0.22.0";
+        edition = "2018";
+        sha256 = "0cx7bhmnb0sm1s0423409y8biikzbn0ykwx5mar2a3hapvcvk9c0";
+        authors = [
+          "Sentry <hello@sentry.io>"
+        ];
+        dependencies = [
+          {
+            name = "backtrace";
+            packageId = "backtrace";
+          }
+          {
+            name = "lazy_static";
+            packageId = "lazy_static";
+          }
+          {
+            name = "regex";
+            packageId = "regex";
+          }
+          {
+            name = "sentry-core";
+            packageId = "sentry-core";
+          }
+        ];
+
+      };
+      "sentry-contexts" = rec {
+        crateName = "sentry-contexts";
+        version = "0.22.0";
+        edition = "2018";
+        sha256 = "1q5wx5nhvl7acqh9hgc6b51s2anbypsa3y9bgm1bfblvvq9b4414";
+        authors = [
+          "Sentry <hello@sentry.io>"
+        ];
+        dependencies = [
+          {
+            name = "hostname";
+            packageId = "hostname";
+          }
+          {
+            name = "lazy_static";
+            packageId = "lazy_static";
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+          }
+          {
+            name = "regex";
+            packageId = "regex";
+          }
+          {
+            name = "sentry-core";
+            packageId = "sentry-core";
+          }
+          {
+            name = "uname";
+            packageId = "uname";
+            target = { target, features }: (!(target."windows" or false));
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "rustc_version";
+            packageId = "rustc_version 0.3.3";
+          }
+        ];
+
+      };
+      "sentry-core" = rec {
+        crateName = "sentry-core";
+        version = "0.22.0";
+        edition = "2018";
+        sha256 = "0d0cdbzaqkg4h5qb5z02r70fvjzz42c74pg6804m9dac71g4ignb";
+        authors = [
+          "Sentry <hello@sentry.io>"
+        ];
+        dependencies = [
+          {
+            name = "lazy_static";
+            packageId = "lazy_static";
+          }
+          {
+            name = "rand";
+            packageId = "rand 0.8.4";
+            optional = true;
+          }
+          {
+            name = "sentry-types";
+            packageId = "sentry-types";
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+            features = [ "derive" ];
+          }
+          {
+            name = "serde_json";
+            packageId = "serde_json";
+          }
+        ];
+        features = {
+          "client" = [ "rand" ];
+          "debug-logs" = [ "log_" ];
+          "test" = [ "client" ];
+        };
+        resolvedDefaultFeatures = [ "client" "default" "rand" ];
+      };
+      "sentry-log" = rec {
+        crateName = "sentry-log";
+        version = "0.22.0";
+        edition = "2018";
+        sha256 = "0q79q8qgrzah2kcmds67bbzrlwiriyghzm5c8brfa2j1fbv46wb4";
+        authors = [
+          "Sentry <hello@sentry.io>"
+        ];
+        dependencies = [
+          {
+            name = "log";
+            packageId = "log";
+            features = [ "std" ];
+          }
+          {
+            name = "sentry-core";
+            packageId = "sentry-core";
+          }
+        ];
+
+      };
+      "sentry-panic" = rec {
+        crateName = "sentry-panic";
+        version = "0.22.0";
+        edition = "2018";
+        sha256 = "145xm6x9ivq151q97wb6lkhbhqywfi48pb5rws80p984zxf1kkw9";
+        authors = [
+          "Sentry <hello@sentry.io>"
+        ];
+        dependencies = [
+          {
+            name = "sentry-backtrace";
+            packageId = "sentry-backtrace";
+          }
+          {
+            name = "sentry-core";
+            packageId = "sentry-core";
+          }
+        ];
+
+      };
+      "sentry-types" = rec {
+        crateName = "sentry-types";
+        version = "0.22.0";
+        edition = "2018";
+        sha256 = "13296k3jc56459myfri53p880wbbcw29csknmhw4bd45zxy7fpmw";
+        authors = [
+          "Sentry <hello@sentry.io>"
+        ];
+        dependencies = [
+          {
+            name = "chrono";
+            packageId = "chrono";
+            usesDefaultFeatures = false;
+            features = [ "clock" "std" "serde" ];
+          }
+          {
+            name = "debugid";
+            packageId = "debugid";
+            features = [ "serde" ];
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+            features = [ "derive" ];
+          }
+          {
+            name = "serde_json";
+            packageId = "serde_json";
+          }
+          {
+            name = "thiserror";
+            packageId = "thiserror";
+          }
+          {
+            name = "url";
+            packageId = "url";
+            features = [ "serde" ];
+          }
+          {
+            name = "uuid";
+            packageId = "uuid";
+            features = [ "v4" "serde" ];
+          }
+        ];
+        features = {
+          "default" = [ "protocol" ];
+        };
+        resolvedDefaultFeatures = [ "default" "protocol" ];
+      };
+      "serde" = rec {
+        crateName = "serde";
+        version = "1.0.126";
+        edition = "2015";
+        sha256 = "00vdk7y3j8h2xv28a2i2ad1d19g5iwrdknbq8yp79v6axamhaxgc";
+        authors = [
+          "Erick Tryzelaar <erick.tryzelaar@gmail.com>"
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "serde_derive";
+            packageId = "serde_derive";
+            optional = true;
+          }
+        ];
+        devDependencies = [
+          {
+            name = "serde_derive";
+            packageId = "serde_derive";
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+          "derive" = [ "serde_derive" ];
+        };
+        resolvedDefaultFeatures = [ "default" "derive" "serde_derive" "std" ];
+      };
+      "serde_derive" = rec {
+        crateName = "serde_derive";
+        version = "1.0.126";
+        edition = "2015";
+        sha256 = "0hsdh39qj0g187nwndfzg67q4qajbm5g6x0fr5xarblmk2y7sfln";
+        procMacro = true;
+        authors = [
+          "Erick Tryzelaar <erick.tryzelaar@gmail.com>"
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+          }
+        ];
+        features = {
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "serde_json" = rec {
+        crateName = "serde_json";
+        version = "1.0.64";
+        edition = "2018";
+        sha256 = "0y9gk3yikncrc0zajmwc0pidr7zfwafawb4gidf6mqyskzf9g7kr";
+        authors = [
+          "Erick Tryzelaar <erick.tryzelaar@gmail.com>"
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "indexmap";
+            packageId = "indexmap";
+            optional = true;
+          }
+          {
+            name = "itoa";
+            packageId = "itoa";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "ryu";
+            packageId = "ryu";
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "alloc" = [ "serde/alloc" ];
+          "default" = [ "std" ];
+          "preserve_order" = [ "indexmap" ];
+          "std" = [ "serde/std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "indexmap" "preserve_order" "std" ];
+      };
+      "serde_url_params" = rec {
+        crateName = "serde_url_params";
+        version = "0.2.1";
+        edition = "2018";
+        sha256 = "0d7vdpvsyv2q9aj71r3bd25grh4v253ixl785zrqlws00ryk0hrc";
+        authors = [
+          "boxdot <d@zerovolt.org>"
+        ];
+        dependencies = [
+          {
+            name = "serde";
+            packageId = "serde";
+          }
+          {
+            name = "url";
+            packageId = "url";
+          }
+        ];
+        devDependencies = [
+          {
+            name = "serde";
+            packageId = "serde";
+            features = [ "derive" ];
+          }
+        ];
+
+      };
+      "serde_urlencoded" = rec {
+        crateName = "serde_urlencoded";
+        version = "0.7.0";
+        edition = "2018";
+        sha256 = "1s9wnjrak5a0igfhcghhz51kvi7n010j5rs9lmhd5hfrz2kmgypd";
+        authors = [
+          "Anthony Ramine <n.oxyde@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "form_urlencoded";
+            packageId = "form_urlencoded";
+          }
+          {
+            name = "itoa";
+            packageId = "itoa";
+          }
+          {
+            name = "ryu";
+            packageId = "ryu";
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+          }
+        ];
+
+      };
+      "serdeval" = rec {
+        crateName = "serdeval";
+        version = "0.1.0";
+        edition = "2018";
+        sha256 = "1l1bwsz58ldn9cqj1ax9qy071aza8jgw028zkayshj6msggkl0ll";
+        dependencies = [
+          {
+            name = "serde";
+            packageId = "serde";
+          }
+        ];
+
+      };
+      "sha-1 0.8.2" = rec {
+        crateName = "sha-1";
+        version = "0.8.2";
+        edition = "2015";
+        sha256 = "1pv387q0r7llk2cqzyq0nivzvkgqgzsiygqzlv7b68z9xl5lvngp";
+        libName = "sha1";
+        authors = [
+          "RustCrypto Developers"
+        ];
+        dependencies = [
+          {
+            name = "block-buffer";
+            packageId = "block-buffer 0.7.3";
+          }
+          {
+            name = "digest";
+            packageId = "digest 0.8.1";
+          }
+          {
+            name = "fake-simd";
+            packageId = "fake-simd";
+          }
+          {
+            name = "opaque-debug";
+            packageId = "opaque-debug 0.2.3";
+          }
+        ];
+        devDependencies = [
+          {
+            name = "digest";
+            packageId = "digest 0.8.1";
+            features = [ "dev" ];
+          }
+        ];
+        features = {
+          "asm" = [ "sha1-asm" ];
+          "asm-aarch64" = [ "asm" "libc" ];
+          "default" = [ "std" ];
+          "std" = [ "digest/std" ];
+        };
+      };
+      "sha-1 0.9.6" = rec {
+        crateName = "sha-1";
+        version = "0.9.6";
+        edition = "2018";
+        sha256 = "05jfwssqvpcy0sr1pcdhdn9awalwsazclimbgzpx0cjq3isglk4c";
+        libName = "sha1";
+        authors = [
+          "RustCrypto Developers"
+        ];
+        dependencies = [
+          {
+            name = "block-buffer";
+            packageId = "block-buffer 0.9.0";
+          }
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "cpufeatures";
+            packageId = "cpufeatures";
+            target = { target, features }: (stdenv.hostPlatform.config == "aarch64-apple-darwin");
+          }
+          {
+            name = "cpufeatures";
+            packageId = "cpufeatures";
+            target = { target, features }: ((target."arch" == "aarch64") && (target."os" == "linux"));
+          }
+          {
+            name = "cpufeatures";
+            packageId = "cpufeatures";
+            target = { target, features }: ((target."arch" == "x86") || (target."arch" == "x86_64"));
+          }
+          {
+            name = "digest";
+            packageId = "digest 0.9.0";
+          }
+          {
+            name = "opaque-debug";
+            packageId = "opaque-debug 0.3.0";
+          }
+        ];
+        devDependencies = [
+          {
+            name = "digest";
+            packageId = "digest 0.9.0";
+            features = [ "dev" ];
+          }
+        ];
+        features = {
+          "asm" = [ "sha1-asm" ];
+          "asm-aarch64" = [ "asm" ];
+          "default" = [ "std" ];
+          "std" = [ "digest/std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "sha1" = rec {
+        crateName = "sha1";
+        version = "0.6.0";
+        edition = "2015";
+        sha256 = "03gs2q4m67rn2p8xcdfxhip6mpgahdwm12bnb3vh90ahv9grhy95";
+        authors = [
+          "Armin Ronacher <armin.ronacher@active-4.com>"
+        ];
+        features = {
+        };
+      };
+      "sha2" = rec {
+        crateName = "sha2";
+        version = "0.9.5";
+        edition = "2018";
+        sha256 = "04lzf4swq6cijvxnc6facr3g72h5v7a5z8lz3xrkf8gxa9bswqmk";
+        authors = [
+          "RustCrypto Developers"
+        ];
+        dependencies = [
+          {
+            name = "block-buffer";
+            packageId = "block-buffer 0.9.0";
+          }
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "cpufeatures";
+            packageId = "cpufeatures";
+            target = { target, features }: (stdenv.hostPlatform.config == "aarch64-apple-darwin");
+          }
+          {
+            name = "cpufeatures";
+            packageId = "cpufeatures";
+            target = { target, features }: ((target."arch" == "aarch64") && (target."os" == "linux"));
+          }
+          {
+            name = "cpufeatures";
+            packageId = "cpufeatures";
+            target = { target, features }: ((target."arch" == "x86") || (target."arch" == "x86_64"));
+          }
+          {
+            name = "digest";
+            packageId = "digest 0.9.0";
+          }
+          {
+            name = "opaque-debug";
+            packageId = "opaque-debug 0.3.0";
+          }
+        ];
+        devDependencies = [
+          {
+            name = "digest";
+            packageId = "digest 0.9.0";
+            features = [ "dev" ];
+          }
+        ];
+        features = {
+          "asm" = [ "sha2-asm" ];
+          "asm-aarch64" = [ "asm" ];
+          "default" = [ "std" ];
+          "std" = [ "digest/std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "signal-hook-registry" = rec {
+        crateName = "signal-hook-registry";
+        version = "1.4.0";
+        edition = "2015";
+        sha256 = "1c2mhijg54y6c1zi4630yki1vpq3z96ljfnsrdy0rb64ilr767p5";
+        authors = [
+          "Michal 'vorner' Vaner <vorner@vorner.cz>"
+          "Masaki Hara <ackie.h.gmai@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+          }
+        ];
+
+      };
+      "siphasher" = rec {
+        crateName = "siphasher";
+        version = "0.3.5";
+        edition = "2018";
+        sha256 = "09zzzdshn4rj1qkhsb9hz9qwp42jx5b6whwi42ba7r670x2nvknb";
+        authors = [
+          "Frank Denis <github@pureftpd.org>"
+        ];
+        features = {
+          "default" = [ "std" ];
+          "serde_no_std" = [ "serde/alloc" ];
+          "serde_std" = [ "std" "serde/std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "slab" = rec {
+        crateName = "slab";
+        version = "0.4.3";
+        edition = "2015";
+        sha256 = "09v57dmy9gnfcj3c6gywp7wi09zywxf0ppj07w02hfvy38ysqwzi";
+        authors = [
+          "Carl Lerche <me@carllerche.com>"
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "slice-group-by" = rec {
+        crateName = "slice-group-by";
+        version = "0.2.6";
+        edition = "2018";
+        sha256 = "1yx765cnd8xz0f2ar7lmkn3bq5s6fisdjbmn18v2ilj6nvq78x0z";
+        authors = [
+          "Kerollmops <renault.cle@gmail.com>"
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "smallstr" = rec {
+        crateName = "smallstr";
+        version = "0.2.0";
+        edition = "2018";
+        sha256 = "0kxfwlpjg6l33glnckl1cnf2250sfa173q67zwlqfrv8s6a2g4hy";
+        authors = [
+          "Murarth <murarth@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "serde";
+            packageId = "serde";
+            optional = true;
+          }
+          {
+            name = "smallvec";
+            packageId = "smallvec";
+          }
+        ];
+        features = {
+          "union" = [ "smallvec/union" ];
+        };
+        resolvedDefaultFeatures = [ "serde" ];
+      };
+      "smallvec" = rec {
+        crateName = "smallvec";
+        version = "1.6.1";
+        edition = "2018";
+        sha256 = "0kk08axr0ybfbjzk65a41k84mb6sfhyajmfndaka9igkx34kf3zy";
+        authors = [
+          "The Servo Project Developers"
+        ];
+        features = {
+        };
+      };
+      "snap" = rec {
+        crateName = "snap";
+        version = "1.0.5";
+        edition = "2018";
+        sha256 = "0l8llidvm7dlwfw2ql6hk4b4byl9677fppwgl7i2wglqs6a60ia5";
+        authors = [
+          "Andrew Gallant <jamslam@gmail.com>"
+        ];
+
+      };
+      "socket2" = rec {
+        crateName = "socket2";
+        version = "0.4.0";
+        edition = "2018";
+        sha256 = "18ny6m1gnf6cwp5ax0b5hr36w6yg16z7faj76b31aq2jghhgqgcy";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+          "Thomas de Zeeuw <thomasdezeeuw@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+            target = { target, features }: (target."unix" or false);
+          }
+          {
+            name = "winapi";
+            packageId = "winapi";
+            target = { target, features }: (target."windows" or false);
+            features = [ "handleapi" "ws2ipdef" "ws2tcpip" ];
+          }
+        ];
+        features = {
+        };
+      };
+      "spin" = rec {
+        crateName = "spin";
+        version = "0.5.2";
+        edition = "2015";
+        sha256 = "0b84m6dbzrwf2kxylnw82d3dr8w06av7rfkr8s85fb5f43rwyqvf";
+        authors = [
+          "Mathijs van de Nes <git@mathijs.vd-nes.nl>"
+          "John Ericson <git@JohnEricson.me>"
+        ];
+
+      };
+      "standback" = rec {
+        crateName = "standback";
+        version = "0.2.17";
+        edition = "2018";
+        sha256 = "1zr8zy3kzryaggz3k0j4135m3zbd31pyqmja8cyj8yp07mpzn4z1";
+        authors = [
+          "Jacob Pratt <open-source@jhpratt.dev>"
+          "The Rust Project Developers"
+        ];
+        buildDependencies = [
+          {
+            name = "version_check";
+            packageId = "version_check";
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "std" ];
+      };
+      "stdweb" = rec {
+        crateName = "stdweb";
+        version = "0.4.20";
+        edition = "2015";
+        sha256 = "1md14n9rzxzdskz3hpgln8vxfwqsw2cswc0f5nslh4r82rmlj8nh";
+        authors = [
+          "Jan Bujak <j@exia.io>"
+        ];
+        dependencies = [
+          {
+            name = "discard";
+            packageId = "discard";
+          }
+          {
+            name = "stdweb-derive";
+            packageId = "stdweb-derive";
+          }
+          {
+            name = "stdweb-internal-macros";
+            packageId = "stdweb-internal-macros";
+          }
+          {
+            name = "stdweb-internal-runtime";
+            packageId = "stdweb-internal-runtime";
+          }
+          {
+            name = "wasm-bindgen";
+            packageId = "wasm-bindgen";
+            target = { target, features }: ((target."arch" == "wasm32") && (target."vendor" == "unknown") && (target."os" == "unknown") && (!(target."cargo_web" or false)));
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "rustc_version";
+            packageId = "rustc_version 0.2.3";
+          }
+        ];
+        features = {
+          "default" = [ "serde" "serde_json" ];
+          "experimental_features_which_may_break_on_minor_version_bumps" = [ "futures-support" ];
+          "futures-support" = [ "futures-core-preview" "futures-channel-preview" "futures-util-preview" "futures-executor-preview" ];
+        };
+      };
+      "stdweb-derive" = rec {
+        crateName = "stdweb-derive";
+        version = "0.5.3";
+        edition = "2015";
+        sha256 = "1vsh7g0gaxn4kxqq3knhymdn02p2pfxmnd2j0vplpj6c1yj60yn8";
+        procMacro = true;
+        authors = [
+          "Jan Bujak <j@exia.io>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+          }
+          {
+            name = "serde_derive";
+            packageId = "serde_derive";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+            usesDefaultFeatures = false;
+            features = [ "derive" "parsing" "printing" ];
+          }
+        ];
+
+      };
+      "stdweb-internal-macros" = rec {
+        crateName = "stdweb-internal-macros";
+        version = "0.2.9";
+        edition = "2015";
+        sha256 = "049fq8fl5ny9l5if2qv7kxwng7g6ns95h4fbm3zx360dmpv5zyjq";
+        procMacro = true;
+        authors = [
+          "Jan Bujak <j@exia.io>"
+        ];
+        dependencies = [
+          {
+            name = "base-x";
+            packageId = "base-x";
+          }
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+          }
+          {
+            name = "serde_derive";
+            packageId = "serde_derive";
+          }
+          {
+            name = "serde_json";
+            packageId = "serde_json";
+          }
+          {
+            name = "sha1";
+            packageId = "sha1";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+            usesDefaultFeatures = false;
+            features = [ "full" "parsing" "printing" "clone-impls" ];
+          }
+        ];
+
+      };
+      "stdweb-internal-runtime" = rec {
+        crateName = "stdweb-internal-runtime";
+        version = "0.1.5";
+        edition = "2015";
+        sha256 = "1h0nkppb4r8dbrbms2hw9n5xdcs392m0r5hj3b6lsx3h6fx02dr1";
+        authors = [
+          "Jan Bujak <j@exia.io>"
+        ];
+        features = {
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "strsim" = rec {
+        crateName = "strsim";
+        version = "0.8.0";
+        edition = "2015";
+        sha256 = "0sjsm7hrvjdifz661pjxq5w4hf190hx53fra8dfvamacvff139cf";
+        authors = [
+          "Danny Guo <dannyguo91@gmail.com>"
+        ];
+
+      };
+      "structopt" = rec {
+        crateName = "structopt";
+        version = "0.3.21";
+        edition = "2018";
+        sha256 = "136j0lvjmpv5syi751vxg8vb30gfyv4k81x8d18kxrj6xvbsqxsj";
+        authors = [
+          "Guillaume Pinot <texitoi@texitoi.eu>"
+          "others"
+        ];
+        dependencies = [
+          {
+            name = "clap";
+            packageId = "clap";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "lazy_static";
+            packageId = "lazy_static";
+          }
+          {
+            name = "structopt-derive";
+            packageId = "structopt-derive";
+          }
+        ];
+        features = {
+          "color" = [ "clap/color" ];
+          "debug" = [ "clap/debug" ];
+          "default" = [ "clap/default" ];
+          "doc" = [ "clap/doc" ];
+          "lints" = [ "clap/lints" ];
+          "no_cargo" = [ "clap/no_cargo" ];
+          "paw" = [ "structopt-derive/paw" "paw_dep" ];
+          "suggestions" = [ "clap/suggestions" ];
+          "wrap_help" = [ "clap/wrap_help" ];
+          "yaml" = [ "clap/yaml" ];
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "structopt-derive" = rec {
+        crateName = "structopt-derive";
+        version = "0.4.14";
+        edition = "2018";
+        sha256 = "143gjwvz3s86hwp070km83y25n8kqp5f01kb1dr19f4ilkywvaav";
+        procMacro = true;
+        authors = [
+          "Guillaume Pinot <texitoi@texitoi.eu>"
+        ];
+        dependencies = [
+          {
+            name = "heck";
+            packageId = "heck";
+          }
+          {
+            name = "proc-macro-error";
+            packageId = "proc-macro-error";
+          }
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+            features = [ "full" ];
+          }
+        ];
+        features = {
+        };
+      };
+      "syn 0.15.44" = rec {
+        crateName = "syn";
+        version = "0.15.44";
+        edition = "2015";
+        sha256 = "1id5g6x6zihv3j7hwrw3m1jp636bg8dpi671r7zy3jvpkavb794w";
+        authors = [
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 0.4.30";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "quote";
+            packageId = "quote 0.6.13";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "unicode-xid";
+            packageId = "unicode-xid 0.1.0";
+          }
+        ];
+        features = {
+          "default" = [ "derive" "parsing" "printing" "clone-impls" "proc-macro" ];
+          "printing" = [ "quote" ];
+          "proc-macro" = [ "proc-macro2/proc-macro" "quote/proc-macro" ];
+        };
+        resolvedDefaultFeatures = [ "clone-impls" "default" "derive" "full" "parsing" "printing" "proc-macro" "quote" ];
+      };
+      "syn 1.0.73" = rec {
+        crateName = "syn";
+        version = "1.0.73";
+        edition = "2018";
+        sha256 = "1ixw4lscc7009ibaic8g5bvnc94hdcr62ksjk3jjl38363zqj57p";
+        authors = [
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "unicode-xid";
+            packageId = "unicode-xid 0.2.2";
+          }
+        ];
+        features = {
+          "default" = [ "derive" "parsing" "printing" "clone-impls" "proc-macro" ];
+          "printing" = [ "quote" ];
+          "proc-macro" = [ "proc-macro2/proc-macro" "quote/proc-macro" ];
+          "test" = [ "syn-test-suite/all-features" ];
+        };
+        resolvedDefaultFeatures = [ "clone-impls" "default" "derive" "extra-traits" "full" "parsing" "printing" "proc-macro" "quote" "visit" "visit-mut" ];
+      };
+      "synchronoise" = rec {
+        crateName = "synchronoise";
+        version = "1.0.0";
+        edition = "2015";
+        sha256 = "1szasv8xl6z3gxfq8h8wllw2mq53d71nn29achxsnfcxzh7fs5yp";
+        authors = [
+          "QuietMisdreavus <grey@quietmisdreavus.net>"
+        ];
+        dependencies = [
+          {
+            name = "crossbeam-queue";
+            packageId = "crossbeam-queue";
+          }
+        ];
+
+      };
+      "synstructure" = rec {
+        crateName = "synstructure";
+        version = "0.12.4";
+        edition = "2018";
+        sha256 = "00c72ij813xsilssgya6m6f73d0s5zzsld1y26bvhk3kdzbg4d5q";
+        authors = [
+          "Nika Layzell <nika@thelayzells.com>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+            usesDefaultFeatures = false;
+            features = [ "derive" "parsing" "printing" "clone-impls" "visit" "extra-traits" ];
+          }
+          {
+            name = "unicode-xid";
+            packageId = "unicode-xid 0.2.2";
+          }
+        ];
+        features = {
+          "default" = [ "proc-macro" ];
+          "proc-macro" = [ "proc-macro2/proc-macro" "syn/proc-macro" "quote/proc-macro" ];
+        };
+        resolvedDefaultFeatures = [ "default" "proc-macro" ];
+      };
+      "tar" = rec {
+        crateName = "tar";
+        version = "0.4.35";
+        edition = "2018";
+        sha256 = "100v082cda6g8a237vrnpf075pqr7z46wrhgawa960pzmv39sxvx";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "filetime";
+            packageId = "filetime";
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+            target = { target, features }: (target."unix" or false);
+          }
+          {
+            name = "xattr";
+            packageId = "xattr";
+            optional = true;
+            target = { target, features }: (target."unix" or false);
+          }
+        ];
+        features = {
+          "default" = [ "xattr" ];
+        };
+        resolvedDefaultFeatures = [ "default" "xattr" ];
+      };
+      "tempdir" = rec {
+        crateName = "tempdir";
+        version = "0.3.7";
+        edition = "2015";
+        sha256 = "1n5n86zxpgd85y0mswrp5cfdisizq2rv3la906g6ipyc03xvbwhm";
+        authors = [
+          "The Rust Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "rand";
+            packageId = "rand 0.4.6";
+          }
+          {
+            name = "remove_dir_all";
+            packageId = "remove_dir_all";
+          }
+        ];
+
+      };
+      "tempfile" = rec {
+        crateName = "tempfile";
+        version = "3.2.0";
+        edition = "2018";
+        sha256 = "08pbf3c1i42382dc44dil5bgiawcsi0qk6zdibw10f69rxiwdhfs";
+        authors = [
+          "Steven Allen <steven@stebalien.com>"
+          "The Rust Project Developers"
+          "Ashley Mannix <ashleymannix@live.com.au>"
+          "Jason White <jasonaw0@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+            target = { target, features }: (target."unix" or false);
+          }
+          {
+            name = "rand";
+            packageId = "rand 0.8.4";
+          }
+          {
+            name = "redox_syscall";
+            packageId = "redox_syscall";
+            target = { target, features }: (target."os" == "redox");
+          }
+          {
+            name = "remove_dir_all";
+            packageId = "remove_dir_all";
+          }
+          {
+            name = "winapi";
+            packageId = "winapi";
+            target = { target, features }: (target."windows" or false);
+            features = [ "fileapi" "handleapi" "winbase" ];
+          }
+        ];
+
+      };
+      "termcolor" = rec {
+        crateName = "termcolor";
+        version = "1.1.2";
+        edition = "2018";
+        sha256 = "1x65i1ny4m6z1by62ra6wdcrd557p2ysm866x0pg60zby2cxizid";
+        authors = [
+          "Andrew Gallant <jamslam@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "winapi-util";
+            packageId = "winapi-util";
+            target = { target, features }: (target."windows" or false);
+          }
+        ];
+
+      };
+      "textwrap" = rec {
+        crateName = "textwrap";
+        version = "0.11.0";
+        edition = "2015";
+        sha256 = "0q5hky03ik3y50s9sz25r438bc4nwhqc6dqwynv4wylc807n29nk";
+        authors = [
+          "Martin Geisler <martin@geisler.net>"
+        ];
+        dependencies = [
+          {
+            name = "unicode-width";
+            packageId = "unicode-width";
+          }
+        ];
+
+      };
+      "thiserror" = rec {
+        crateName = "thiserror";
+        version = "1.0.25";
+        edition = "2018";
+        sha256 = "1ip9j8riar3xffp261yls4phpasz768xhnafxdz4qlargx2pcvzs";
+        authors = [
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "thiserror-impl";
+            packageId = "thiserror-impl";
+          }
+        ];
+
+      };
+      "thiserror-impl" = rec {
+        crateName = "thiserror-impl";
+        version = "1.0.25";
+        edition = "2018";
+        sha256 = "139i3bxidyncjd1sphkn4c577nkba8lzmphhr9gb26xz1y67cdla";
+        procMacro = true;
+        authors = [
+          "David Tolnay <dtolnay@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+          }
+        ];
+
+      };
+      "time 0.1.44" = rec {
+        crateName = "time";
+        version = "0.1.44";
+        edition = "2015";
+        sha256 = "0m9jwy2pcmk232r3b9r80fs12mkckfjffjha4qfaxcdq9a8ydfbd";
+        authors = [
+          "The Rust Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+          }
+          {
+            name = "wasi";
+            packageId = "wasi 0.10.0+wasi-snapshot-preview1";
+            target = { target, features }: (target."os" == "wasi");
+          }
+          {
+            name = "winapi";
+            packageId = "winapi";
+            target = { target, features }: (target."windows" or false);
+            features = [ "std" "minwinbase" "minwindef" "ntdef" "profileapi" "sysinfoapi" "timezoneapi" ];
+          }
+        ];
+        devDependencies = [
+          {
+            name = "winapi";
+            packageId = "winapi";
+            features = [ "std" "processthreadsapi" "winbase" ];
+          }
+        ];
+
+      };
+      "time 0.2.27" = rec {
+        crateName = "time";
+        version = "0.2.27";
+        edition = "2018";
+        sha256 = "0hm209d078jfgxzjhi5xqim64q31rlj1h70zz57qbmpbirzsjlj7";
+        authors = [
+          "Jacob Pratt <the.z.cuber@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "const_fn";
+            packageId = "const_fn";
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+            optional = true;
+            target = { target, features }: (target."unix" or false);
+          }
+          {
+            name = "standback";
+            packageId = "standback";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "stdweb";
+            packageId = "stdweb";
+            optional = true;
+            usesDefaultFeatures = false;
+            target = { target, features }: (target."arch" == "wasm32");
+          }
+          {
+            name = "time-macros";
+            packageId = "time-macros";
+          }
+          {
+            name = "winapi";
+            packageId = "winapi";
+            optional = true;
+            target = { target, features }: (target."windows" or false);
+            features = [ "minwinbase" "minwindef" "timezoneapi" ];
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "version_check";
+            packageId = "version_check";
+          }
+        ];
+        devDependencies = [
+          {
+            name = "standback";
+            packageId = "standback";
+          }
+        ];
+        features = {
+          "default" = [ "deprecated" "std" ];
+          "std" = [ "libc" "winapi" "stdweb" "standback/std" ];
+        };
+        resolvedDefaultFeatures = [ "libc" "std" "stdweb" "winapi" ];
+      };
+      "time-macros" = rec {
+        crateName = "time-macros";
+        version = "0.1.1";
+        edition = "2018";
+        sha256 = "1wg24yxpxcfmim6dgblrf8p321m7cyxpdivzvp8bcb7i4rp9qzlm";
+        authors = [
+          "Jacob Pratt <the.z.cuber@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro-hack";
+            packageId = "proc-macro-hack";
+          }
+          {
+            name = "time-macros-impl";
+            packageId = "time-macros-impl";
+          }
+        ];
+
+      };
+      "time-macros-impl" = rec {
+        crateName = "time-macros-impl";
+        version = "0.1.2";
+        edition = "2018";
+        sha256 = "0bs8xc3qbndk4nw6vwnmh5bwail6vwji4hd1aqzly6a33cd18g7x";
+        procMacro = true;
+        authors = [
+          "Jacob Pratt <the.z.cuber@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro-hack";
+            packageId = "proc-macro-hack";
+          }
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "standback";
+            packageId = "standback";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+            usesDefaultFeatures = false;
+            features = [ "proc-macro" "parsing" "printing" ];
+          }
+        ];
+
+      };
+      "tinytemplate" = rec {
+        crateName = "tinytemplate";
+        version = "1.1.0";
+        edition = "2015";
+        sha256 = "0by1k1hdz6jgv4ykd0izirwsm6p3qb6s9g1jb4ffqg500ihcfgbd";
+        authors = [
+          "Brook Heisler <brookheisler@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "serde";
+            packageId = "serde";
+          }
+          {
+            name = "serde_json";
+            packageId = "serde_json";
+          }
+        ];
+
+      };
+      "tinyvec" = rec {
+        crateName = "tinyvec";
+        version = "1.2.0";
+        edition = "2018";
+        sha256 = "0hn3fkpb9nca9nf9znz2dxlp4ccv37hnbh67aczpzpmpbgq20ljv";
+        authors = [
+          "Lokathor <zefria@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "tinyvec_macros";
+            packageId = "tinyvec_macros";
+            optional = true;
+          }
+        ];
+        features = {
+          "alloc" = [ "tinyvec_macros" ];
+        };
+        resolvedDefaultFeatures = [ "alloc" "default" "tinyvec_macros" ];
+      };
+      "tinyvec_macros" = rec {
+        crateName = "tinyvec_macros";
+        version = "0.1.0";
+        edition = "2018";
+        sha256 = "0p5zvgbas5nh403fbxica819mf3g83n8g2hzpfazfr56w6klv9yd";
+        authors = [
+          "Soveu <marx.tomasz@gmail.com>"
+        ];
+
+      };
+      "tokio" = rec {
+        crateName = "tokio";
+        version = "1.7.1";
+        edition = "2018";
+        sha256 = "18jw744lajnn82xbharaq522llw6py1zwm6wlpvikfwk881fvcjz";
+        authors = [
+          "Tokio Contributors <team@tokio.rs>"
+        ];
+        dependencies = [
+          {
+            name = "bytes";
+            packageId = "bytes 1.0.1";
+            optional = true;
+          }
+          {
+            name = "libc";
+            packageId = "libc";
+            optional = true;
+            target = { target, features }: (target."unix" or false);
+          }
+          {
+            name = "memchr";
+            packageId = "memchr";
+            optional = true;
+          }
+          {
+            name = "mio";
+            packageId = "mio";
+            optional = true;
+          }
+          {
+            name = "num_cpus";
+            packageId = "num_cpus";
+            optional = true;
+          }
+          {
+            name = "once_cell";
+            packageId = "once_cell";
+            optional = true;
+          }
+          {
+            name = "parking_lot";
+            packageId = "parking_lot";
+            optional = true;
+          }
+          {
+            name = "pin-project-lite";
+            packageId = "pin-project-lite";
+          }
+          {
+            name = "signal-hook-registry";
+            packageId = "signal-hook-registry";
+            optional = true;
+            target = { target, features }: (target."unix" or false);
+          }
+          {
+            name = "tokio-macros";
+            packageId = "tokio-macros";
+            optional = true;
+          }
+          {
+            name = "winapi";
+            packageId = "winapi";
+            optional = true;
+            usesDefaultFeatures = false;
+            target = { target, features }: (target."windows" or false);
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "autocfg";
+            packageId = "autocfg";
+          }
+        ];
+        devDependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+            target = {target, features}: (target."unix" or false);
+          }
+        ];
+        features = {
+          "full" = [ "fs" "io-util" "io-std" "macros" "net" "parking_lot" "process" "rt" "rt-multi-thread" "signal" "sync" "time" ];
+          "io-util" = [ "memchr" "bytes" ];
+          "macros" = [ "tokio-macros" ];
+          "net" = [ "libc" "mio/os-poll" "mio/os-util" "mio/tcp" "mio/udp" "mio/uds" "winapi/namedpipeapi" ];
+          "process" = [ "bytes" "once_cell" "libc" "mio/os-poll" "mio/os-util" "mio/uds" "signal-hook-registry" "winapi/threadpoollegacyapiset" ];
+          "rt-multi-thread" = [ "num_cpus" "rt" ];
+          "signal" = [ "once_cell" "libc" "mio/os-poll" "mio/uds" "mio/os-util" "signal-hook-registry" "winapi/consoleapi" ];
+        };
+        resolvedDefaultFeatures = [ "bytes" "default" "fs" "full" "io-std" "io-util" "libc" "macros" "memchr" "mio" "net" "num_cpus" "once_cell" "parking_lot" "process" "rt" "rt-multi-thread" "signal" "signal-hook-registry" "sync" "time" "tokio-macros" "winapi" ];
+      };
+      "tokio-macros" = rec {
+        crateName = "tokio-macros";
+        version = "1.2.0";
+        edition = "2018";
+        sha256 = "0drws4ji260pmbv5afb72mb1ql6qamkm0wk40j3gpnj173s3v7n4";
+        procMacro = true;
+        authors = [
+          "Tokio Contributors <team@tokio.rs>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+            features = [ "full" ];
+          }
+        ];
+
+      };
+      "tokio-rustls" = rec {
+        crateName = "tokio-rustls";
+        version = "0.22.0";
+        edition = "2018";
+        sha256 = "1dp1s2kai081f3fn9gjq92x2lw7lm7iqpcsl02cg2zg5fbg48s5w";
+        authors = [
+          "quininer kel <quininer@live.com>"
+        ];
+        dependencies = [
+          {
+            name = "rustls";
+            packageId = "rustls";
+          }
+          {
+            name = "tokio";
+            packageId = "tokio";
+          }
+          {
+            name = "webpki";
+            packageId = "webpki";
+          }
+        ];
+        devDependencies = [
+          {
+            name = "tokio";
+            packageId = "tokio";
+            features = [ "full" ];
+          }
+        ];
+        features = {
+          "dangerous_configuration" = [ "rustls/dangerous_configuration" ];
+        };
+      };
+      "tokio-util" = rec {
+        crateName = "tokio-util";
+        version = "0.6.7";
+        edition = "2018";
+        sha256 = "14imdf24bng2ynsxa9hvmcx65h4xm75zib5mavdlk84lil60pahw";
+        authors = [
+          "Tokio Contributors <team@tokio.rs>"
+        ];
+        dependencies = [
+          {
+            name = "bytes";
+            packageId = "bytes 1.0.1";
+          }
+          {
+            name = "futures-core";
+            packageId = "futures-core";
+          }
+          {
+            name = "futures-sink";
+            packageId = "futures-sink";
+          }
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "pin-project-lite";
+            packageId = "pin-project-lite";
+          }
+          {
+            name = "tokio";
+            packageId = "tokio";
+            features = [ "sync" ];
+          }
+        ];
+        devDependencies = [
+          {
+            name = "tokio";
+            packageId = "tokio";
+            features = [ "full" ];
+          }
+        ];
+        features = {
+          "__docs_rs" = [ "futures-util" ];
+          "compat" = [ "futures-io" ];
+          "full" = [ "codec" "compat" "io" "time" "net" "rt" ];
+          "net" = [ "tokio/net" ];
+          "rt" = [ "tokio/rt" ];
+          "time" = [ "tokio/time" "slab" ];
+        };
+        resolvedDefaultFeatures = [ "codec" "default" "io" ];
+      };
+      "toml" = rec {
+        crateName = "toml";
+        version = "0.5.8";
+        edition = "2018";
+        sha256 = "1apcmjrrjw429pjw7mqlmdwwd67g8305vwqy4kw3swr612bl44d3";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+        ];
+        dependencies = [
+          {
+            name = "serde";
+            packageId = "serde";
+          }
+        ];
+        features = {
+          "preserve_order" = [ "indexmap" ];
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "tower-service" = rec {
+        crateName = "tower-service";
+        version = "0.3.1";
+        edition = "2018";
+        sha256 = "1iih764s3f6vlkspfmr72fkrs2lw1v3wiqmc6bd5zq1hdlfzs39n";
+        authors = [
+          "Tower Maintainers <team@tower-rs.com>"
+        ];
+
+      };
+      "tracing" = rec {
+        crateName = "tracing";
+        version = "0.1.26";
+        edition = "2018";
+        sha256 = "17dqjhixmnbrk0c99ydb3b9pygjnzfb7yhlasb6134s4jy6fpb89";
+        authors = [
+          "Eliza Weisman <eliza@buoyant.io>"
+          "Tokio Contributors <team@tokio.rs>"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "pin-project-lite";
+            packageId = "pin-project-lite";
+          }
+          {
+            name = "tracing-core";
+            packageId = "tracing-core";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "attributes" = [ "tracing-attributes" ];
+          "default" = [ "std" "attributes" ];
+          "log-always" = [ "log" ];
+          "std" = [ "tracing-core/std" ];
+        };
+        resolvedDefaultFeatures = [ "std" ];
+      };
+      "tracing-core" = rec {
+        crateName = "tracing-core";
+        version = "0.1.18";
+        edition = "2018";
+        sha256 = "0lm0li6lx75jgbbgxsb45439257sqb0j7828caf2hjqsigwi9zx9";
+        authors = [
+          "Tokio Contributors <team@tokio.rs>"
+        ];
+        dependencies = [
+          {
+            name = "lazy_static";
+            packageId = "lazy_static";
+            optional = true;
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+          "std" = [ "lazy_static" ];
+        };
+        resolvedDefaultFeatures = [ "lazy_static" "std" ];
+      };
+      "treeline" = rec {
+        crateName = "treeline";
+        version = "0.1.0";
+        edition = "2015";
+        sha256 = "0hcdgyk5xzcx2ylm0fr9czzs9cjznm7l9q5qz51qi97i82r43xx7";
+        authors = [
+          "softprops <d.tangren@gmail.com>"
+        ];
+
+      };
+      "try-lock" = rec {
+        crateName = "try-lock";
+        version = "0.2.3";
+        edition = "2015";
+        sha256 = "0hkn1ksmg5hdqgqdw1ahy5qk69f4crh2psf0v61qphyrf777nm2r";
+        authors = [
+          "Sean McArthur <sean@seanmonstar.com>"
+        ];
+
+      };
+      "typenum" = rec {
+        crateName = "typenum";
+        version = "1.13.0";
+        edition = "2018";
+        sha256 = "01lbbspn4080yg8wp6y7q3xcqih1c1dmkkx4pwax4z1a9436k7w7";
+        build = "build/main.rs";
+        authors = [
+          "Paho Lurie-Gregg <paho@paholg.com>"
+          "Andre Bogus <bogusandre@gmail.com>"
+        ];
+        features = {
+        };
+      };
+      "ucd-trie" = rec {
+        crateName = "ucd-trie";
+        version = "0.1.3";
+        edition = "2018";
+        sha256 = "072cblf8v3wzyaz3lhbpzgil4s03dpzg1ppy3gqx2l4v622y3pjn";
+        authors = [
+          "Andrew Gallant <jamslam@gmail.com>"
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "uname" = rec {
+        crateName = "uname";
+        version = "0.1.1";
+        edition = "2015";
+        sha256 = "1j1xd1rryml4j1hf07kahva9d5ym8m9jz9z20hfdpr1jrbq8jbxp";
+        authors = [
+          "Ignacio Corderi <icorderi@msn.com>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+          }
+        ];
+
+      };
+      "unicase" = rec {
+        crateName = "unicase";
+        version = "2.6.0";
+        edition = "2015";
+        sha256 = "1xmlbink4ycgxrkjspp0mf7pghcx4m7vxq7fpfm04ikr2zk7pwsh";
+        authors = [
+          "Sean McArthur <sean@seanmonstar.com>"
+        ];
+        buildDependencies = [
+          {
+            name = "version_check";
+            packageId = "version_check";
+          }
+        ];
+        features = {
+        };
+      };
+      "unicode-bidi" = rec {
+        crateName = "unicode-bidi";
+        version = "0.3.5";
+        edition = "2018";
+        sha256 = "1q07h5kp9jszwf0bkrpa1v5wmv04dv920x3w2xy6pjdikchbxf7f";
+        libName = "unicode_bidi";
+        authors = [
+          "The Servo Project Developers"
+        ];
+        dependencies = [
+          {
+            name = "matches";
+            packageId = "matches";
+          }
+        ];
+        features = {
+          "flame_it" = [ "flame" "flamer" ];
+          "with_serde" = [ "serde" ];
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "unicode-normalization" = rec {
+        crateName = "unicode-normalization";
+        version = "0.1.19";
+        edition = "2018";
+        sha256 = "1yabhmg8zlcksda3ajly9hpbzqgbhknxwch8dwkfkaa1569r0ifm";
+        authors = [
+          "kwantam <kwantam@gmail.com>"
+          "Manish Goregaokar <manishsmail@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "tinyvec";
+            packageId = "tinyvec";
+            features = [ "alloc" ];
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "unicode-segmentation" = rec {
+        crateName = "unicode-segmentation";
+        version = "1.7.1";
+        edition = "2015";
+        sha256 = "15n736z0pbj30pj44jb9s9rjavzrmx8v8pzdgsl5yfmfwrxjw3dv";
+        authors = [
+          "kwantam <kwantam@gmail.com>"
+          "Manish Goregaokar <manishsmail@gmail.com>"
+        ];
+        features = {
+        };
+      };
+      "unicode-width" = rec {
+        crateName = "unicode-width";
+        version = "0.1.8";
+        edition = "2015";
+        sha256 = "1qxizyi6xbcqyi4z79p523ywvmgsfcgfqb3zv3c8i6x1jcc5jdwk";
+        authors = [
+          "kwantam <kwantam@gmail.com>"
+          "Manish Goregaokar <manishsmail@gmail.com>"
+        ];
+        features = {
+          "rustc-dep-of-std" = [ "std" "core" "compiler_builtins" ];
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "unicode-xid 0.1.0" = rec {
+        crateName = "unicode-xid";
+        version = "0.1.0";
+        edition = "2015";
+        sha256 = "1z57lqh4s18rr4x0j4fw4fmp9hf9346h0kmdgqsqx0fhjr3k0wpw";
+        authors = [
+          "erick.tryzelaar <erick.tryzelaar@gmail.com>"
+          "kwantam <kwantam@gmail.com>"
+        ];
+        features = {
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "unicode-xid 0.2.2" = rec {
+        crateName = "unicode-xid";
+        version = "0.2.2";
+        edition = "2015";
+        sha256 = "1wrkgcw557v311dkdb6n2hrix9dm2qdsb1zpw7pn79l03zb85jwc";
+        authors = [
+          "erick.tryzelaar <erick.tryzelaar@gmail.com>"
+          "kwantam <kwantam@gmail.com>"
+          "Manish Goregaokar <manishsmail@gmail.com>"
+        ];
+        features = {
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "untrusted" = rec {
+        crateName = "untrusted";
+        version = "0.7.1";
+        edition = "2018";
+        sha256 = "0jkbqaj9d3v5a91pp3wp9mffvng1nhycx6sh4qkdd9qyr62ccmm1";
+        libPath = "src/untrusted.rs";
+        authors = [
+          "Brian Smith <brian@briansmith.org>"
+        ];
+
+      };
+      "url" = rec {
+        crateName = "url";
+        version = "2.2.2";
+        edition = "2018";
+        sha256 = "132pzpvfvpw33gjlzqd55n5iag9qddzffq8qbp1myfykna1w61x5";
+        authors = [
+          "The rust-url developers"
+        ];
+        dependencies = [
+          {
+            name = "form_urlencoded";
+            packageId = "form_urlencoded";
+          }
+          {
+            name = "idna";
+            packageId = "idna";
+          }
+          {
+            name = "matches";
+            packageId = "matches";
+          }
+          {
+            name = "percent-encoding";
+            packageId = "percent-encoding";
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+            optional = true;
+            features = [ "derive" ];
+          }
+        ];
+
+        resolvedDefaultFeatures = [ "serde" ];
+      };
+      "urlencoding" = rec {
+        crateName = "urlencoding";
+        version = "1.3.3";
+        edition = "2018";
+        sha256 = "1yqgq2qigm1s8zyv23j0422j4vn20ppnnizx9b7p629sw1sh27ss";
+        authors = [
+          "Kornel <kornel@geekhood.net>"
+          "Bertram Truong <b@bertramtruong.com>"
+        ];
+
+      };
+      "utf8-width" = rec {
+        crateName = "utf8-width";
+        version = "0.1.5";
+        edition = "2018";
+        sha256 = "0ax3y087ga8r2aap2h36jhmcapfvbly97mac3shxzy3y8mzxgxvw";
+        authors = [
+          "Magic Len <len@magiclen.org>"
+        ];
+
+      };
+      "uuid" = rec {
+        crateName = "uuid";
+        version = "0.8.2";
+        edition = "2018";
+        sha256 = "1dy4ldcp7rnzjy56dxh7d2sgrcvn4q77y0a8r0a48946h66zjp5w";
+        authors = [
+          "Ashley Mannix<ashleymannix@live.com.au>"
+          "Christopher Armstrong"
+          "Dylan DPC<dylan.dpc@gmail.com>"
+          "Hunar Roop Kahlon<hunar.roop@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "getrandom";
+            packageId = "getrandom 0.2.3";
+            optional = true;
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "default" = [ "std" ];
+          "guid" = [ "winapi" ];
+          "stdweb" = [ "getrandom" "getrandom/js" ];
+          "v3" = [ "md5" ];
+          "v4" = [ "getrandom" ];
+          "v5" = [ "sha1" ];
+          "wasm-bindgen" = [ "getrandom" "getrandom/js" ];
+        };
+        resolvedDefaultFeatures = [ "default" "getrandom" "serde" "std" "v4" ];
+      };
+      "vcpkg" = rec {
+        crateName = "vcpkg";
+        version = "0.2.15";
+        edition = "2015";
+        sha256 = "09i4nf5y8lig6xgj3f7fyrvzd3nlaw4znrihw8psidvv5yk4xkdc";
+        authors = [
+          "Jim McGrath <jimmc2@gmail.com>"
+        ];
+
+      };
+      "vec_map" = rec {
+        crateName = "vec_map";
+        version = "0.8.2";
+        edition = "2015";
+        sha256 = "1481w9g1dw9rxp3l6snkdqihzyrd2f8vispzqmwjwsdyhw8xzggi";
+        authors = [
+          "Alex Crichton <alex@alexcrichton.com>"
+          "Jorge Aparicio <japaricious@gmail.com>"
+          "Alexis Beingessner <a.beingessner@gmail.com>"
+          "Brian Anderson <>"
+          "tbu- <>"
+          "Manish Goregaokar <>"
+          "Aaron Turon <aturon@mozilla.com>"
+          "Adolfo Ochagavía <>"
+          "Niko Matsakis <>"
+          "Steven Fackler <>"
+          "Chase Southwood <csouth3@illinois.edu>"
+          "Eduard Burtescu <>"
+          "Florian Wilkens <>"
+          "Félix Raimundo <>"
+          "Tibor Benke <>"
+          "Markus Siemens <markus@m-siemens.de>"
+          "Josh Branchaud <jbranchaud@gmail.com>"
+          "Huon Wilson <dbau.pp@gmail.com>"
+          "Corey Farwell <coref@rwell.org>"
+          "Aaron Liblong <>"
+          "Nick Cameron <nrc@ncameron.org>"
+          "Patrick Walton <pcwalton@mimiga.net>"
+          "Felix S Klock II <>"
+          "Andrew Paseltiner <apaseltiner@gmail.com>"
+          "Sean McArthur <sean.monstar@gmail.com>"
+          "Vadim Petrochenkov <>"
+        ];
+        features = {
+          "eders" = [ "serde" ];
+        };
+      };
+      "vergen" = rec {
+        crateName = "vergen";
+        version = "5.1.15";
+        edition = "2018";
+        sha256 = "0g1zz5qp3rw2sv5xfka8yh06km674mg8sz7h2fms2mccn2m5am16";
+        authors = [
+          "Jason Ozias <jason.g.ozias@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "anyhow";
+            packageId = "anyhow";
+          }
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "chrono";
+            packageId = "chrono";
+            optional = true;
+          }
+          {
+            name = "enum-iterator";
+            packageId = "enum-iterator";
+          }
+          {
+            name = "getset";
+            packageId = "getset";
+          }
+          {
+            name = "git2";
+            packageId = "git2";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "thiserror";
+            packageId = "thiserror";
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "chrono";
+            packageId = "chrono";
+          }
+          {
+            name = "rustversion";
+            packageId = "rustversion";
+          }
+        ];
+        features = {
+          "build" = [ "chrono" ];
+          "default" = [ "build" "cargo" "git" "rustc" "si" ];
+          "git" = [ "chrono" "git2" ];
+          "rustc" = [ "rustc_version" ];
+          "si" = [ "sysinfo" ];
+        };
+        resolvedDefaultFeatures = [ "chrono" "git" "git2" ];
+      };
+      "version_check" = rec {
+        crateName = "version_check";
+        version = "0.9.3";
+        edition = "2015";
+        sha256 = "1zmkcgj2m0pq0l4wnhrp1wl1lygf7x2h5p7pvjwc4719lnlxrv2z";
+        authors = [
+          "Sergio Benitez <sb@sergio.bz>"
+        ];
+
+      };
+      "walkdir" = rec {
+        crateName = "walkdir";
+        version = "2.3.2";
+        edition = "2018";
+        sha256 = "0mnszy33685v8y9js8mw6x2p3iddqs8vfj7n2dhqddnlbirz5340";
+        authors = [
+          "Andrew Gallant <jamslam@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "same-file";
+            packageId = "same-file";
+          }
+          {
+            name = "winapi";
+            packageId = "winapi";
+            target = { target, features }: (target."windows" or false);
+            features = [ "std" "winnt" ];
+          }
+          {
+            name = "winapi-util";
+            packageId = "winapi-util";
+            target = { target, features }: (target."windows" or false);
+          }
+        ];
+
+      };
+      "want" = rec {
+        crateName = "want";
+        version = "0.3.0";
+        edition = "2018";
+        sha256 = "181b2zmwfq389x9n2g1n37cvcvvdand832zz6v8i1l8wrdlaks0w";
+        authors = [
+          "Sean McArthur <sean@seanmonstar.com>"
+        ];
+        dependencies = [
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "try-lock";
+            packageId = "try-lock";
+          }
+        ];
+
+      };
+      "wasi 0.10.0+wasi-snapshot-preview1" = rec {
+        crateName = "wasi";
+        version = "0.10.0+wasi-snapshot-preview1";
+        edition = "2018";
+        sha256 = "07y3l8mzfzzz4cj09c8y90yak4hpsi9g7pllyzpr6xvwrabka50s";
+        authors = [
+          "The Cranelift Project Developers"
+        ];
+        features = {
+          "default" = [ "std" ];
+          "rustc-dep-of-std" = [ "compiler_builtins" "core" "rustc-std-workspace-alloc" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "wasi 0.9.0+wasi-snapshot-preview1" = rec {
+        crateName = "wasi";
+        version = "0.9.0+wasi-snapshot-preview1";
+        edition = "2018";
+        sha256 = "06g5v3vrdapfzvfq662cij7v8a1flwr2my45nnncdv2galrdzkfc";
+        authors = [
+          "The Cranelift Project Developers"
+        ];
+        features = {
+          "default" = [ "std" ];
+          "rustc-dep-of-std" = [ "compiler_builtins" "core" "rustc-std-workspace-alloc" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" ];
+      };
+      "wasm-bindgen" = rec {
+        crateName = "wasm-bindgen";
+        version = "0.2.74";
+        edition = "2018";
+        sha256 = "1zcp57mwb47vdw3r594cl7vbj6pwd503xrkq8a3phvs8xpaf2knm";
+        authors = [
+          "The wasm-bindgen Developers"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "serde";
+            packageId = "serde";
+            optional = true;
+          }
+          {
+            name = "serde_json";
+            packageId = "serde_json";
+            optional = true;
+          }
+          {
+            name = "wasm-bindgen-macro";
+            packageId = "wasm-bindgen-macro";
+          }
+        ];
+        features = {
+          "default" = [ "spans" "std" ];
+          "enable-interning" = [ "std" ];
+          "serde-serialize" = [ "serde" "serde_json" "std" ];
+          "spans" = [ "wasm-bindgen-macro/spans" ];
+          "strict-macro" = [ "wasm-bindgen-macro/strict-macro" ];
+          "xxx_debug_only_print_generated_code" = [ "wasm-bindgen-macro/xxx_debug_only_print_generated_code" ];
+        };
+        resolvedDefaultFeatures = [ "default" "serde" "serde-serialize" "serde_json" "spans" "std" ];
+      };
+      "wasm-bindgen-backend" = rec {
+        crateName = "wasm-bindgen-backend";
+        version = "0.2.74";
+        edition = "2018";
+        sha256 = "005ra6jc8pm1y2wi6swkvn34r2is3knv5f2dv59ymkscd6hgccrv";
+        authors = [
+          "The wasm-bindgen Developers"
+        ];
+        dependencies = [
+          {
+            name = "bumpalo";
+            packageId = "bumpalo";
+          }
+          {
+            name = "lazy_static";
+            packageId = "lazy_static";
+          }
+          {
+            name = "log";
+            packageId = "log";
+          }
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+            features = [ "full" ];
+          }
+          {
+            name = "wasm-bindgen-shared";
+            packageId = "wasm-bindgen-shared";
+          }
+        ];
+        features = {
+          "extra-traits" = [ "syn/extra-traits" ];
+        };
+        resolvedDefaultFeatures = [ "spans" ];
+      };
+      "wasm-bindgen-futures" = rec {
+        crateName = "wasm-bindgen-futures";
+        version = "0.4.24";
+        edition = "2018";
+        sha256 = "1wb75qgv91qjblv685hnka2fn3w4fp0wi05cs3i3rmbrqrw7kfjz";
+        authors = [
+          "The wasm-bindgen Developers"
+        ];
+        dependencies = [
+          {
+            name = "cfg-if";
+            packageId = "cfg-if 1.0.0";
+          }
+          {
+            name = "js-sys";
+            packageId = "js-sys";
+          }
+          {
+            name = "wasm-bindgen";
+            packageId = "wasm-bindgen";
+          }
+          {
+            name = "web-sys";
+            packageId = "web-sys";
+            target = { target, features }: (builtins.elem "atomics" targetFeatures);
+            features = [ "MessageEvent" "Worker" ];
+          }
+        ];
+        features = {
+          "futures-core-03-stream" = [ "futures-core" ];
+        };
+      };
+      "wasm-bindgen-macro" = rec {
+        crateName = "wasm-bindgen-macro";
+        version = "0.2.74";
+        edition = "2018";
+        sha256 = "1m4bn6wlzc2rkp693zgnn7kh05r5fm4w55l0igjy23s3c756k088";
+        procMacro = true;
+        authors = [
+          "The wasm-bindgen Developers"
+        ];
+        dependencies = [
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "wasm-bindgen-macro-support";
+            packageId = "wasm-bindgen-macro-support";
+          }
+        ];
+        features = {
+          "spans" = [ "wasm-bindgen-macro-support/spans" ];
+          "strict-macro" = [ "wasm-bindgen-macro-support/strict-macro" ];
+        };
+        resolvedDefaultFeatures = [ "spans" ];
+      };
+      "wasm-bindgen-macro-support" = rec {
+        crateName = "wasm-bindgen-macro-support";
+        version = "0.2.74";
+        edition = "2018";
+        sha256 = "15vsk3q4jfk8ax4walc8vy3fgvrpkg86vjz2ym0z5ngk5xa428my";
+        authors = [
+          "The wasm-bindgen Developers"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "quote";
+            packageId = "quote 1.0.9";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+            features = [ "visit" "full" ];
+          }
+          {
+            name = "wasm-bindgen-backend";
+            packageId = "wasm-bindgen-backend";
+          }
+          {
+            name = "wasm-bindgen-shared";
+            packageId = "wasm-bindgen-shared";
+          }
+        ];
+        features = {
+          "extra-traits" = [ "syn/extra-traits" ];
+          "spans" = [ "wasm-bindgen-backend/spans" ];
+        };
+        resolvedDefaultFeatures = [ "spans" ];
+      };
+      "wasm-bindgen-shared" = rec {
+        crateName = "wasm-bindgen-shared";
+        version = "0.2.74";
+        edition = "2018";
+        sha256 = "0ksbnhjzvnsmzc1n18bs98swnrzrwxjrpx3clrsyv3pip1vgikyp";
+        authors = [
+          "The wasm-bindgen Developers"
+        ];
+
+      };
+      "web-sys" = rec {
+        crateName = "web-sys";
+        version = "0.3.51";
+        edition = "2018";
+        sha256 = "10p514z7zmwzxqll0z0zqhlswv3hadbrwais3l8zfgcz6xxl2a78";
+        authors = [
+          "The wasm-bindgen Developers"
+        ];
+        dependencies = [
+          {
+            name = "js-sys";
+            packageId = "js-sys";
+          }
+          {
+            name = "wasm-bindgen";
+            packageId = "wasm-bindgen";
+          }
+        ];
+        features = {
+          "AbortSignal" = [ "EventTarget" ];
+          "AnalyserNode" = [ "AudioNode" "EventTarget" ];
+          "Animation" = [ "EventTarget" ];
+          "AnimationEvent" = [ "Event" ];
+          "AnimationPlaybackEvent" = [ "Event" ];
+          "Attr" = [ "EventTarget" "Node" ];
+          "AudioBufferSourceNode" = [ "AudioNode" "AudioScheduledSourceNode" "EventTarget" ];
+          "AudioContext" = [ "BaseAudioContext" "EventTarget" ];
+          "AudioDestinationNode" = [ "AudioNode" "EventTarget" ];
+          "AudioNode" = [ "EventTarget" ];
+          "AudioProcessingEvent" = [ "Event" ];
+          "AudioScheduledSourceNode" = [ "AudioNode" "EventTarget" ];
+          "AudioStreamTrack" = [ "EventTarget" "MediaStreamTrack" ];
+          "AudioTrackList" = [ "EventTarget" ];
+          "AudioWorklet" = [ "Worklet" ];
+          "AudioWorkletGlobalScope" = [ "WorkletGlobalScope" ];
+          "AudioWorkletNode" = [ "AudioNode" "EventTarget" ];
+          "AuthenticatorAssertionResponse" = [ "AuthenticatorResponse" ];
+          "AuthenticatorAttestationResponse" = [ "AuthenticatorResponse" ];
+          "BaseAudioContext" = [ "EventTarget" ];
+          "BatteryManager" = [ "EventTarget" ];
+          "BeforeUnloadEvent" = [ "Event" ];
+          "BiquadFilterNode" = [ "AudioNode" "EventTarget" ];
+          "BlobEvent" = [ "Event" ];
+          "Bluetooth" = [ "EventTarget" ];
+          "BluetoothAdvertisingEvent" = [ "Event" ];
+          "BluetoothDevice" = [ "EventTarget" ];
+          "BluetoothPermissionResult" = [ "EventTarget" "PermissionStatus" ];
+          "BluetoothRemoteGattCharacteristic" = [ "EventTarget" ];
+          "BluetoothRemoteGattService" = [ "EventTarget" ];
+          "BroadcastChannel" = [ "EventTarget" ];
+          "CanvasCaptureMediaStream" = [ "EventTarget" "MediaStream" ];
+          "CdataSection" = [ "CharacterData" "EventTarget" "Node" "Text" ];
+          "ChannelMergerNode" = [ "AudioNode" "EventTarget" ];
+          "ChannelSplitterNode" = [ "AudioNode" "EventTarget" ];
+          "CharacterData" = [ "EventTarget" "Node" ];
+          "ChromeWorker" = [ "EventTarget" "Worker" ];
+          "Clipboard" = [ "EventTarget" ];
+          "ClipboardEvent" = [ "Event" ];
+          "CloseEvent" = [ "Event" ];
+          "Comment" = [ "CharacterData" "EventTarget" "Node" ];
+          "CompositionEvent" = [ "Event" "UiEvent" ];
+          "ConstantSourceNode" = [ "AudioNode" "AudioScheduledSourceNode" "EventTarget" ];
+          "ConvolverNode" = [ "AudioNode" "EventTarget" ];
+          "CssAnimation" = [ "Animation" "EventTarget" ];
+          "CssConditionRule" = [ "CssGroupingRule" "CssRule" ];
+          "CssCounterStyleRule" = [ "CssRule" ];
+          "CssFontFaceRule" = [ "CssRule" ];
+          "CssFontFeatureValuesRule" = [ "CssRule" ];
+          "CssGroupingRule" = [ "CssRule" ];
+          "CssImportRule" = [ "CssRule" ];
+          "CssKeyframeRule" = [ "CssRule" ];
+          "CssKeyframesRule" = [ "CssRule" ];
+          "CssMediaRule" = [ "CssConditionRule" "CssGroupingRule" "CssRule" ];
+          "CssNamespaceRule" = [ "CssRule" ];
+          "CssPageRule" = [ "CssRule" ];
+          "CssStyleRule" = [ "CssRule" ];
+          "CssStyleSheet" = [ "StyleSheet" ];
+          "CssSupportsRule" = [ "CssConditionRule" "CssGroupingRule" "CssRule" ];
+          "CssTransition" = [ "Animation" "EventTarget" ];
+          "CustomEvent" = [ "Event" ];
+          "DedicatedWorkerGlobalScope" = [ "EventTarget" "WorkerGlobalScope" ];
+          "DelayNode" = [ "AudioNode" "EventTarget" ];
+          "DeviceLightEvent" = [ "Event" ];
+          "DeviceMotionEvent" = [ "Event" ];
+          "DeviceOrientationEvent" = [ "Event" ];
+          "DeviceProximityEvent" = [ "Event" ];
+          "Document" = [ "EventTarget" "Node" ];
+          "DocumentFragment" = [ "EventTarget" "Node" ];
+          "DocumentTimeline" = [ "AnimationTimeline" ];
+          "DocumentType" = [ "EventTarget" "Node" ];
+          "DomMatrix" = [ "DomMatrixReadOnly" ];
+          "DomPoint" = [ "DomPointReadOnly" ];
+          "DomRect" = [ "DomRectReadOnly" ];
+          "DomRequest" = [ "EventTarget" ];
+          "DragEvent" = [ "Event" "MouseEvent" "UiEvent" ];
+          "DynamicsCompressorNode" = [ "AudioNode" "EventTarget" ];
+          "Element" = [ "EventTarget" "Node" ];
+          "ErrorEvent" = [ "Event" ];
+          "EventSource" = [ "EventTarget" ];
+          "ExtendableEvent" = [ "Event" ];
+          "ExtendableMessageEvent" = [ "Event" "ExtendableEvent" ];
+          "FetchEvent" = [ "Event" "ExtendableEvent" ];
+          "FetchObserver" = [ "EventTarget" ];
+          "File" = [ "Blob" ];
+          "FileReader" = [ "EventTarget" ];
+          "FileSystemDirectoryEntry" = [ "FileSystemEntry" ];
+          "FileSystemFileEntry" = [ "FileSystemEntry" ];
+          "FocusEvent" = [ "Event" "UiEvent" ];
+          "FontFaceSet" = [ "EventTarget" ];
+          "FontFaceSetLoadEvent" = [ "Event" ];
+          "GainNode" = [ "AudioNode" "EventTarget" ];
+          "GamepadAxisMoveEvent" = [ "Event" "GamepadEvent" ];
+          "GamepadButtonEvent" = [ "Event" "GamepadEvent" ];
+          "GamepadEvent" = [ "Event" ];
+          "GpuDevice" = [ "EventTarget" ];
+          "GpuUncapturedErrorEvent" = [ "Event" ];
+          "HashChangeEvent" = [ "Event" ];
+          "HtmlAnchorElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlAreaElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlAudioElement" = [ "Element" "EventTarget" "HtmlElement" "HtmlMediaElement" "Node" ];
+          "HtmlBaseElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlBodyElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlBrElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlButtonElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlCanvasElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlDListElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlDataElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlDataListElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlDetailsElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlDialogElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlDirectoryElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlDivElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlDocument" = [ "Document" "EventTarget" "Node" ];
+          "HtmlElement" = [ "Element" "EventTarget" "Node" ];
+          "HtmlEmbedElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlFieldSetElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlFontElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlFormControlsCollection" = [ "HtmlCollection" ];
+          "HtmlFormElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlFrameElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlFrameSetElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlHeadElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlHeadingElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlHrElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlHtmlElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlIFrameElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlImageElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlInputElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlLabelElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlLegendElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlLiElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlLinkElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlMapElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlMediaElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlMenuElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlMenuItemElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlMetaElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlMeterElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlModElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlOListElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlObjectElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlOptGroupElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlOptionElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlOptionsCollection" = [ "HtmlCollection" ];
+          "HtmlOutputElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlParagraphElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlParamElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlPictureElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlPreElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlProgressElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlQuoteElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlScriptElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlSelectElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlSlotElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlSourceElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlSpanElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlStyleElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlTableCaptionElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlTableCellElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlTableColElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlTableElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlTableRowElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlTableSectionElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlTemplateElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlTextAreaElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlTimeElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlTitleElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlTrackElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlUListElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlUnknownElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
+          "HtmlVideoElement" = [ "Element" "EventTarget" "HtmlElement" "HtmlMediaElement" "Node" ];
+          "IdbCursorWithValue" = [ "IdbCursor" ];
+          "IdbDatabase" = [ "EventTarget" ];
+          "IdbFileHandle" = [ "EventTarget" ];
+          "IdbFileRequest" = [ "DomRequest" "EventTarget" ];
+          "IdbLocaleAwareKeyRange" = [ "IdbKeyRange" ];
+          "IdbMutableFile" = [ "EventTarget" ];
+          "IdbOpenDbRequest" = [ "EventTarget" "IdbRequest" ];
+          "IdbRequest" = [ "EventTarget" ];
+          "IdbTransaction" = [ "EventTarget" ];
+          "IdbVersionChangeEvent" = [ "Event" ];
+          "IirFilterNode" = [ "AudioNode" "EventTarget" ];
+          "ImageCaptureErrorEvent" = [ "Event" ];
+          "InputEvent" = [ "Event" "UiEvent" ];
+          "KeyboardEvent" = [ "Event" "UiEvent" ];
+          "KeyframeEffect" = [ "AnimationEffect" ];
+          "LocalMediaStream" = [ "EventTarget" "MediaStream" ];
+          "MediaDevices" = [ "EventTarget" ];
+          "MediaElementAudioSourceNode" = [ "AudioNode" "EventTarget" ];
+          "MediaEncryptedEvent" = [ "Event" ];
+          "MediaKeyError" = [ "Event" ];
+          "MediaKeyMessageEvent" = [ "Event" ];
+          "MediaKeySession" = [ "EventTarget" ];
+          "MediaQueryList" = [ "EventTarget" ];
+          "MediaQueryListEvent" = [ "Event" ];
+          "MediaRecorder" = [ "EventTarget" ];
+          "MediaRecorderErrorEvent" = [ "Event" ];
+          "MediaSource" = [ "EventTarget" ];
+          "MediaStream" = [ "EventTarget" ];
+          "MediaStreamAudioDestinationNode" = [ "AudioNode" "EventTarget" ];
+          "MediaStreamAudioSourceNode" = [ "AudioNode" "EventTarget" ];
+          "MediaStreamEvent" = [ "Event" ];
+          "MediaStreamTrack" = [ "EventTarget" ];
+          "MediaStreamTrackEvent" = [ "Event" ];
+          "MessageEvent" = [ "Event" ];
+          "MessagePort" = [ "EventTarget" ];
+          "MidiAccess" = [ "EventTarget" ];
+          "MidiConnectionEvent" = [ "Event" ];
+          "MidiInput" = [ "EventTarget" "MidiPort" ];
+          "MidiMessageEvent" = [ "Event" ];
+          "MidiOutput" = [ "EventTarget" "MidiPort" ];
+          "MidiPort" = [ "EventTarget" ];
+          "MouseEvent" = [ "Event" "UiEvent" ];
+          "MouseScrollEvent" = [ "Event" "MouseEvent" "UiEvent" ];
+          "MutationEvent" = [ "Event" ];
+          "NetworkInformation" = [ "EventTarget" ];
+          "Node" = [ "EventTarget" ];
+          "Notification" = [ "EventTarget" ];
+          "NotificationEvent" = [ "Event" "ExtendableEvent" ];
+          "OfflineAudioCompletionEvent" = [ "Event" ];
+          "OfflineAudioContext" = [ "BaseAudioContext" "EventTarget" ];
+          "OfflineResourceList" = [ "EventTarget" ];
+          "OffscreenCanvas" = [ "EventTarget" ];
+          "OscillatorNode" = [ "AudioNode" "AudioScheduledSourceNode" "EventTarget" ];
+          "PageTransitionEvent" = [ "Event" ];
+          "PaintWorkletGlobalScope" = [ "WorkletGlobalScope" ];
+          "PannerNode" = [ "AudioNode" "EventTarget" ];
+          "PaymentMethodChangeEvent" = [ "Event" "PaymentRequestUpdateEvent" ];
+          "PaymentRequestUpdateEvent" = [ "Event" ];
+          "Performance" = [ "EventTarget" ];
+          "PerformanceMark" = [ "PerformanceEntry" ];
+          "PerformanceMeasure" = [ "PerformanceEntry" ];
+          "PerformanceNavigationTiming" = [ "PerformanceEntry" "PerformanceResourceTiming" ];
+          "PerformanceResourceTiming" = [ "PerformanceEntry" ];
+          "PermissionStatus" = [ "EventTarget" ];
+          "PointerEvent" = [ "Event" "MouseEvent" "UiEvent" ];
+          "PopStateEvent" = [ "Event" ];
+          "PopupBlockedEvent" = [ "Event" ];
+          "PresentationAvailability" = [ "EventTarget" ];
+          "PresentationConnection" = [ "EventTarget" ];
+          "PresentationConnectionAvailableEvent" = [ "Event" ];
+          "PresentationConnectionCloseEvent" = [ "Event" ];
+          "PresentationConnectionList" = [ "EventTarget" ];
+          "PresentationRequest" = [ "EventTarget" ];
+          "ProcessingInstruction" = [ "CharacterData" "EventTarget" "Node" ];
+          "ProgressEvent" = [ "Event" ];
+          "PromiseRejectionEvent" = [ "Event" ];
+          "PublicKeyCredential" = [ "Credential" ];
+          "PushEvent" = [ "Event" "ExtendableEvent" ];
+          "RadioNodeList" = [ "NodeList" ];
+          "RtcDataChannel" = [ "EventTarget" ];
+          "RtcDataChannelEvent" = [ "Event" ];
+          "RtcPeerConnection" = [ "EventTarget" ];
+          "RtcPeerConnectionIceEvent" = [ "Event" ];
+          "RtcTrackEvent" = [ "Event" ];
+          "RtcdtmfSender" = [ "EventTarget" ];
+          "RtcdtmfToneChangeEvent" = [ "Event" ];
+          "Screen" = [ "EventTarget" ];
+          "ScreenOrientation" = [ "EventTarget" ];
+          "ScriptProcessorNode" = [ "AudioNode" "EventTarget" ];
+          "ScrollAreaEvent" = [ "Event" "UiEvent" ];
+          "SecurityPolicyViolationEvent" = [ "Event" ];
+          "ServiceWorker" = [ "EventTarget" ];
+          "ServiceWorkerContainer" = [ "EventTarget" ];
+          "ServiceWorkerGlobalScope" = [ "EventTarget" "WorkerGlobalScope" ];
+          "ServiceWorkerRegistration" = [ "EventTarget" ];
+          "ShadowRoot" = [ "DocumentFragment" "EventTarget" "Node" ];
+          "SharedWorker" = [ "EventTarget" ];
+          "SharedWorkerGlobalScope" = [ "EventTarget" "WorkerGlobalScope" ];
+          "SourceBuffer" = [ "EventTarget" ];
+          "SourceBufferList" = [ "EventTarget" ];
+          "SpeechRecognition" = [ "EventTarget" ];
+          "SpeechRecognitionError" = [ "Event" ];
+          "SpeechRecognitionEvent" = [ "Event" ];
+          "SpeechSynthesis" = [ "EventTarget" ];
+          "SpeechSynthesisErrorEvent" = [ "Event" "SpeechSynthesisEvent" ];
+          "SpeechSynthesisEvent" = [ "Event" ];
+          "SpeechSynthesisUtterance" = [ "EventTarget" ];
+          "StereoPannerNode" = [ "AudioNode" "EventTarget" ];
+          "StorageEvent" = [ "Event" ];
+          "SvgAnimateElement" = [ "Element" "EventTarget" "Node" "SvgAnimationElement" "SvgElement" ];
+          "SvgAnimateMotionElement" = [ "Element" "EventTarget" "Node" "SvgAnimationElement" "SvgElement" ];
+          "SvgAnimateTransformElement" = [ "Element" "EventTarget" "Node" "SvgAnimationElement" "SvgElement" ];
+          "SvgAnimationElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgCircleElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ];
+          "SvgClipPathElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgComponentTransferFunctionElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgDefsElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
+          "SvgDescElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgElement" = [ "Element" "EventTarget" "Node" ];
+          "SvgEllipseElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ];
+          "SvgFilterElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgForeignObjectElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
+          "SvgGeometryElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
+          "SvgGradientElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgGraphicsElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgImageElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
+          "SvgLineElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ];
+          "SvgLinearGradientElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGradientElement" ];
+          "SvgMarkerElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgMaskElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgMetadataElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgPathElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ];
+          "SvgPathSegArcAbs" = [ "SvgPathSeg" ];
+          "SvgPathSegArcRel" = [ "SvgPathSeg" ];
+          "SvgPathSegClosePath" = [ "SvgPathSeg" ];
+          "SvgPathSegCurvetoCubicAbs" = [ "SvgPathSeg" ];
+          "SvgPathSegCurvetoCubicRel" = [ "SvgPathSeg" ];
+          "SvgPathSegCurvetoCubicSmoothAbs" = [ "SvgPathSeg" ];
+          "SvgPathSegCurvetoCubicSmoothRel" = [ "SvgPathSeg" ];
+          "SvgPathSegCurvetoQuadraticAbs" = [ "SvgPathSeg" ];
+          "SvgPathSegCurvetoQuadraticRel" = [ "SvgPathSeg" ];
+          "SvgPathSegCurvetoQuadraticSmoothAbs" = [ "SvgPathSeg" ];
+          "SvgPathSegCurvetoQuadraticSmoothRel" = [ "SvgPathSeg" ];
+          "SvgPathSegLinetoAbs" = [ "SvgPathSeg" ];
+          "SvgPathSegLinetoHorizontalAbs" = [ "SvgPathSeg" ];
+          "SvgPathSegLinetoHorizontalRel" = [ "SvgPathSeg" ];
+          "SvgPathSegLinetoRel" = [ "SvgPathSeg" ];
+          "SvgPathSegLinetoVerticalAbs" = [ "SvgPathSeg" ];
+          "SvgPathSegLinetoVerticalRel" = [ "SvgPathSeg" ];
+          "SvgPathSegMovetoAbs" = [ "SvgPathSeg" ];
+          "SvgPathSegMovetoRel" = [ "SvgPathSeg" ];
+          "SvgPatternElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgPolygonElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ];
+          "SvgPolylineElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ];
+          "SvgRadialGradientElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGradientElement" ];
+          "SvgRectElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ];
+          "SvgScriptElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgSetElement" = [ "Element" "EventTarget" "Node" "SvgAnimationElement" "SvgElement" ];
+          "SvgStopElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgStyleElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgSwitchElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
+          "SvgSymbolElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgTextContentElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
+          "SvgTextElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" "SvgTextContentElement" "SvgTextPositioningElement" ];
+          "SvgTextPathElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" "SvgTextContentElement" ];
+          "SvgTextPositioningElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" "SvgTextContentElement" ];
+          "SvgTitleElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgUseElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
+          "SvgViewElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgaElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
+          "SvgfeBlendElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeColorMatrixElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeComponentTransferElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeCompositeElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeConvolveMatrixElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeDiffuseLightingElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeDisplacementMapElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeDistantLightElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeDropShadowElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeFloodElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeFuncAElement" = [ "Element" "EventTarget" "Node" "SvgComponentTransferFunctionElement" "SvgElement" ];
+          "SvgfeFuncBElement" = [ "Element" "EventTarget" "Node" "SvgComponentTransferFunctionElement" "SvgElement" ];
+          "SvgfeFuncGElement" = [ "Element" "EventTarget" "Node" "SvgComponentTransferFunctionElement" "SvgElement" ];
+          "SvgfeFuncRElement" = [ "Element" "EventTarget" "Node" "SvgComponentTransferFunctionElement" "SvgElement" ];
+          "SvgfeGaussianBlurElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeImageElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeMergeElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeMergeNodeElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeMorphologyElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeOffsetElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfePointLightElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeSpecularLightingElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeSpotLightElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeTileElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgfeTurbulenceElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvggElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
+          "SvgmPathElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
+          "SvgsvgElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
+          "SvgtSpanElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" "SvgTextContentElement" "SvgTextPositioningElement" ];
+          "TcpServerSocket" = [ "EventTarget" ];
+          "TcpServerSocketEvent" = [ "Event" ];
+          "TcpSocket" = [ "EventTarget" ];
+          "TcpSocketErrorEvent" = [ "Event" ];
+          "TcpSocketEvent" = [ "Event" ];
+          "Text" = [ "CharacterData" "EventTarget" "Node" ];
+          "TextTrack" = [ "EventTarget" ];
+          "TextTrackCue" = [ "EventTarget" ];
+          "TextTrackList" = [ "EventTarget" ];
+          "TimeEvent" = [ "Event" ];
+          "TouchEvent" = [ "Event" "UiEvent" ];
+          "TrackEvent" = [ "Event" ];
+          "TransitionEvent" = [ "Event" ];
+          "UiEvent" = [ "Event" ];
+          "Usb" = [ "EventTarget" ];
+          "UsbConnectionEvent" = [ "Event" ];
+          "UsbPermissionResult" = [ "EventTarget" "PermissionStatus" ];
+          "UserProximityEvent" = [ "Event" ];
+          "ValueEvent" = [ "Event" ];
+          "VideoStreamTrack" = [ "EventTarget" "MediaStreamTrack" ];
+          "VideoTrackList" = [ "EventTarget" ];
+          "VrDisplay" = [ "EventTarget" ];
+          "VttCue" = [ "EventTarget" "TextTrackCue" ];
+          "WaveShaperNode" = [ "AudioNode" "EventTarget" ];
+          "WebGlContextEvent" = [ "Event" ];
+          "WebKitCssMatrix" = [ "DomMatrix" "DomMatrixReadOnly" ];
+          "WebSocket" = [ "EventTarget" ];
+          "WheelEvent" = [ "Event" "MouseEvent" "UiEvent" ];
+          "Window" = [ "EventTarget" ];
+          "WindowClient" = [ "Client" ];
+          "Worker" = [ "EventTarget" ];
+          "WorkerDebuggerGlobalScope" = [ "EventTarget" ];
+          "WorkerGlobalScope" = [ "EventTarget" ];
+          "XmlDocument" = [ "Document" "EventTarget" "Node" ];
+          "XmlHttpRequest" = [ "EventTarget" "XmlHttpRequestEventTarget" ];
+          "XmlHttpRequestEventTarget" = [ "EventTarget" ];
+          "XmlHttpRequestUpload" = [ "EventTarget" "XmlHttpRequestEventTarget" ];
+          "Xr" = [ "EventTarget" ];
+          "XrBoundedReferenceSpace" = [ "EventTarget" "XrReferenceSpace" "XrSpace" ];
+          "XrInputSourceEvent" = [ "Event" ];
+          "XrInputSourcesChangeEvent" = [ "Event" ];
+          "XrReferenceSpace" = [ "EventTarget" "XrSpace" ];
+          "XrReferenceSpaceEvent" = [ "Event" ];
+          "XrSession" = [ "EventTarget" ];
+          "XrSessionEvent" = [ "Event" ];
+          "XrSpace" = [ "EventTarget" ];
+          "XrViewerPose" = [ "XrPose" ];
+        };
+        resolvedDefaultFeatures = [ "Blob" "BlobPropertyBag" "Crypto" "Document" "Event" "EventTarget" "FormData" "Headers" "HtmlDocument" "MessageEvent" "Navigator" "Node" "Request" "RequestCredentials" "RequestInit" "RequestMode" "Response" "ServiceWorkerGlobalScope" "Window" "Worker" "WorkerGlobalScope" ];
+      };
+      "webpki" = rec {
+        crateName = "webpki";
+        version = "0.21.4";
+        edition = "2018";
+        sha256 = "1sm4i8c5bw3bdhi7mjk0wpvwx55hvsmyn0k2lpa4cb161038rqxq";
+        libPath = "src/webpki.rs";
+        authors = [
+          "Brian Smith <brian@briansmith.org>"
+        ];
+        dependencies = [
+          {
+            name = "ring";
+            packageId = "ring";
+            usesDefaultFeatures = false;
+            features = [ "alloc" ];
+          }
+          {
+            name = "untrusted";
+            packageId = "untrusted";
+          }
+        ];
+        features = {
+          "default" = [ "std" "trust_anchor_util" ];
+          "trust_anchor_util" = [ "std" ];
+        };
+        resolvedDefaultFeatures = [ "default" "std" "trust_anchor_util" ];
+      };
+      "webpki-roots" = rec {
+        crateName = "webpki-roots";
+        version = "0.21.1";
+        edition = "2018";
+        crateBin = [];
+        sha256 = "0h49lkr7hrxpyr0xg1nph4m3v1l6rhg8ax9n8msvfwz48hsibgma";
+        authors = [
+          "Joseph Birr-Pixton <jpixton@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "webpki";
+            packageId = "webpki";
+          }
+        ];
+
+      };
+      "whatlang" = rec {
+        crateName = "whatlang";
+        version = "0.12.0";
+        edition = "2018";
+        sha256 = "00zp7h1iwinpd6b8prcan0n3y36d3afs497djf3620wwn8p6sd3s";
+        authors = [
+          "Sergey Potapov <blake131313@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "hashbrown";
+            packageId = "hashbrown 0.7.2";
+          }
+        ];
+        features = {
+        };
+      };
+      "whoami" = rec {
+        crateName = "whoami";
+        version = "1.1.2";
+        edition = "2018";
+        sha256 = "1xiaddvcd54yl9jyk3lnw3gvc0d9y8viv4s622pzx3cmbhrczfja";
+        authors = [
+          "Jeron Aldaron Lau <jeronlau@plopgrizzly.com>"
+        ];
+        dependencies = [
+          {
+            name = "wasm-bindgen";
+            packageId = "wasm-bindgen";
+            target = { target, features }: (target."arch" == "wasm32");
+          }
+          {
+            name = "web-sys";
+            packageId = "web-sys";
+            target = { target, features }: (target."arch" == "wasm32");
+            features = [ "Navigator" "HtmlDocument" "Document" "Window" ];
+          }
+        ];
+        features = {
+        };
+        resolvedDefaultFeatures = [ "default" ];
+      };
+      "winapi" = rec {
+        crateName = "winapi";
+        version = "0.3.9";
+        edition = "2015";
+        sha256 = "06gl025x418lchw1wxj64ycr7gha83m44cjr5sarhynd9xkrm0sw";
+        authors = [
+          "Peter Atashian <retep998@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "winapi-i686-pc-windows-gnu";
+            packageId = "winapi-i686-pc-windows-gnu";
+            target = { target, features }: (stdenv.hostPlatform.config == "i686-pc-windows-gnu");
+          }
+          {
+            name = "winapi-x86_64-pc-windows-gnu";
+            packageId = "winapi-x86_64-pc-windows-gnu";
+            target = { target, features }: (stdenv.hostPlatform.config == "x86_64-pc-windows-gnu");
+          }
+        ];
+        features = {
+          "debug" = [ "impl-debug" ];
+        };
+        resolvedDefaultFeatures = [ "basetsd" "cfg" "consoleapi" "errhandlingapi" "evntrace" "fileapi" "handleapi" "impl-debug" "impl-default" "in6addr" "inaddr" "ioapiset" "memoryapi" "minwinbase" "minwindef" "mstcpip" "mswsock" "namedpipeapi" "ntdef" "ntsecapi" "ntstatus" "processenv" "profileapi" "std" "synchapi" "sysinfoapi" "threadpoollegacyapiset" "timezoneapi" "winbase" "wincon" "windef" "winerror" "winioctl" "winnt" "winreg" "winsock2" "ws2def" "ws2ipdef" "ws2tcpip" "wtypesbase" ];
+      };
+      "winapi-i686-pc-windows-gnu" = rec {
+        crateName = "winapi-i686-pc-windows-gnu";
+        version = "0.4.0";
+        edition = "2015";
+        sha256 = "1dmpa6mvcvzz16zg6d5vrfy4bxgg541wxrcip7cnshi06v38ffxc";
+        authors = [
+          "Peter Atashian <retep998@gmail.com>"
+        ];
+
+      };
+      "winapi-util" = rec {
+        crateName = "winapi-util";
+        version = "0.1.5";
+        edition = "2018";
+        sha256 = "0y71bp7f6d536czj40dhqk0d55wfbbwqfp2ymqf1an5ibgl6rv3h";
+        authors = [
+          "Andrew Gallant <jamslam@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "winapi";
+            packageId = "winapi";
+            target = { target, features }: (target."windows" or false);
+            features = [ "std" "consoleapi" "errhandlingapi" "fileapi" "minwindef" "processenv" "winbase" "wincon" "winerror" "winnt" ];
+          }
+        ];
+
+      };
+      "winapi-x86_64-pc-windows-gnu" = rec {
+        crateName = "winapi-x86_64-pc-windows-gnu";
+        version = "0.4.0";
+        edition = "2015";
+        sha256 = "0gqq64czqb64kskjryj8isp62m2sgvx25yyj3kpc2myh85w24bki";
+        authors = [
+          "Peter Atashian <retep998@gmail.com>"
+        ];
+
+      };
+      "winreg" = rec {
+        crateName = "winreg";
+        version = "0.7.0";
+        edition = "2015";
+        sha256 = "0sdxcyvda4v1v6a0k1j2v1400z3ng323k9a56gxvkq51x21dn801";
+        authors = [
+          "Igor Shaula <gentoo90@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "winapi";
+            packageId = "winapi";
+            features = [ "impl-default" "impl-debug" "minwindef" "minwinbase" "timezoneapi" "winerror" "winnt" "winreg" "handleapi" ];
+          }
+        ];
+        features = {
+          "serialization-serde" = [ "transactions" "serde" ];
+          "transactions" = [ "winapi/ktmw32" ];
+        };
+      };
+      "xattr" = rec {
+        crateName = "xattr";
+        version = "0.2.2";
+        edition = "2015";
+        sha256 = "0k556fb6f5jc907975j9c8iynl2fqz3rf0w6fiig83i4yi0kfk14";
+        authors = [
+          "Steven Allen <steven@stebalien.com>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+          }
+        ];
+        features = {
+          "default" = [ "unsupported" ];
+        };
+        resolvedDefaultFeatures = [ "default" "unsupported" ];
+      };
+      "zerocopy" = rec {
+        crateName = "zerocopy";
+        version = "0.3.0";
+        edition = "2018";
+        sha256 = "0imbiww3abh0cqg4kp70di6yab6m10n3yjqc48kc1dqpv6d57035";
+        authors = [
+          "Joshua Liebow-Feeser <joshlf@google.com>"
+        ];
+        dependencies = [
+          {
+            name = "byteorder";
+            packageId = "byteorder";
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "zerocopy-derive";
+            packageId = "zerocopy-derive";
+          }
+        ];
+
+      };
+      "zerocopy-derive" = rec {
+        crateName = "zerocopy-derive";
+        version = "0.2.0";
+        edition = "2018";
+        sha256 = "1yzd3057gr3csn3x4wrl8y4ji52hr8rirbh9cz487svvzp8xp66l";
+        procMacro = true;
+        authors = [
+          "Joshua Liebow-Feeser <joshlf@google.com>"
+        ];
+        dependencies = [
+          {
+            name = "proc-macro2";
+            packageId = "proc-macro2 1.0.27";
+          }
+          {
+            name = "syn";
+            packageId = "syn 1.0.73";
+          }
+          {
+            name = "synstructure";
+            packageId = "synstructure";
+          }
+        ];
+
+      };
+      "zip" = rec {
+        crateName = "zip";
+        version = "0.5.13";
+        edition = "2018";
+        sha256 = "0588z88sj37nj1clis1rf4fh794av0hwaiaihfrin9b19n24iawk";
+        authors = [
+          "Mathijs van de Nes <git@mathijs.vd-nes.nl>"
+          "Marli Frost <marli@frost.red>"
+          "Ryan Levick <ryan.levick@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "byteorder";
+            packageId = "byteorder";
+          }
+          {
+            name = "bzip2";
+            packageId = "bzip2";
+            optional = true;
+          }
+          {
+            name = "crc32fast";
+            packageId = "crc32fast";
+          }
+          {
+            name = "flate2";
+            packageId = "flate2";
+            optional = true;
+            usesDefaultFeatures = false;
+          }
+          {
+            name = "thiserror";
+            packageId = "thiserror";
+          }
+          {
+            name = "time";
+            packageId = "time 0.1.44";
+            optional = true;
+          }
+        ];
+        features = {
+          "default" = [ "bzip2" "deflate" "time" ];
+          "deflate" = [ "flate2/rust_backend" ];
+          "deflate-miniz" = [ "flate2/default" ];
+          "deflate-zlib" = [ "flate2/zlib" ];
+        };
+        resolvedDefaultFeatures = [ "bzip2" "default" "deflate" "flate2" "time" ];
+      };
+      "zstd" = rec {
+        crateName = "zstd";
+        version = "0.5.4+zstd.1.4.7";
+        edition = "2018";
+        sha256 = "0419r39dk3zx3xxlhpr9i9nac63qhn1si1qkyqbib2xsn6ynx6b9";
+        authors = [
+          "Alexandre Bury <alexandre.bury@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "zstd-safe";
+            packageId = "zstd-safe";
+            usesDefaultFeatures = false;
+            features = [ "experimental" ];
+          }
+        ];
+        features = {
+          "bindgen" = [ "zstd-safe/bindgen" ];
+          "default" = [ "legacy" ];
+          "legacy" = [ "zstd-safe/legacy" ];
+          "pkg-config" = [ "zstd-safe/pkg-config" ];
+          "tokio" = [ "tokio-io" "futures" ];
+          "wasm" = [ "zstd-safe/std" ];
+          "zstdmt" = [ "zstd-safe/zstdmt" ];
+        };
+        resolvedDefaultFeatures = [ "default" "legacy" ];
+      };
+      "zstd-safe" = rec {
+        crateName = "zstd-safe";
+        version = "2.0.6+zstd.1.4.7";
+        edition = "2015";
+        sha256 = "17m46z6b26ai70xrdgv98yp52676ajbx32a5sibf5klynqgr7alq";
+        authors = [
+          "Alexandre Bury <alexandre.bury@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+          }
+          {
+            name = "zstd-sys";
+            packageId = "zstd-sys";
+            usesDefaultFeatures = false;
+          }
+        ];
+        features = {
+          "bindgen" = [ "zstd-sys/bindgen" ];
+          "default" = [ "legacy" ];
+          "experimental" = [ "zstd-sys/experimental" ];
+          "legacy" = [ "zstd-sys/legacy" ];
+          "pkg-config" = [ "zstd-sys/pkg-config" ];
+          "std" = [ "zstd-sys/std" ];
+          "zstdmt" = [ "zstd-sys/zstdmt" ];
+        };
+        resolvedDefaultFeatures = [ "experimental" "legacy" ];
+      };
+      "zstd-sys" = rec {
+        crateName = "zstd-sys";
+        version = "1.4.18+zstd.1.4.7";
+        edition = "2015";
+        sha256 = "10gcxawj2rxgxcxdv2gyv83gxckwg0vhvn3iyx1qz0q6hxvyirm1";
+        authors = [
+          "Alexandre Bury <alexandre.bury@gmail.com>"
+        ];
+        dependencies = [
+          {
+            name = "libc";
+            packageId = "libc";
+          }
+        ];
+        buildDependencies = [
+          {
+            name = "cc";
+            packageId = "cc";
+            features = [ "parallel" ];
+          }
+          {
+            name = "glob";
+            packageId = "glob";
+          }
+          {
+            name = "itertools";
+            packageId = "itertools 0.9.0";
+          }
+        ];
+        features = {
+          "default" = [ "legacy" ];
+        };
+        resolvedDefaultFeatures = [ "experimental" "legacy" ];
+      };
+    };
+
+    #
+# crate2nix/default.nix (excerpt start)
+#
+
+  /* Target (platform) data for conditional dependencies.
+    This corresponds roughly to what buildRustCrate is setting.
+  */
+  defaultTarget = {
+    unix = true;
+    windows = false;
+    fuchsia = true;
+    test = false;
+
+    # This doesn't appear to be officially documented anywhere yet.
+    # See https://github.com/rust-lang-nursery/rust-forge/issues/101.
+    os =
+      if stdenv.hostPlatform.isDarwin
+      then "macos"
+      else stdenv.hostPlatform.parsed.kernel.name;
+    arch = stdenv.hostPlatform.parsed.cpu.name;
+    family = "unix";
+    env = "gnu";
+    endian =
+      if stdenv.hostPlatform.parsed.cpu.significantByte.name == "littleEndian"
+      then "little" else "big";
+    pointer_width = toString stdenv.hostPlatform.parsed.cpu.bits;
+    vendor = stdenv.hostPlatform.parsed.vendor.name;
+    debug_assertions = false;
+  };
+
+  /* Filters common temp files and build files. */
+  # TODO(pkolloch): Substitute with gitignore filter
+  sourceFilter = name: type:
+    let
+      baseName = builtins.baseNameOf (builtins.toString name);
+    in
+      ! (
+        # Filter out git
+        baseName == ".gitignore"
+        || (type == "directory" && baseName == ".git")
+
+        # Filter out build results
+        || (
+          type == "directory" && (
+            baseName == "target"
+            || baseName == "_site"
+            || baseName == ".sass-cache"
+            || baseName == ".jekyll-metadata"
+            || baseName == "build-artifacts"
+          )
+        )
+
+        # Filter out nix-build result symlinks
+        || (
+          type == "symlink" && lib.hasPrefix "result" baseName
+        )
+
+        # Filter out IDE config
+        || (
+          type == "directory" && (
+            baseName == ".idea" || baseName == ".vscode"
+          )
+        ) || lib.hasSuffix ".iml" baseName
+
+        # Filter out nix build files
+        || baseName == "Cargo.nix"
+
+        # Filter out editor backup / swap files.
+        || lib.hasSuffix "~" baseName
+        || builtins.match "^\\.sw[a-z]$$" baseName != null
+        || builtins.match "^\\..*\\.sw[a-z]$$" baseName != null
+        || lib.hasSuffix ".tmp" baseName
+        || lib.hasSuffix ".bak" baseName
+        || baseName == "tests.nix"
+      );
+
+  /* Returns a crate which depends on successful test execution
+    of crate given as the second argument.
+
+    testCrateFlags: list of flags to pass to the test exectuable
+    testInputs: list of packages that should be available during test execution
+  */
+  crateWithTest = { crate, testCrate, testCrateFlags, testInputs, testPreRun, testPostRun }:
+    assert builtins.typeOf testCrateFlags == "list";
+    assert builtins.typeOf testInputs == "list";
+    assert builtins.typeOf testPreRun == "string";
+    assert builtins.typeOf testPostRun == "string";
+    let
+      # override the `crate` so that it will build and execute tests instead of
+      # building the actual lib and bin targets We just have to pass `--test`
+      # to rustc and it will do the right thing.  We execute the tests and copy
+      # their log and the test executables to $out for later inspection.
+      test =
+        let
+          drv = testCrate.override
+            (
+              _: {
+                buildTests = true;
+              }
+            );
+          # If the user hasn't set any pre/post commands, we don't want to
+          # insert empty lines. This means that any existing users of crate2nix
+          # don't get a spurious rebuild unless they set these explicitly.
+          testCommand = pkgs.lib.concatStringsSep "\n"
+            (pkgs.lib.filter (s: s != "") [
+              testPreRun
+              "$f $testCrateFlags 2>&1 | tee -a $out"
+              testPostRun
+            ]);
+        in
+        pkgs.runCommand "run-tests-${testCrate.name}"
+          {
+            inherit testCrateFlags;
+            buildInputs = testInputs;
+          } ''
+          set -ex
+
+          export RUST_BACKTRACE=1
+
+          # recreate a file hierarchy as when running tests with cargo
+
+          # the source for test data
+          ${pkgs.xorg.lndir}/bin/lndir ${crate.src}
+
+          # build outputs
+          testRoot=target/debug
+          mkdir -p $testRoot
+
+          # executables of the crate
+          # we copy to prevent std::env::current_exe() to resolve to a store location
+          for i in ${crate}/bin/*; do
+            cp "$i" "$testRoot"
+          done
+          chmod +w -R .
+
+          # test harness executables are suffixed with a hash, like cargo does
+          # this allows to prevent name collision with the main
+          # executables of the crate
+          hash=$(basename $out)
+          for file in ${drv}/tests/*; do
+            f=$testRoot/$(basename $file)-$hash
+            cp $file $f
+            ${testCommand}
+          done
+        '';
+    in
+    pkgs.runCommand "${crate.name}-linked"
+      {
+        inherit (crate) outputs crateName;
+        passthru = (crate.passthru or { }) // {
+          inherit test;
+        };
+      } ''
+      echo tested by ${test}
+      ${lib.concatMapStringsSep "\n" (output: "ln -s ${crate.${output}} ${"$"}${output}") crate.outputs}
+    '';
+
+  /* A restricted overridable version of builtRustCratesWithFeatures. */
+  buildRustCrateWithFeatures =
+    { packageId
+    , features ? rootFeatures
+    , crateOverrides ? defaultCrateOverrides
+    , buildRustCrateForPkgsFunc ? null
+    , runTests ? false
+    , testCrateFlags ? [ ]
+    , testInputs ? [ ]
+      # Any command to run immediatelly before a test is executed.
+    , testPreRun ? ""
+      # Any command run immediatelly after a test is executed.
+    , testPostRun ? ""
+    }:
+    lib.makeOverridable
+      (
+        { features
+        , crateOverrides
+        , runTests
+        , testCrateFlags
+        , testInputs
+        , testPreRun
+        , testPostRun
+        }:
+        let
+          buildRustCrateForPkgsFuncOverriden =
+            if buildRustCrateForPkgsFunc != null
+            then buildRustCrateForPkgsFunc
+            else
+              (
+                if crateOverrides == pkgs.defaultCrateOverrides
+                then buildRustCrateForPkgs
+                else
+                  pkgs: (buildRustCrateForPkgs pkgs).override {
+                    defaultCrateOverrides = crateOverrides;
+                  }
+              );
+          builtRustCrates = builtRustCratesWithFeatures {
+            inherit packageId features;
+            buildRustCrateForPkgsFunc = buildRustCrateForPkgsFuncOverriden;
+            runTests = false;
+          };
+          builtTestRustCrates = builtRustCratesWithFeatures {
+            inherit packageId features;
+            buildRustCrateForPkgsFunc = buildRustCrateForPkgsFuncOverriden;
+            runTests = true;
+          };
+          drv = builtRustCrates.crates.${packageId};
+          testDrv = builtTestRustCrates.crates.${packageId};
+          derivation =
+            if runTests then
+              crateWithTest
+                {
+                  crate = drv;
+                  testCrate = testDrv;
+                  inherit testCrateFlags testInputs testPreRun testPostRun;
+                }
+            else drv;
+        in
+        derivation
+      )
+      { inherit features crateOverrides runTests testCrateFlags testInputs testPreRun testPostRun; };
+
+  /* Returns an attr set with packageId mapped to the result of buildRustCrateForPkgsFunc
+    for the corresponding crate.
+  */
+  builtRustCratesWithFeatures =
+    { packageId
+    , features
+    , crateConfigs ? crates
+    , buildRustCrateForPkgsFunc
+    , runTests
+    , target ? defaultTarget
+    } @ args:
+      assert (builtins.isAttrs crateConfigs);
+      assert (builtins.isString packageId);
+      assert (builtins.isList features);
+      assert (builtins.isAttrs target);
+      assert (builtins.isBool runTests);
+      let
+        rootPackageId = packageId;
+        mergedFeatures = mergePackageFeatures
+          (
+            args // {
+              inherit rootPackageId;
+              target = target // { test = runTests; };
+            }
+          );
+        # Memoize built packages so that reappearing packages are only built once.
+        builtByPackageIdByPkgs = mkBuiltByPackageIdByPkgs pkgs;
+        mkBuiltByPackageIdByPkgs = pkgs:
+          let
+            self = {
+              crates = lib.mapAttrs (packageId: value: buildByPackageIdForPkgsImpl self pkgs packageId) crateConfigs;
+              build = mkBuiltByPackageIdByPkgs pkgs.buildPackages;
+            };
+          in
+          self;
+        buildByPackageIdForPkgsImpl = self: pkgs: packageId:
+          let
+            features = mergedFeatures."${packageId}" or [ ];
+            crateConfig' = crateConfigs."${packageId}";
+            crateConfig =
+              builtins.removeAttrs crateConfig' [ "resolvedDefaultFeatures" "devDependencies" ];
+            devDependencies =
+              lib.optionals
+                (runTests && packageId == rootPackageId)
+                (crateConfig'.devDependencies or [ ]);
+            dependencies =
+              dependencyDerivations {
+                inherit features target;
+                buildByPackageId = depPackageId:
+                  # proc_macro crates must be compiled for the build architecture
+                  if crateConfigs.${depPackageId}.procMacro or false
+                  then self.build.crates.${depPackageId}
+                  else self.crates.${depPackageId};
+                dependencies =
+                  (crateConfig.dependencies or [ ])
+                  ++ devDependencies;
+              };
+            buildDependencies =
+              dependencyDerivations {
+                inherit features target;
+                buildByPackageId = depPackageId:
+                  self.build.crates.${depPackageId};
+                dependencies = crateConfig.buildDependencies or [ ];
+              };
+            filterEnabledDependenciesForThis = dependencies: filterEnabledDependencies {
+              inherit dependencies features target;
+            };
+            dependenciesWithRenames =
+              lib.filter (d: d ? "rename")
+                (
+                  filterEnabledDependenciesForThis
+                    (
+                      (crateConfig.buildDependencies or [ ])
+                      ++ (crateConfig.dependencies or [ ])
+                      ++ devDependencies
+                    )
+                );
+            # Crate renames have the form:
+            #
+            # {
+            #    crate_name = [
+            #       { version = "1.2.3"; rename = "crate_name01"; }
+            #    ];
+            #    # ...
+            # }
+            crateRenames =
+              let
+                grouped =
+                  lib.groupBy
+                    (dependency: dependency.name)
+                    dependenciesWithRenames;
+                versionAndRename = dep:
+                  let
+                    package = crateConfigs."${dep.packageId}";
+                  in
+                  { inherit (dep) rename; version = package.version; };
+              in
+              lib.mapAttrs (name: choices: builtins.map versionAndRename choices) grouped;
+          in
+          buildRustCrateForPkgsFunc pkgs
+            (
+              crateConfig // {
+                src = crateConfig.src or (
+                  pkgs.fetchurl rec {
+                    name = "${crateConfig.crateName}-${crateConfig.version}.tar.gz";
+                    # https://www.pietroalbini.org/blog/downloading-crates-io/
+                    # Not rate-limited, CDN URL.
+                    url = "https://static.crates.io/crates/${crateConfig.crateName}/${crateConfig.crateName}-${crateConfig.version}.crate";
+                    sha256 =
+                      assert (lib.assertMsg (crateConfig ? sha256) "Missing sha256 for ${name}");
+                      crateConfig.sha256;
+                  }
+                );
+                extraRustcOpts = lib.lists.optional (targetFeatures != [ ]) "-C target-feature=${lib.concatMapStringsSep "," (x: "+${x}") targetFeatures}";
+                inherit features dependencies buildDependencies crateRenames release;
+              }
+            );
+      in
+      builtByPackageIdByPkgs;
+
+  /* Returns the actual derivations for the given dependencies. */
+  dependencyDerivations =
+    { buildByPackageId
+    , features
+    , dependencies
+    , target
+    }:
+      assert (builtins.isList features);
+      assert (builtins.isList dependencies);
+      assert (builtins.isAttrs target);
+      let
+        enabledDependencies = filterEnabledDependencies {
+          inherit dependencies features target;
+        };
+        depDerivation = dependency: buildByPackageId dependency.packageId;
+      in
+      map depDerivation enabledDependencies;
+
+  /* Returns a sanitized version of val with all values substituted that cannot
+    be serialized as JSON.
+  */
+  sanitizeForJson = val:
+    if builtins.isAttrs val
+    then lib.mapAttrs (n: v: sanitizeForJson v) val
+    else if builtins.isList val
+    then builtins.map sanitizeForJson val
+    else if builtins.isFunction val
+    then "function"
+    else val;
+
+  /* Returns various tools to debug a crate. */
+  debugCrate = { packageId, target ? defaultTarget }:
+    assert (builtins.isString packageId);
+    let
+      debug = rec {
+        # The built tree as passed to buildRustCrate.
+        buildTree = buildRustCrateWithFeatures {
+          buildRustCrateForPkgsFunc = _: lib.id;
+          inherit packageId;
+        };
+        sanitizedBuildTree = sanitizeForJson buildTree;
+        dependencyTree = sanitizeForJson
+          (
+            buildRustCrateWithFeatures {
+              buildRustCrateForPkgsFunc = _: crate: {
+                "01_crateName" = crate.crateName or false;
+                "02_features" = crate.features or [ ];
+                "03_dependencies" = crate.dependencies or [ ];
+              };
+              inherit packageId;
+            }
+          );
+        mergedPackageFeatures = mergePackageFeatures {
+          features = rootFeatures;
+          inherit packageId target;
+        };
+        diffedDefaultPackageFeatures = diffDefaultPackageFeatures {
+          inherit packageId target;
+        };
+      };
+    in
+    { internal = debug; };
+
+  /* Returns differences between cargo default features and crate2nix default
+    features.
+
+    This is useful for verifying the feature resolution in crate2nix.
+  */
+  diffDefaultPackageFeatures =
+    { crateConfigs ? crates
+    , packageId
+    , target
+    }:
+      assert (builtins.isAttrs crateConfigs);
+      let
+        prefixValues = prefix: lib.mapAttrs (n: v: { "${prefix}" = v; });
+        mergedFeatures =
+          prefixValues
+            "crate2nix"
+            (mergePackageFeatures { inherit crateConfigs packageId target; features = [ "default" ]; });
+        configs = prefixValues "cargo" crateConfigs;
+        combined = lib.foldAttrs (a: b: a // b) { } [ mergedFeatures configs ];
+        onlyInCargo =
+          builtins.attrNames
+            (lib.filterAttrs (n: v: !(v ? "crate2nix") && (v ? "cargo")) combined);
+        onlyInCrate2Nix =
+          builtins.attrNames
+            (lib.filterAttrs (n: v: (v ? "crate2nix") && !(v ? "cargo")) combined);
+        differentFeatures = lib.filterAttrs
+          (
+            n: v:
+              (v ? "crate2nix")
+              && (v ? "cargo")
+              && (v.crate2nix.features or [ ]) != (v."cargo".resolved_default_features or [ ])
+          )
+          combined;
+      in
+      builtins.toJSON {
+        inherit onlyInCargo onlyInCrate2Nix differentFeatures;
+      };
+
+  /* Returns an attrset mapping packageId to the list of enabled features.
+
+    If multiple paths to a dependency enable different features, the
+    corresponding feature sets are merged. Features in rust are additive.
+  */
+  mergePackageFeatures =
+    { crateConfigs ? crates
+    , packageId
+    , rootPackageId ? packageId
+    , features ? rootFeatures
+    , dependencyPath ? [ crates.${packageId}.crateName ]
+    , featuresByPackageId ? { }
+    , target
+      # Adds devDependencies to the crate with rootPackageId.
+    , runTests ? false
+    , ...
+    } @ args:
+      assert (builtins.isAttrs crateConfigs);
+      assert (builtins.isString packageId);
+      assert (builtins.isString rootPackageId);
+      assert (builtins.isList features);
+      assert (builtins.isList dependencyPath);
+      assert (builtins.isAttrs featuresByPackageId);
+      assert (builtins.isAttrs target);
+      assert (builtins.isBool runTests);
+      let
+        crateConfig = crateConfigs."${packageId}" or (builtins.throw "Package not found: ${packageId}");
+        expandedFeatures = expandFeatures (crateConfig.features or { }) features;
+        enabledFeatures = enableFeatures (crateConfig.dependencies or [ ]) expandedFeatures;
+        depWithResolvedFeatures = dependency:
+          let
+            packageId = dependency.packageId;
+            features = dependencyFeatures enabledFeatures dependency;
+          in
+          { inherit packageId features; };
+        resolveDependencies = cache: path: dependencies:
+          assert (builtins.isAttrs cache);
+          assert (builtins.isList dependencies);
+          let
+            enabledDependencies = filterEnabledDependencies {
+              inherit dependencies target;
+              features = enabledFeatures;
+            };
+            directDependencies = map depWithResolvedFeatures enabledDependencies;
+            foldOverCache = op: lib.foldl op cache directDependencies;
+          in
+          foldOverCache
+            (
+              cache: { packageId, features }:
+                let
+                  cacheFeatures = cache.${packageId} or [ ];
+                  combinedFeatures = sortedUnique (cacheFeatures ++ features);
+                in
+                if cache ? ${packageId} && cache.${packageId} == combinedFeatures
+                then cache
+                else
+                  mergePackageFeatures {
+                    features = combinedFeatures;
+                    featuresByPackageId = cache;
+                    inherit crateConfigs packageId target runTests rootPackageId;
+                  }
+            );
+        cacheWithSelf =
+          let
+            cacheFeatures = featuresByPackageId.${packageId} or [ ];
+            combinedFeatures = sortedUnique (cacheFeatures ++ enabledFeatures);
+          in
+          featuresByPackageId // {
+            "${packageId}" = combinedFeatures;
+          };
+        cacheWithDependencies =
+          resolveDependencies cacheWithSelf "dep"
+            (
+              crateConfig.dependencies or [ ]
+              ++ lib.optionals
+                (runTests && packageId == rootPackageId)
+                (crateConfig.devDependencies or [ ])
+            );
+        cacheWithAll =
+          resolveDependencies
+            cacheWithDependencies "build"
+            (crateConfig.buildDependencies or [ ]);
+      in
+      cacheWithAll;
+
+  /* Returns the enabled dependencies given the enabled features. */
+  filterEnabledDependencies = { dependencies, features, target }:
+    assert (builtins.isList dependencies);
+    assert (builtins.isList features);
+    assert (builtins.isAttrs target);
+
+    lib.filter
+      (
+        dep:
+        let
+          targetFunc = dep.target or (features: true);
+        in
+        targetFunc { inherit features target; }
+        && (
+          !(dep.optional or false)
+          || builtins.any (doesFeatureEnableDependency dep) features
+        )
+      )
+      dependencies;
+
+  /* Returns whether the given feature should enable the given dependency. */
+  doesFeatureEnableDependency = { name, rename ? null, ... }: feature:
+    let
+      prefix = "${name}/";
+      len = builtins.stringLength prefix;
+      startsWithPrefix = builtins.substring 0 len feature == prefix;
+    in
+    (rename == null && feature == name)
+    || (rename != null && rename == feature)
+    || startsWithPrefix;
+
+  /* Returns the expanded features for the given inputFeatures by applying the
+    rules in featureMap.
+
+    featureMap is an attribute set which maps feature names to lists of further
+    feature names to enable in case this feature is selected.
+  */
+  expandFeatures = featureMap: inputFeatures:
+    assert (builtins.isAttrs featureMap);
+    assert (builtins.isList inputFeatures);
+    let
+      expandFeature = feature:
+        assert (builtins.isString feature);
+        [ feature ] ++ (expandFeatures featureMap (featureMap."${feature}" or [ ]));
+      outFeatures = lib.concatMap expandFeature inputFeatures;
+    in
+    sortedUnique outFeatures;
+
+  /* This function adds optional dependencies as features if they are enabled
+    indirectly by dependency features. This function mimics Cargo's behavior
+    described in a note at:
+    https://doc.rust-lang.org/nightly/cargo/reference/features.html#dependency-features
+  */
+  enableFeatures = dependencies: features:
+    assert (builtins.isList features);
+    assert (builtins.isList dependencies);
+    let
+      additionalFeatures = lib.concatMap
+        (
+          dependency:
+            assert (builtins.isAttrs dependency);
+            let
+              enabled = builtins.any (doesFeatureEnableDependency dependency) features;
+            in
+            if (dependency.optional or false) && enabled then [ dependency.name ] else [ ]
+        )
+        dependencies;
+    in
+    sortedUnique (features ++ additionalFeatures);
+
+  /*
+    Returns the actual features for the given dependency.
+
+    features: The features of the crate that refers this dependency.
+  */
+  dependencyFeatures = features: dependency:
+    assert (builtins.isList features);
+    assert (builtins.isAttrs dependency);
+    let
+      defaultOrNil =
+        if dependency.usesDefaultFeatures or true
+        then [ "default" ]
+        else [ ];
+      explicitFeatures = dependency.features or [ ];
+      additionalDependencyFeatures =
+        let
+          dependencyPrefix = (dependency.rename or dependency.name) + "/";
+          dependencyFeatures =
+            builtins.filter (f: lib.hasPrefix dependencyPrefix f) features;
+        in
+        builtins.map (lib.removePrefix dependencyPrefix) dependencyFeatures;
+    in
+    defaultOrNil ++ explicitFeatures ++ additionalDependencyFeatures;
+
+  /* Sorts and removes duplicates from a list of strings. */
+  sortedUnique = features:
+    assert (builtins.isList features);
+    assert (builtins.all builtins.isString features);
+    let
+      outFeaturesSet = lib.foldl (set: feature: set // { "${feature}" = 1; }) { } features;
+      outFeaturesUnique = builtins.attrNames outFeaturesSet;
+    in
+    builtins.sort (a: b: a < b) outFeaturesUnique;
+
+  deprecationWarning = message: value:
+    if strictDeprecation
+    then builtins.throw "strictDeprecation enabled, aborting: ${message}"
+    else builtins.trace message value;
+
+  #
+  # crate2nix/default.nix (excerpt end)
+  #
+  };
+}
+
diff --git a/pkgs/servers/search/meilisearch/crate-hashes.json b/pkgs/servers/search/meilisearch/crate-hashes.json
new file mode 100644
index 00000000000..4ee1c270688
--- /dev/null
+++ b/pkgs/servers/search/meilisearch/crate-hashes.json
@@ -0,0 +1,13 @@
+{
+  "actix-cors 0.6.0-beta.1 (git+https://github.com/MarinPostma/actix-extras.git?rev=2dac1a4#2dac1a421619bf7b386dea63d3ae25a3bc4abc43)": "0ny03ibf8vvdvcmcvzlvngx80rvmh47bx517iqc5wh74yzdmdlsn",
+  "actix-web-static-files 3.0.5 (git+https://github.com/MarinPostma/actix-web-static-files.git?rev=6db8c3e#6db8c3e2940d61659581492b5e9c9b9062567613)": "1q00s1w2ry6kl7j4bn4q1xqpdn90sc3icjm2wml8fn4rszamhnqy",
+  "assert-json-diff 1.0.1 (git+https://github.com/qdequele/assert-json-diff?branch=master#9012a0c8866d0f2db0ef9a6242e4a19d1e8c67e4)": "1inv5y75acrw0vhpsc32rh5h0701vnm7c4lcsqcdzd8sdy76cisl",
+  "grenad 0.1.0 (git+https://github.com/Kerollmops/grenad.git?rev=3adcb26#3adcb267dcbc590c7da10eb5f887a254865b3dbe)": "03zzi59yk2rgasdzsf7rgz26vpk5060vlfskls9cb556wiizh6cl",
+  "heed 0.12.0 (git+https://github.com/Kerollmops/heed?tag=v0.12.1#8e5dc6d71c8166a8d7d0db059e6e51478942b551)": "09h9i693jiy3ybvc5acj8giszsv3kchpaxs4ld2ha81zxcmmfkrw",
+  "heed-traits 0.7.0 (git+https://github.com/Kerollmops/heed?tag=v0.12.1#8e5dc6d71c8166a8d7d0db059e6e51478942b551)": "09h9i693jiy3ybvc5acj8giszsv3kchpaxs4ld2ha81zxcmmfkrw",
+  "heed-types 0.7.2 (git+https://github.com/Kerollmops/heed?tag=v0.12.1#8e5dc6d71c8166a8d7d0db059e6e51478942b551)": "09h9i693jiy3ybvc5acj8giszsv3kchpaxs4ld2ha81zxcmmfkrw",
+  "lmdb-rkv-sys 0.15.0 (git+https://github.com/meilisearch/lmdb-rs#d0b50d02938ee84e4e4372697ea991fe2a4cae3b)": "0pqar429y4qzxmyr6daw32syvggm4dk7cs7g01lp6f8a6cvbbwkc",
+  "meilisearch-tokenizer 0.2.5 (git+https://github.com/meilisearch/tokenizer.git?tag=v0.2.5#c0b5cf741ed9485147f2cbe523f2214d4fa4c395)": "0hvf92z24adqwhh81r9arirhrvgyp1wva9g2wsrir4xqvaqdzdr5",
+  "milli 0.10.2 (git+https://github.com/meilisearch/milli.git?tag=v0.10.2#879d5e8799836d93f8995810965b6797be4f69d1)": "09gdf4mwrn3ka1iqh3h33b86p68c8ichkkkd4231igl11wxj91d1",
+  "pest 2.1.3 (git+https://github.com/pest-parser/pest.git?rev=51fd1d49f1041f7839975664ef71fe15c7dcaf67#51fd1d49f1041f7839975664ef71fe15c7dcaf67)": "1l2ixz723f58ksdm0j12z9zw5cnap0fhcd5kbhbz5ndazy8sn5rf"
+}
diff --git a/pkgs/servers/search/meilisearch/default.nix b/pkgs/servers/search/meilisearch/default.nix
index 4ad1d78eb50..5a6b6342fa3 100644
--- a/pkgs/servers/search/meilisearch/default.nix
+++ b/pkgs/servers/search/meilisearch/default.nix
@@ -1,29 +1,48 @@
-{ lib, stdenv
-, rustPlatform
+{ lib
+, stdenv
+, buildRustCrate
+, defaultCrateOverrides
 , fetchFromGitHub
-, IOKit
 , Security
+, features ? [ ]
 }:
 
-rustPlatform.buildRustPackage rec {
-  pname = "meilisearch";
-  version = "0.9.0";
-
+let
+  version = "0.21.1";
   src = fetchFromGitHub {
     owner = "meilisearch";
     repo = "MeiliSearch";
     rev = "v${version}";
-    sha256 = "00i5vsbcyrbsvhr5n1b3pxa87v0kfw6pg931i2kzyf4wh021k6sw";
+    sha256 = "sha256-wyyhTNhVw8EJhahstLK+QuEhufQC68rMpw/ngK8FL8Y=";
   };
-
-  cargoSha256 = "1icxpragn69c95i5gyx0b07gw4h82r8fsv0nvns0v8dxqisz877k";
-
-  buildInputs = lib.optionals stdenv.isDarwin [ IOKit Security ];
-
-  meta = with lib; {
-    description = "Ultra relevant and instant full-text search API";
-    homepage = "https://meilisearch.com/";
-    license = licenses.mit;
-    maintainers = with maintainers; [ Br1ght0ne ];
+  customBuildRustCrateForPkgs = pkgs: buildRustCrate.override {
+    defaultCrateOverrides = defaultCrateOverrides // {
+      meilisearch-http = attrs: {
+        src = "${src}/meilisearch-http";
+        buildInputs = lib.optionals stdenv.isDarwin [ Security ];
+      };
+      meilisearch-error = attrs: {
+        src = "${src}/meilisearch-error";
+      };
+    };
+  };
+  cargo_nix = import ./Cargo.nix {
+    nixpkgs = ../../../..;
+    buildRustCrateForPkgs = customBuildRustCrateForPkgs;
   };
+  meilisearch-http = cargo_nix.workspaceMembers."meilisearch-http".build.override {
+    inherit features;
+  };
+in
+stdenv.mkDerivation {
+  pname = "meilisearch";
+  inherit version src;
+  dontUnpack = true;
+  dontBuild = true;
+  installPhase = ''
+    mkdir -p $out/bin
+    cp ${meilisearch-http}/bin/meilisearch $out/bin/meilisearch
+  '';
+  dontCheck = true;
+  dontFixup = true;
 }
diff --git a/pkgs/servers/search/meilisearch/unify-pest-dependency-version.patch b/pkgs/servers/search/meilisearch/unify-pest-dependency-version.patch
new file mode 100644
index 00000000000..4569aa1c538
--- /dev/null
+++ b/pkgs/servers/search/meilisearch/unify-pest-dependency-version.patch
@@ -0,0 +1,74 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index e92c0ed0..63bb0996 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1700,7 +1700,7 @@ dependencies = [
+  "obkv",
+  "once_cell",
+  "ordered-float",
+- "pest 2.1.3 (git+https://github.com/pest-parser/pest.git?rev=51fd1d49f1041f7839975664ef71fe15c7dcaf67)",
++ "pest",
+  "pest_derive",
+  "rayon",
+  "roaring",
+@@ -1939,15 +1939,6 @@ version = "2.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
+ 
+-[[package]]
+-name = "pest"
+-version = "2.1.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "10f4872ae94d7b90ae48754df22fd42ad52ce740b8f370b03da4835417403e53"
+-dependencies = [
+- "ucd-trie",
+-]
+-
+ [[package]]
+ name = "pest"
+ version = "2.1.3"
+@@ -1962,7 +1953,7 @@ version = "2.1.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "833d1ae558dc601e9a60366421196a8d94bc0ac980476d0b67e1d0988d72b2d0"
+ dependencies = [
+- "pest 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "pest",
+  "pest_generator",
+ ]
+ 
+@@ -1972,7 +1963,7 @@ version = "2.1.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "99b8db626e31e5b81787b9783425769681b347011cc59471e33ea46d2ea0cf55"
+ dependencies = [
+- "pest 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "pest",
+  "pest_meta",
+  "proc-macro2 1.0.27",
+  "quote 1.0.9",
+@@ -1986,7 +1977,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "54be6e404f5317079812fc8f9f5279de376d8856929e21c184ecf6bbd692a11d"
+ dependencies = [
+  "maplit",
+- "pest 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
++ "pest",
+  "sha-1 0.8.2",
+ ]
+ 
+diff --git a/Cargo.toml b/Cargo.toml
+index a1dca038..405f210a 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -1,8 +1,9 @@
+ [workspace]
+-members = [
+-    "meilisearch-http",
+-    "meilisearch-error",
+-]
++members = ["meilisearch-http", "meilisearch-error"]
++resolver = "2"
+ 
+ [profile.release]
+ debug = true
++
++[patch.crates-io]
++pest = { git = "https://github.com/pest-parser/pest.git", rev = "51fd1d49f1041f7839975664ef71fe15c7dcaf67" }
diff --git a/pkgs/servers/sql/materialize/default.nix b/pkgs/servers/sql/materialize/default.nix
index f2c6d59bd2a..184c3cc1ebc 100644
--- a/pkgs/servers/sql/materialize/default.nix
+++ b/pkgs/servers/sql/materialize/default.nix
@@ -40,17 +40,17 @@ let
 in
 rustPlatform.buildRustPackage rec {
   pname = "materialize";
-  version = "0.8.1";
-  rev = "ef996c54db7c9504690b9f230a4a676ae1fb617f";
+  version = "0.8.3";
+  rev = "3e47d280945f0ddbdc263fc643f067649f66eda1";
 
   src = fetchFromGitHub {
     owner = "MaterializeInc";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1lrv0q191rhdqk316557qk2a6b00vrf07j1g63ri6mp8ad1g8gk3";
+    sha256 = "15635hcw04nms133k9l5582xbk7frc86nka91yaafl63q6pwbdvg";
   };
 
-  cargoSha256 = "0fx7m1ci4zak7sm71kdiaj2l29rlqax15hd424i9yn4aj1bd358b";
+  cargoSha256 = "1fxqjhjs4bqq6nzax7xrhwjpv57dk90iw9fl8ilp41wzg7yvyhcm";
 
   nativeBuildInputs = [ cmake perl pkg-config ]
     # Provides the mig command used by the krb5-src build script
@@ -86,7 +86,7 @@ rustPlatform.buildRustPackage rec {
     homepage    = "https://materialize.com";
     description = "A streaming SQL materialized view engine for real-time applications";
     license     = licenses.bsl11;
-    platforms   = [ "x86_64-linux" "x86_64-darwin" ];
+    platforms   = [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" ];
     maintainers = [ maintainers.petrosagg ];
   };
 }
diff --git a/pkgs/servers/web-apps/lemmy/default.nix b/pkgs/servers/web-apps/lemmy/default.nix
index e9b6eb11629..c07865688f9 100644
--- a/pkgs/servers/web-apps/lemmy/default.nix
+++ b/pkgs/servers/web-apps/lemmy/default.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "lemmy-server";
-  version = "0.11.2";
+  version = "0.11.3";
 
   src = fetchFromGitHub {
     owner = "LemmyNet";
     repo = "lemmy";
     rev = version;
-    sha256 = "sha256-wDRBeAYjPpAd3DL99fH4Yng994hGmAmxlBqzOeXTP88=";
+    sha256 = "sha256-AFVipxzKwNiillVmMA+Q7nMKajN9mzw37mBpqzf+XpM=";
   };
 
-  cargoSha256 = "sha256-7wF5mUjSeJvCNLZcR6XB31RX2RLOOEyTGpOQxg+NcWk=";
+  cargoSha256 = "sha256-nxuynzQRUqne1KZIvP152afWbG2Zb9zyCqy7Bx4PeJ8=";
 
   buildInputs = [ postgresql ]
     ++ lib.optionals stdenv.isDarwin [ libiconv Security ];
@@ -32,7 +32,7 @@ rustPlatform.buildRustPackage rec {
   OPENSSL_INCLUDE_DIR = "${openssl.dev}/include";
 
   meta = with lib; {
-    description = "Ultra relevant and instant full-text search API";
+    description = "🐀 Building a federated alternative to reddit in rust";
     homepage = "https://join-lemmy.org/";
     license = licenses.agpl3Only;
     maintainers = with maintainers; [ happysalada ];
diff --git a/pkgs/shells/zsh/default.nix b/pkgs/shells/zsh/default.nix
index 71f526525e4..92eebfd9544 100644
--- a/pkgs/shells/zsh/default.nix
+++ b/pkgs/shells/zsh/default.nix
@@ -18,6 +18,11 @@ stdenv.mkDerivation {
     sha256 = "09yyaadq738zlrnlh1hd3ycj1mv3q5hh4xl1ank70mjnqm6bbi6w";
   };
 
+  patches = [
+    # fix location of timezone data for TZ= completion
+    ./tz_completion.patch
+  ];
+
   buildInputs = [ ncurses pcre ];
 
   configureFlags = [
diff --git a/pkgs/shells/zsh/tz_completion.patch b/pkgs/shells/zsh/tz_completion.patch
new file mode 100644
index 00000000000..01977828129
--- /dev/null
+++ b/pkgs/shells/zsh/tz_completion.patch
@@ -0,0 +1,14 @@
+On NixOS, timezone data is located at /etc/zoneinfo
+diff --git a/Completion/Unix/Type/_time_zone b/Completion/Unix/Type/_time_zone
+index cd924bbc7..5d683291b 100644
+--- a/Completion/Unix/Type/_time_zone
++++ b/Completion/Unix/Type/_time_zone
+@@ -3,7 +3,7 @@
+ local expl
+ 
+ if (( ! $+_zoneinfo_dirs )); then
+-  _zoneinfo_dirs=( /usr/{share,lib,share/lib}/{zoneinfo*,locale/TZ}(/) )
++  _zoneinfo_dirs=( /etc/zoneinfo /usr/{share,lib,share/lib}/{zoneinfo*,locale/TZ}(/) )
+ fi
+ 
+ _wanted time-zones expl 'time zone' _files -W _zoneinfo_dirs "$@" -
diff --git a/pkgs/tools/admin/salt/default.nix b/pkgs/tools/admin/salt/default.nix
index cd4abc51bcf..9e411e1ae3a 100644
--- a/pkgs/tools/admin/salt/default.nix
+++ b/pkgs/tools/admin/salt/default.nix
@@ -7,11 +7,11 @@
 }:
 python3.pkgs.buildPythonApplication rec {
   pname = "salt";
-  version = "3003.2";
+  version = "3003.3";
 
   src = python3.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "c8hsRLF22M/cAzux5C5P3I3TQkgz+qLqDQk4+hc4Vqk=";
+    sha256 = "pvnIyLXiYA6oYgtKZzcd4XYRvrT42X5LubCzCKN+0eI=";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
diff --git a/pkgs/tools/filesystems/ntfs-3g/default.nix b/pkgs/tools/filesystems/ntfs-3g/default.nix
index 89ef27827a1..de110f61dd8 100644
--- a/pkgs/tools/filesystems/ntfs-3g/default.nix
+++ b/pkgs/tools/filesystems/ntfs-3g/default.nix
@@ -5,7 +5,7 @@
 
 stdenv.mkDerivation rec {
   pname = "ntfs3g";
-  version = "2017.3.23";
+  version = "2021.8.22";
 
   outputs = [ "out" "dev" "man" "doc" ];
 
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://tuxera.com/opensource/ntfs-3g_ntfsprogs-${version}.tgz";
-    sha256 = "1mb228p80hv97pgk3myyvgp975r9mxq56c6bdn1n24kngcfh4niy";
+    sha256 = "55b883aa05d94b2ec746ef3966cb41e66bed6db99f22ddd41d1b8b94bb202efb";
   };
 
   patchPhase = ''
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
     '';
 
   meta = with lib; {
-    homepage = "https://www.tuxera.com/community/open-source-ntfs-3g/";
+    homepage = "https://github.com/tuxera/ntfs-3g";
     description = "FUSE-based NTFS driver with full write support";
     maintainers = with maintainers; [ dezgeg ];
     platforms = with platforms; darwin ++ linux;
diff --git a/pkgs/tools/misc/shadowenv/default.nix b/pkgs/tools/misc/shadowenv/default.nix
index 07ad8c719ff..79075dcc8a2 100644
--- a/pkgs/tools/misc/shadowenv/default.nix
+++ b/pkgs/tools/misc/shadowenv/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "shadowenv";
-  version = "2.0.4";
+  version = "2.0.5";
 
   src = fetchFromGitHub {
     owner = "Shopify";
     repo = pname;
     rev = version;
-    sha256 = "sha256-BXCIb91EOpu/GUVvmFZbycuWYAS1n5Sxg5OiYx5rlPA=";
+    sha256 = "sha256-MPky0ZB7yfl/gOPThx1BpRoTgvY7mkLaoqnvGKPvSPo=";
   };
 
-  cargoSha256 = "sha256-Hn+128ZQljTroebDQBBNynSq7WTZLpB5sdA2Gz54pOU=";
+  cargoSha256 = "sha256-reVw8YkKi+EMDk0Bva2Ugp72VhAYB6axHonkr9Kdos4=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/tools/misc/tealdeer/default.nix b/pkgs/tools/misc/tealdeer/default.nix
index 985f2dccd68..e6b53e3c758 100644
--- a/pkgs/tools/misc/tealdeer/default.nix
+++ b/pkgs/tools/misc/tealdeer/default.nix
@@ -40,5 +40,6 @@ rustPlatform.buildRustPackage rec {
     homepage = "https://github.com/dbrgn/tealdeer";
     maintainers = with maintainers; [ davidak ];
     license = with licenses; [ asl20 mit ];
+    mainProgram = "tldr";
   };
 }
diff --git a/pkgs/tools/misc/triehash/default.nix b/pkgs/tools/misc/triehash/default.nix
new file mode 100644
index 00000000000..b916214fab5
--- /dev/null
+++ b/pkgs/tools/misc/triehash/default.nix
@@ -0,0 +1,48 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, perlPackages
+}:
+
+stdenv.mkDerivation rec {
+  pname = "triehash";
+  version = "0.3";
+
+  src = fetchFromGitHub {
+    owner = "julian-klode";
+    repo = pname;
+    rev = "debian/0.3-3";
+    hash = "sha256-LxVcYj2WKHbhNu5x/DFkxQPOYrVkNvwiE/qcODq52Lc=";
+  };
+
+  nativeBuildInputs = [
+    perlPackages.perl
+  ];
+
+  postPatch = ''
+    patchShebangs triehash.pl
+  '';
+
+  dontConfigure = true;
+
+  dontBuild = true;
+
+  installPhase = ''
+    runHook preInstall
+
+    install -d $out/bin $out/share/doc/${pname}/ $out/share/${pname}/
+    install triehash.pl $out/bin/triehash
+    install README.md $out/share/doc/${pname}/
+    cp -r tests/ $out/share/${pname}/tests/
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/julian-klode/triehash";
+    description = "Order-preserving minimal perfect hash function generator";
+    license = with licenses; mit;
+    maintainers = with maintainers; [ AndersonTorres ];
+    platforms = perlPackages.perl.meta.platforms;
+  };
+}
diff --git a/pkgs/tools/misc/yt-dlp/default.nix b/pkgs/tools/misc/yt-dlp/default.nix
index ac6d841c725..9cb2d1dea0d 100644
--- a/pkgs/tools/misc/yt-dlp/default.nix
+++ b/pkgs/tools/misc/yt-dlp/default.nix
@@ -1,6 +1,13 @@
-{ lib, buildPythonPackage, fetchPypi
-, ffmpeg, rtmpdump, phantomjs2, atomicparsley, pycryptodome
-, websockets, mutagen
+{ lib
+, buildPythonPackage
+, fetchPypi
+, ffmpeg
+, rtmpdump
+, phantomjs2
+, atomicparsley
+, pycryptodome
+, websockets
+, mutagen
 , ffmpegSupport ? true
 , rtmpSupport ? true
 , phantomjsSupport ? false
@@ -12,12 +19,12 @@ buildPythonPackage rec {
   # The websites yt-dlp deals with are a very moving target. That means that
   # downloads break constantly. Because of that, updates should always be backported
   # to the latest stable release.
-  version = "2021.08.10";
+  version = "2021.9.2";
 
   src = fetchPypi {
     inherit pname;
     version = builtins.replaceStrings [ ".0" ] [ "." ] version;
-    sha256 = "8da1bf4dc4641d37d137443c4783109ee8393caad5e0d270d9d1d534e8f25240";
+    sha256 = "sha256-yn53zbBVuiaD31sIB6qxweEgy+AsjzXZ0yk9lNva6mM=";
   };
 
   # build_lazy_extractors assumes this directory exists but it is not present in
@@ -33,12 +40,14 @@ buildPythonPackage rec {
   # - ffmpeg: post-processing & transcoding support
   # - rtmpdump: download files over RTMP
   # - atomicparsley: embedding thumbnails
-  makeWrapperArgs = let
+  makeWrapperArgs =
+    let
       packagesToBinPath = [ atomicparsley ]
         ++ lib.optional ffmpegSupport ffmpeg
         ++ lib.optional rtmpSupport rtmpdump
         ++ lib.optional phantomjsSupport phantomjs2;
-    in [ ''--prefix PATH : "${lib.makeBinPath packagesToBinPath}"'' ];
+    in
+    [ ''--prefix PATH : "${lib.makeBinPath packagesToBinPath}"'' ];
 
   setupPyBuildFlags = [
     "build_lazy_extractors"
diff --git a/pkgs/tools/networking/corerad/default.nix b/pkgs/tools/networking/corerad/default.nix
index 8ba8109f266..81fe5cacda2 100644
--- a/pkgs/tools/networking/corerad/default.nix
+++ b/pkgs/tools/networking/corerad/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "corerad";
-  version = "0.3.3";
+  version = "0.3.4";
 
   src = fetchFromGitHub {
     owner = "mdlayher";
     repo = "corerad";
     rev = "v${version}";
-    sha256 = "1xfqjxygf6r5wbf3brilx4d4hm0h518zaadmmzvkmbbz6w0fyl0k";
+    sha256 = "0sf2r4q57hwdakv0b4skn76b0xy7bwj2j9rpj6frs5fkk6gsi6sm";
   };
 
-  vendorSha256 = "0ydyfdx9syrv719knwv64srfx4d1m9pzkivfc3q188bx5qx67pjw";
+  vendorSha256 = "123f9y1pfayfd5amkw5b8jzi8dbn7a16kbf7lzbmw69c1gj4gx9z";
 
   doCheck = false;
 
diff --git a/pkgs/tools/networking/inetutils/default.nix b/pkgs/tools/networking/inetutils/default.nix
index 523c065368f..f5c9ff00d92 100644
--- a/pkgs/tools/networking/inetutils/default.nix
+++ b/pkgs/tools/networking/inetutils/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "inetutils";
-  version = "2.0";
+  version = "2.2";
 
   src = fetchurl {
     url = "mirror://gnu/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-5XPVZuVTk5QAmYYuf4mUFkoO0S9ahsM0U4CEK9wSRyI=";
+    sha256 = "sha256-1Uf2kXLfc6/vaRoPeIYoD9eBrOoo3vT/S0shIIaonYA";
   };
 
   outputs = ["out" "apparmor"];
@@ -16,8 +16,6 @@ stdenv.mkDerivation rec {
   patches = [
     # https://git.congatec.com/yocto/meta-openembedded/commit/3402bfac6b595c622e4590a8ff5eaaa854e2a2a3
     ./inetutils-1_9-PATH_PROCNET_DEV.patch
-    ./whois-Update-ORG-TLD-server.patch
-    ./whois-Update-Indian-TLD-server.patch
   ];
 
   nativeBuildInputs = [ help2man perl /* for `whois' */ ];
diff --git a/pkgs/tools/networking/inetutils/whois-Update-Indian-TLD-server.patch b/pkgs/tools/networking/inetutils/whois-Update-Indian-TLD-server.patch
deleted file mode 100644
index 969b24436fb..00000000000
--- a/pkgs/tools/networking/inetutils/whois-Update-Indian-TLD-server.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 1d64e6ae8fa1ef685f3f54c070eb47e7a45895eb Mon Sep 17 00:00:00 2001
-From: Ashish SHUKLA <ashish.is@lostca.se>
-Date: Sun, 25 Apr 2021 08:17:52 +0530
-Subject: [PATCH] whois: Update whois server for .IN
-
----
- whois/tld_serv_list | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/whois/tld_serv_list b/whois/tld_serv_list
-index d9257f36..41083c18 100644
---- a/whois/tld_serv_list
-+++ b/whois/tld_serv_list
-@@ -151,7 +151,7 @@
- .ie	whois.domainregistry.ie
- .il	whois.isoc.org.il
- .im	whois.nic.im
--.in	whois.inregistry.net
-+.in	whois.registry.in
- .io	whois.nic.io
- #.iq			# NIC?
- .ir	whois.nic.ir
--- 
-2.31.1
-
diff --git a/pkgs/tools/networking/inetutils/whois-Update-ORG-TLD-server.patch b/pkgs/tools/networking/inetutils/whois-Update-ORG-TLD-server.patch
deleted file mode 100644
index dd45ec6ebf7..00000000000
--- a/pkgs/tools/networking/inetutils/whois-Update-ORG-TLD-server.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From a7a517ca23682b160a2a3be47f1f3f262f8f306f Mon Sep 17 00:00:00 2001
-From: Ashish SHUKLA <ashish.is@lostca.se>
-Date: Sun, 25 Apr 2021 08:07:52 +0530
-Subject: [PATCH 1/2] whois: .ORG is not handled by InterNIC anymore
-
-See https://www.iana.org/domains/root/db/org.html
----
- whois/data.h        | 1 -
- whois/tld_serv_list | 1 +
- 2 files changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/whois/data.h b/whois/data.h
-index d1eb10ad..82e22b6f 100644
---- a/whois/data.h
-+++ b/whois/data.h
-@@ -68,7 +68,6 @@ const char *rwhois_servers[] = {
- const char *gtlds[] = {
-   ".com",
-   ".net",
--  ".org",
-   ".edu",
-   NULL
- };
-diff --git a/whois/tld_serv_list b/whois/tld_serv_list
-index ad7b9826..d9257f36 100644
---- a/whois/tld_serv_list
-+++ b/whois/tld_serv_list
-@@ -219,6 +219,7 @@
- .nu	whois.nic.nu
- .nz	whois.srs.net.nz
- #.om	NONE		# NIC? http://www.gto.net.om
-+.org	whois.pir.org
- .pa	WEB http://www.nic.pa
- #.pe	whois.rcp.net.pe	# kero.yachay.pe valid 2011-03-10
- .pe	kero.yachay.pe
--- 
-2.31.1
-
diff --git a/pkgs/tools/package-management/apt/default.nix b/pkgs/tools/package-management/apt/default.nix
index 86982bf7f3a..d19315a89f4 100644
--- a/pkgs/tools/package-management/apt/default.nix
+++ b/pkgs/tools/package-management/apt/default.nix
@@ -1,50 +1,84 @@
-{ stdenv, lib, fetchurl, pkg-config, cmake, perlPackages, curl, gtest
-, gnutls, libtasn1, xz, bzip2, lz4, zstd, libseccomp, udev
-, db, dpkg, libxslt, docbook_xsl, docbook_xml_dtd_45
-
-# used when WITH_DOC=ON
-, w3m
-, doxygen
-
-# used when WITH_NLS=ON
-, gettext
-
-# opts
-, withDocs ? true
-, withNLS ? true
+{ lib
+, stdenv
+, fetchurl
+, bzip2
+, cmake
+, curl
+, db
+, docbook_xml_dtd_45
+, docbook_xsl
+, dpkg
+, gnutls
+, gtest
+, libgcrypt
+, libseccomp
+, libtasn1
+, libxslt
+, lz4
+, perlPackages
+, pkg-config
+, triehash
+, udev
+, xxHash
+, xz
+, zstd
+, withDocs ? true , w3m, doxygen
+, withNLS ? true , gettext
 }:
 
 stdenv.mkDerivation rec {
   pname = "apt";
-  version = "1.8.4";
+  version = "2.3.8";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/a/apt/apt_${version}.tar.xz";
-    sha256 = "0gn4srqaaym85gc8nldqkv01477kdwr136an2nlpbdrsbx3y83zl";
+    hash = "sha256-SFrxQwx14xWLcV5EJNv5bRtWQdxNzMUPVxssd5qDfyw=";
   };
 
-  nativeBuildInputs = [ pkg-config cmake gtest libxslt.bin ];
+  nativeBuildInputs = [
+    cmake
+    gtest
+    libxslt.bin
+    pkg-config
+    triehash
+  ];
 
   buildInputs = [
-    perlPackages.perl curl gnutls libtasn1 xz bzip2 lz4 zstd libseccomp udev db dpkg
+    bzip2
+    curl
+    db
+    dpkg
+    gnutls
+    libgcrypt
+    libseccomp
+    libtasn1
+    lz4
+    perlPackages.perl
+    udev
+    xxHash
+    xz
+    zstd
   ] ++ lib.optionals withDocs [
-    doxygen perlPackages.Po4a w3m docbook_xml_dtd_45
+    docbook_xml_dtd_45
+    doxygen
+    perlPackages.Po4a
+    w3m
   ] ++ lib.optionals withNLS [
     gettext
   ];
 
   cmakeFlags = [
-    "-DBERKELEY_DB_INCLUDE_DIRS=${db.dev}/include"
-    "-DGNUTLS_INCLUDE_DIR=${gnutls.dev}/include"
+    "-DBERKELEY_INCLUDE_DIRS=${db.dev}/include"
     "-DDOCBOOK_XSL=${docbook_xsl}/share/xml/docbook-xsl"
+    "-DGNUTLS_INCLUDE_DIR=${gnutls.dev}/include"
     "-DROOT_GROUP=root"
-    "-DWITH_DOC=${if withDocs then "ON" else "OFF"}"
     "-DUSE_NLS=${if withNLS then "ON" else "OFF"}"
+    "-DWITH_DOC=${if withDocs then "ON" else "OFF"}"
   ];
 
   meta = with lib; {
-    description = "Command-line package management tools used on Debian-based systems";
     homepage = "https://salsa.debian.org/apt-team/apt";
+    description = "Command-line package management tools used on Debian-based systems";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ cstrahan ];
diff --git a/pkgs/tools/security/exploitdb/default.nix b/pkgs/tools/security/exploitdb/default.nix
index 8f8f174a5e0..b112627656b 100644
--- a/pkgs/tools/security/exploitdb/default.nix
+++ b/pkgs/tools/security/exploitdb/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "exploitdb";
-  version = "2021-09-01";
+  version = "2021-09-03";
 
   src = fetchFromGitHub {
     owner = "offensive-security";
     repo = pname;
     rev = version;
-    sha256 = "sha256-uWKZTtBp1HF7WbQVoZMxNQ2osvw3+RARLAJTwxqRErA=";
+    sha256 = "sha256-9roj5/DfbbN98jy/aO1Ua4pTMxgr4UbqXFicN2ONQgE=";
   };
 
   installPhase = ''
diff --git a/pkgs/tools/security/nmap-formatter/default.nix b/pkgs/tools/security/nmap-formatter/default.nix
new file mode 100644
index 00000000000..3f3835b9649
--- /dev/null
+++ b/pkgs/tools/security/nmap-formatter/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "nmap-formatter";
+  version = "0.2.1";
+
+  src = fetchFromGitHub {
+    owner = "vdjagilev";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1r8l7ajcb436b60ir6xgy53wafk6rw1cil326yg6mhcngz9sazbk";
+  };
+
+  vendorSha256 = "0c1b4iw28qj8iq55lg32xqw69jjdv5ial495j0gz68s17kydbwhb";
+
+  postPatch = ''
+    # Fix hard-coded release
+    substituteInPlace cmd/root.go \
+      --replace "0.2.0" "${version}"
+  '';
+
+  meta = with lib; {
+    description = "Tool that allows you to convert nmap output";
+    homepage = "https://github.com/vdjagilev/nmap-formatter";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index f1c4adce19a..8ea5ac90350 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -387,6 +387,7 @@ mapAliases ({
   keepassx-community = keepassxc; # added 2017-11
   keepassx-reboot = keepassx-community; # added 2017-02-01
   keepassx2-http = keepassx-reboot; # added 2016-10-17
+  kexectools = kexec-tools; # added 2021-09-03
   keybase-go = keybase;  # added 2016-08-24
   kinetic-cpp-client = throw "kinetic-cpp-client has been removed from nixpkgs, as it's abandoned."; # 2020-04-28
   kicad-with-packages3d = kicad; # added 2019-11-25
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 33e1217f707..f188204ed54 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1029,9 +1029,9 @@ with pkgs;
   };
   termite-unwrapped = callPackage ../applications/terminal-emulators/termite { };
 
-  termonad-with-packages = callPackage ../applications/terminal-emulators/termonad {
-    inherit (haskellPackages) ghcWithPackages;
-  };
+  termonad-with-packages = callPackage ../applications/terminal-emulators/termonad { };
+
+  termonad = termonad-with-packages;
 
   termsyn = callPackage ../data/fonts/termsyn { };
 
@@ -1456,7 +1456,7 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) PCSC;
   };
 
-  cozy = callPackage ../applications/audio/cozy-audiobooks { };
+  cozy = callPackage ../applications/audio/cozy { };
 
   cpuid = callPackage ../os-specific/linux/cpuid { };
 
@@ -5438,6 +5438,8 @@ with pkgs;
 
   gitea = callPackage ../applications/version-management/gitea { };
 
+  gokart = callPackage ../development/tools/gokart { };
+
   gl2ps = callPackage ../development/libraries/gl2ps { };
 
   glab = callPackage ../applications/version-management/git-and-tools/glab { };
@@ -6353,7 +6355,7 @@ with pkgs;
 
   keeperrl = callPackage ../games/keeperrl { };
 
-  kexectools = callPackage ../os-specific/linux/kexectools { };
+  kexec-tools = callPackage ../os-specific/linux/kexec-tools { };
 
   keepkey_agent = with python3Packages; toPythonApplication keepkey_agent;
 
@@ -6631,7 +6633,7 @@ with pkgs;
   };
 
   meilisearch = callPackage ../servers/search/meilisearch {
-    inherit (darwin.apple_sdk.frameworks) IOKit Security;
+    inherit (darwin.apple_sdk.frameworks) Security;
   };
 
   memtester = callPackage ../tools/system/memtester { };
@@ -7577,6 +7579,8 @@ with pkgs;
     graphicalSupport = true;
   };
 
+  nmap-formatter = callPackage ../tools/security/nmap-formatter { };
+
   nmapsi4 = libsForQt514.callPackage ../tools/security/nmap/qt.nix { };
 
   nnn = callPackage ../applications/misc/nnn { };
@@ -11481,7 +11485,7 @@ with pkgs;
 
   # Please update doc/languages-frameworks/haskell.section.md, “Our
   # current default compiler is”, if you bump this:
-  haskellPackages = dontRecurseIntoAttrs haskell.packages.ghc8106;
+  haskellPackages = dontRecurseIntoAttrs haskell.packages.ghc8107;
 
   inherit (haskellPackages) ghc;
 
@@ -14381,6 +14385,8 @@ with pkgs;
     lua = lua5;
   } // (config.radare or {}));
 
+  ran = callPackage ../servers/http/ran { };
+
   retry = callPackage ../tools/system/retry { };
 
   rizin = pkgs.callPackage ../development/tools/analysis/rizin { };
@@ -16339,6 +16345,8 @@ with pkgs;
 
   judy = callPackage ../development/libraries/judy { };
 
+  kddockwidgets = libsForQt5.callPackage ../development/libraries/kddockwidgets { };
+
   keybinder = callPackage ../development/libraries/keybinder {
     automake = automake111x;
     lua = lua5_1;
@@ -18562,6 +18570,8 @@ with pkgs;
 
   rubberband = callPackage ../development/libraries/rubberband { };
 
+  rustc-demangle = callPackage ../development/libraries/rustc-demangle { };
+
   s2geometry = callPackage ../development/libraries/s2geometry { };
 
   /*  This package references ghc844, which we no longer have. Unfortunately, I
@@ -19035,6 +19045,8 @@ with pkgs;
 
   tremor = callPackage ../development/libraries/tremor { };
 
+  triehash = callPackage ../tools/misc/triehash { };
+
   trillian = callPackage ../tools/misc/trillian {
     buildGoModule = buildGo115Module;
   };
@@ -24026,6 +24038,8 @@ with pkgs;
 
   docker-distribution = callPackage ../applications/virtualization/docker/distribution.nix { };
 
+  dockfmt = callPackage ../development/tools/dockfmt { };
+
   afterburn = callPackage ../tools/admin/afterburn {};
 
   docker-buildx = callPackage ../applications/virtualization/docker/buildx.nix { };
@@ -29925,6 +29939,8 @@ with pkgs;
     inherit (gnome) zenity;
   };
 
+  protonup = with python3Packages; toPythonApplication protonup;
+
   sdlpop = callPackage ../games/sdlpop { };
 
   stepmania = callPackage ../games/stepmania {
@@ -31448,6 +31464,8 @@ with pkgs;
 
   emu2 = callPackage ../misc/emulators/emu2 { };
 
+  apt = callPackage ../tools/package-management/apt { };
+
   dpkg = callPackage ../tools/package-management/dpkg { };
 
   dumb = callPackage ../misc/dumb { };
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 10455405af4..1490aeda655 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -6,8 +6,8 @@ let
     "ghc865Binary"
     "ghc8102Binary"
     "ghc8102BinaryMinimal"
-    "ghc8105Binary"
-    "ghc8105BinaryMinimal"
+    "ghc8107Binary"
+    "ghc8107BinaryMinimal"
     "integer-simple"
     "native-bignum"
     "ghcHEAD"
@@ -59,11 +59,11 @@ in {
       minimal = true;
     };
 
-    ghc8105Binary = callPackage ../development/compilers/ghc/8.10.5-binary.nix {
+    ghc8107Binary = callPackage ../development/compilers/ghc/8.10.7-binary.nix {
       llvmPackages = pkgs.llvmPackages_11;
     };
 
-    ghc8105BinaryMinimal = callPackage ../development/compilers/ghc/8.10.5-binary.nix {
+    ghc8107BinaryMinimal = callPackage ../development/compilers/ghc/8.10.7-binary.nix {
       llvmPackages = pkgs.llvmPackages_11;
       minimal = true;
     };
@@ -71,7 +71,7 @@ in {
     ghc884 = callPackage ../development/compilers/ghc/8.8.4.nix {
       # the oldest ghc with aarch64-darwin support is 8.10.5
       bootPkgs = if stdenv.isDarwin && stdenv.isAarch64 then
-          packages.ghc8105BinaryMinimal
+          packages.ghc8107BinaryMinimal
         # aarch64 ghc865Binary gets SEGVs due to haskell#15449 or similar
         # Musl bindists do not exist for ghc 8.6.5, so we use 8.10.* for them
         else if stdenv.isAarch64 || stdenv.targetPlatform.isMusl then
@@ -82,10 +82,10 @@ in {
       buildLlvmPackages = buildPackages.llvmPackages_7;
       llvmPackages = pkgs.llvmPackages_7;
     };
-    ghc8106 = callPackage ../development/compilers/ghc/8.10.6.nix {
+    ghc8107 = callPackage ../development/compilers/ghc/8.10.7.nix {
       # the oldest ghc with aarch64-darwin support is 8.10.5
       bootPkgs = if stdenv.isDarwin && stdenv.isAarch64 then
-          packages.ghc8105BinaryMinimal
+          packages.ghc8107BinaryMinimal
         # aarch64 ghc865Binary gets SEGVs due to haskell#15449 or similar
         # Musl bindists do not exist for ghc 8.6.5, so we use 8.10.* for them
         else if stdenv.isAarch64 || stdenv.isAarch32 || stdenv.targetPlatform.isMusl then
@@ -103,7 +103,7 @@ in {
     ghc901 = callPackage ../development/compilers/ghc/9.0.1.nix {
       # the oldest ghc with aarch64-darwin support is 8.10.5
       bootPkgs = if stdenv.isDarwin && stdenv.isAarch64 then
-          packages.ghc8105BinaryMinimal
+          packages.ghc8107BinaryMinimal
         # aarch64 ghc8102Binary exceeds max output size on hydra
         else if stdenv.isAarch64 || stdenv.isAarch32 then
           packages.ghc8102BinaryMinimal
@@ -113,9 +113,27 @@ in {
       buildLlvmPackages = buildPackages.llvmPackages_10;
       llvmPackages = pkgs.llvmPackages_10;
     };
+    ghc921 = callPackage ../development/compilers/ghc/9.2.1.nix {
+      # aarch64 ghc8102Binary exceeds max output size on hydra
+      bootPkgs = if stdenv.isAarch64 || stdenv.isAarch32 then
+          packages.ghc8102BinaryMinimal
+        else
+          packages.ghc8102Binary;
+      inherit (buildPackages.python3Packages) sphinx;
+      # Need to use apple's patched xattr until
+      # https://github.com/xattr/xattr/issues/44 and
+      # https://github.com/xattr/xattr/issues/55 are solved.
+      inherit (buildPackages.darwin) xattr;
+      buildLlvmPackages = buildPackages.llvmPackages_10;
+      llvmPackages = pkgs.llvmPackages_10;
+    };
     ghcHEAD = callPackage ../development/compilers/ghc/head.nix {
       bootPkgs = packages.ghc901; # no binary yet
       inherit (buildPackages.python3Packages) sphinx;
+      # Need to use apple's patched xattr until
+      # https://github.com/xattr/xattr/issues/44 and
+      # https://github.com/xattr/xattr/issues/55 are solved.
+      inherit (buildPackages.darwin) xattr;
       buildLlvmPackages = buildPackages.llvmPackages_10;
       llvmPackages = pkgs.llvmPackages_10;
       libffi = pkgs.libffi;
@@ -166,15 +184,15 @@ in {
       compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { };
       packageSetConfig = bootstrapPackageSet;
     };
-    ghc8105Binary = callPackage ../development/haskell-modules {
-      buildHaskellPackages = bh.packages.ghc8105Binary;
-      ghc = bh.compiler.ghc8105Binary;
+    ghc8107Binary = callPackage ../development/haskell-modules {
+      buildHaskellPackages = bh.packages.ghc8107Binary;
+      ghc = bh.compiler.ghc8107Binary;
       compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { };
       packageSetConfig = bootstrapPackageSet;
     };
-    ghc8105BinaryMinimal = callPackage ../development/haskell-modules {
-      buildHaskellPackages = bh.packages.ghc8105BinaryMinimal;
-      ghc = bh.compiler.ghc8105BinaryMinimal;
+    ghc8107BinaryMinimal = callPackage ../development/haskell-modules {
+      buildHaskellPackages = bh.packages.ghc8107BinaryMinimal;
+      ghc = bh.compiler.ghc8107BinaryMinimal;
       compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { };
       packageSetConfig = bootstrapPackageSet;
     };
@@ -183,9 +201,9 @@ in {
       ghc = bh.compiler.ghc884;
       compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.8.x.nix { };
     };
-    ghc8106 = callPackage ../development/haskell-modules {
-      buildHaskellPackages = bh.packages.ghc8106;
-      ghc = bh.compiler.ghc8106;
+    ghc8107 = callPackage ../development/haskell-modules {
+      buildHaskellPackages = bh.packages.ghc8107;
+      ghc = bh.compiler.ghc8107;
       compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { };
     };
     ghc901 = callPackage ../development/haskell-modules {
@@ -193,6 +211,11 @@ in {
       ghc = bh.compiler.ghc901;
       compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.0.x.nix { };
     };
+    ghc921 = callPackage ../development/haskell-modules {
+      buildHaskellPackages = bh.packages.ghc921;
+      ghc = bh.compiler.ghc921;
+      compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.2.x.nix { };
+    };
     ghcHEAD = callPackage ../development/haskell-modules {
       buildHaskellPackages = bh.packages.ghcHEAD;
       ghc = bh.compiler.ghcHEAD;
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index de99651cca6..419177aa833 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -1373,6 +1373,8 @@ in {
 
   cert-chain-resolver = callPackage ../development/python-modules/cert-chain-resolver { };
 
+  certauth = callPackage ../development/python-modules/certauth { };
+
   certbot = callPackage ../development/python-modules/certbot { };
 
   certbot-dns-cloudflare = callPackage ../development/python-modules/certbot-dns-cloudflare { };
@@ -5698,6 +5700,8 @@ in {
 
   protobuf3-to-dict = callPackage ../development/python-modules/protobuf3-to-dict { };
 
+  protonup = callPackage ../development/python-modules/protonup { };
+
   prov = callPackage ../development/python-modules/prov { };
 
   prox-tv = callPackage ../development/python-modules/prox-tv { };
diff --git a/pkgs/top-level/release-haskell.nix b/pkgs/top-level/release-haskell.nix
index a987dc579dc..26f538ff338 100644
--- a/pkgs/top-level/release-haskell.nix
+++ b/pkgs/top-level/release-haskell.nix
@@ -50,7 +50,7 @@ let
   # list of all compilers to test specific packages on
   all = with compilerNames; [
     ghc884
-    ghc8106
+    ghc8107
     ghc901
   ];
 
@@ -278,14 +278,14 @@ let
       # Test some statically linked packages to catch regressions
       # and get some cache going for static compilation with GHC.
       # Use integer-simple to avoid GMP linking problems (LGPL)
-      pkgsStatic.haskell.packages.integer-simple.ghc8106 =
+      pkgsStatic.haskell.packages.integer-simple.ghc8107 =
         removePlatforms
           [
             "aarch64-linux" # times out on Hydra
             "x86_64-darwin" # TODO: reenable when static libiconv works on darwin
           ]
           {
-            inherit (packagePlatforms pkgs.pkgsStatic.haskell.packages.integer-simple.ghc8106)
+            inherit (packagePlatforms pkgs.pkgsStatic.haskell.packages.integer-simple.ghc8107)
               hello
               lens
               random
@@ -300,12 +300,12 @@ let
       # package sets (like Cabal, jailbreak-cabal) are
       # working as expected.
       cabal-install = all;
-      Cabal_3_6_0_0 = with compilerNames; [ ghc884 ghc8106 ];
+      Cabal_3_6_0_0 = with compilerNames; [ ghc884 ghc8107 ];
       cabal2nix-unstable = all;
       funcmp = all;
       # Doesn't currently work on ghc-9.0:
       # https://github.com/haskell/haskell-language-server/issues/297
-      haskell-language-server = with compilerNames; [ ghc884 ghc8106 ];
+      haskell-language-server = with compilerNames; [ ghc884 ghc8107 ];
       hoogle = all;
       hsdns = all;
       jailbreak-cabal = all;
@@ -379,7 +379,7 @@ let
         constituents = accumulateDerivations [
           jobs.pkgsMusl.haskell.compiler.ghc8102Binary
           jobs.pkgsMusl.haskell.compiler.ghc884
-          jobs.pkgsMusl.haskell.compiler.ghc8106
+          jobs.pkgsMusl.haskell.compiler.ghc8107
           jobs.pkgsMusl.haskell.compiler.ghc901
         ];
       };
@@ -394,9 +394,9 @@ let
           ];
         };
         constituents = accumulateDerivations [
-          jobs.pkgsStatic.haskell.packages.integer-simple.ghc8106.hello
-          jobs.pkgsStatic.haskell.packages.integer-simple.ghc8106.lens
-          jobs.pkgsStatic.haskell.packages.integer-simple.ghc8106.random
+          jobs.pkgsStatic.haskell.packages.integer-simple.ghc8107.hello
+          jobs.pkgsStatic.haskell.packages.integer-simple.ghc8107.lens
+          jobs.pkgsStatic.haskell.packages.integer-simple.ghc8107.random
         ];
       };
     }