about summary refs log tree commit diff
path: root/nixpkgs/pkgs/applications/version-management/gitlab
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/applications/version-management/gitlab')
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/data.json13
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/default.nix191
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/fix-grpc-ar.patch10
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/gitaly/Gemfile42
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock239
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix63
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/gitaly/deps.nix2100
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/gitaly/fix-executable-check.patch13
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/gitaly/gemset.nix927
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix32
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/gitlab-shell/deps.nix714
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/gitlab-shell/remove-hardcoded-locations.patch57
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix36
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/deps.nix1614
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/remove-hardcoded-locations.patch163
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/reset_token.rake43
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile500
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock1411
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix5158
-rwxr-xr-xnixpkgs/pkgs/applications/version-management/gitlab/update.py243
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/yarnPkgs.nix13381
21 files changed, 26950 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/data.json b/nixpkgs/pkgs/applications/version-management/gitlab/data.json
new file mode 100644
index 000000000000..9389934ffc68
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/data.json
@@ -0,0 +1,13 @@
+{
+  "version": "13.0.14",
+  "repo_hash": "15is18x631ifsj4iwmrs1s9lc3i99hwsxxf5v42qldbmsys31l1k",
+  "owner": "gitlab-org",
+  "repo": "gitlab",
+  "rev": "v13.0.14-ee",
+  "passthru": {
+    "GITALY_SERVER_VERSION": "13.0.14",
+    "GITLAB_PAGES_VERSION": "1.18.0",
+    "GITLAB_SHELL_VERSION": "13.2.0",
+    "GITLAB_WORKHORSE_VERSION": "8.31.2"
+  }
+}
\ No newline at end of file
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/default.nix b/nixpkgs/pkgs/applications/version-management/gitlab/default.nix
new file mode 100644
index 000000000000..76127681bbd9
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/default.nix
@@ -0,0 +1,191 @@
+{ stdenv, lib, fetchurl, fetchFromGitLab, bundlerEnv
+, ruby, tzdata, git, nettools, nixosTests, nodejs
+, gitlabEnterprise ? false, callPackage, yarn
+, fixup_yarn_lock, replace
+}:
+
+let
+  data = (builtins.fromJSON (builtins.readFile ./data.json));
+
+  version = data.version;
+  src = fetchFromGitLab {
+    owner = data.owner;
+    repo = data.repo;
+    rev = data.rev;
+    sha256 = data.repo_hash;
+  };
+
+  rubyEnv = bundlerEnv rec {
+    name = "gitlab-env-${version}";
+    inherit ruby;
+    gemdir = ./rubyEnv;
+    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;
+        };
+      };
+    groups = [
+      "default" "unicorn" "ed25519" "metrics" "development" "puma" "test" "kerberos"
+    ];
+    # N.B. omniauth_oauth2_generic and apollo_upload_server both provide a
+    # `console` executable.
+    ignoreCollisions = true;
+  };
+
+  yarnOfflineCache = (callPackage ./yarnPkgs.nix {}).offline_cache;
+
+  assets = stdenv.mkDerivation {
+    pname = "gitlab-assets";
+    inherit version src;
+
+    nativeBuildInputs = [ rubyEnv.wrappedRuby rubyEnv.bundler nodejs yarn git ];
+
+    # Since version 12.6.0, the rake tasks need the location of git,
+    # so we have to apply the location patches here too.
+    patches = [ ./remove-hardcoded-locations.patch ];
+    # One of the patches uses this variable - if it's unset, execution
+    # of rake tasks fails.
+    GITLAB_LOG_PATH = "log";
+    FOSS_ONLY = !gitlabEnterprise;
+
+    configurePhase = ''
+      runHook preConfigure
+
+      # Some rake tasks try to run yarn automatically, which won't work
+      rm lib/tasks/yarn.rake
+
+      # The rake tasks won't run without a basic configuration in place
+      mv config/database.yml.env config/database.yml
+      mv config/gitlab.yml.example config/gitlab.yml
+
+      # Yarn and bundler wants a real home directory to write cache, config, etc to
+      export HOME=$NIX_BUILD_TOP/fake_home
+
+      # Make yarn install packages from our offline cache, not the registry
+      yarn config --offline set yarn-offline-mirror ${yarnOfflineCache}
+
+      # Fixup "resolved"-entries in yarn.lock to match our offline cache
+      ${fixup_yarn_lock}/bin/fixup_yarn_lock yarn.lock
+
+      # fixup_yarn_lock currently doesn't correctly fix the dagre-d3
+      # url, so we have to do it manually
+      ${replace}/bin/replace-literal -f -e '"https://codeload.github.com/dagrejs/dagre-d3/tar.gz/e1a00e5cb518f5d2304a35647e024f31d178e55b"' \
+                                           '"https___codeload.github.com_dagrejs_dagre_d3_tar.gz_e1a00e5cb518f5d2304a35647e024f31d178e55b"' yarn.lock
+
+      yarn install --offline --frozen-lockfile --ignore-scripts --no-progress --non-interactive
+
+      patchShebangs node_modules/
+
+      runHook postConfigure
+    '';
+
+    buildPhase = ''
+      runHook preBuild
+
+      bundle exec rake gettext:po_to_json RAILS_ENV=production NODE_ENV=production
+      bundle exec rake rake:assets:precompile RAILS_ENV=production NODE_ENV=production
+      bundle exec rake webpack:compile RAILS_ENV=production NODE_ENV=production NODE_OPTIONS="--max_old_space_size=3072"
+      bundle exec rake gitlab:assets:fix_urls RAILS_ENV=production NODE_ENV=production
+
+      runHook postBuild
+    '';
+
+    installPhase = ''
+      runHook preInstall
+
+      mv public/assets $out
+
+      runHook postInstall
+    '';
+  };
+in
+stdenv.mkDerivation {
+  name = "gitlab${lib.optionalString gitlabEnterprise "-ee"}-${version}";
+
+  inherit src;
+
+  buildInputs = [
+    rubyEnv rubyEnv.wrappedRuby rubyEnv.bundler tzdata git nettools
+  ];
+
+  patches = [ ./remove-hardcoded-locations.patch ];
+
+  postPatch = ''
+    ${lib.optionalString (!gitlabEnterprise) ''
+      # Remove all proprietary components
+      rm -rf ee
+    ''}
+
+    # For reasons I don't understand "bundle exec" ignores the
+    # RAILS_ENV causing tests to be executed that fail because we're
+    # not installing development and test gems above. Deleting the
+    # tests works though.
+    rm lib/tasks/test.rake
+
+    rm config/initializers/gitlab_shell_secret_token.rb
+
+    sed -i '/ask_to_continue/d' lib/tasks/gitlab/two_factor.rake
+    sed -ri -e '/log_level/a config.logger = Logger.new(STDERR)' config/environments/production.rb
+
+    # Always require lib-files and application.rb through their store
+    # path, not their relative state directory path. This gets rid of
+    # warnings and means we don't have to link back to lib from the
+    # state directory.
+    ${replace}/bin/replace-literal -f -r -e '../lib' "$out/share/gitlab/lib" config
+    ${replace}/bin/replace-literal -f -r -e "require_relative 'application'" "require_relative '$out/share/gitlab/config/application'" config
+  '';
+
+  buildPhase = ''
+    rm -f config/secrets.yml
+    mv config config.dist
+    rm -r tmp
+  '';
+
+  installPhase = ''
+    mkdir -p $out/share
+    cp -r . $out/share/gitlab
+    ln -sf ${assets} $out/share/gitlab/public/assets
+    rm -rf $out/share/gitlab/log
+    ln -sf /run/gitlab/log $out/share/gitlab/log
+    ln -sf /run/gitlab/uploads $out/share/gitlab/public/uploads
+    ln -sf /run/gitlab/config $out/share/gitlab/config
+    ln -sf /run/gitlab/tmp $out/share/gitlab/tmp
+
+    # rake tasks to mitigate CVE-2017-0882
+    # see https://about.gitlab.com/2017/03/20/gitlab-8-dot-17-dot-4-security-release/
+    cp ${./reset_token.rake} $out/share/gitlab/lib/tasks/reset_token.rake
+  '';
+
+  passthru = {
+    inherit rubyEnv assets;
+    ruby = rubyEnv.wrappedRuby;
+    GITALY_SERVER_VERSION = data.passthru.GITALY_SERVER_VERSION;
+    GITLAB_PAGES_VERSION = data.passthru.GITLAB_PAGES_VERSION;
+    GITLAB_SHELL_VERSION = data.passthru.GITLAB_SHELL_VERSION;
+    GITLAB_WORKHORSE_VERSION = data.passthru.GITLAB_WORKHORSE_VERSION;
+    tests = {
+      nixos-test-passes = nixosTests.gitlab;
+    };
+  };
+
+  meta = with lib; {
+    homepage = "http://www.gitlab.com/";
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ fpletz globin krav talyz ];
+  } // (if gitlabEnterprise then
+    {
+      license = licenses.unfreeRedistributable; # https://gitlab.com/gitlab-org/gitlab-ee/raw/master/LICENSE
+      description = "GitLab Enterprise Edition";
+    }
+  else
+    {
+      license = licenses.mit;
+      description = "GitLab Community Edition";
+      longDescription = "GitLab Community Edition (CE) is an open source end-to-end software development platform with built-in version control, issue tracking, code review, CI/CD, and more. Self-host GitLab CE on your own servers, in a container, or on a cloud provider.";
+    });
+}
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/fix-grpc-ar.patch b/nixpkgs/pkgs/applications/version-management/gitlab/fix-grpc-ar.patch
new file mode 100644
index 000000000000..9b95e668e045
--- /dev/null
+++ b/nixpkgs/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/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/Gemfile b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/Gemfile
new file mode 100644
index 000000000000..8a35c8c3b475
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/Gemfile
@@ -0,0 +1,42 @@
+source 'https://rubygems.org'
+
+# Require bundler >= 1.16.5 to avoid this bug: https://github.com/bundler/bundler/issues/6537
+gem 'bundler', '>= 1.17.3'
+
+gem 'rugged', '~> 0.28'
+gem 'github-linguist', '~> 7.9', require: 'linguist'
+gem 'gitlab-markup', '~> 1.7.1'
+gem 'activesupport', '~> 6.0.3.1'
+gem 'rdoc', '~> 6.0'
+gem 'gitlab-gollum-lib', '~> 4.2.7.9', require: false
+gem 'gitlab-gollum-rugged_adapter', '~> 0.4.4.2', require: false
+gem 'grpc', '~> 1.24.0'
+gem 'sentry-raven', '~> 2.9.0', require: false
+gem 'faraday', '~> 0.12'
+gem 'rbtrace', require: false
+
+# Labkit provides observability functionality
+gem 'gitlab-labkit', '~> 0.12.0'
+
+# Detects the open source license the repository includes
+# This version needs to be in sync with GitLab CE/EE
+gem 'licensee', '~> 8.9.0'
+
+gem 'google-protobuf', '~> 3.8.0'
+
+group :development, :test do
+  gem 'rubocop', '~> 0.69', require: false
+  gem 'rspec', require: false
+  gem 'rspec-parameterized', require: false
+  gem 'timecop', require: false
+  gem 'factory_bot', require: false
+  gem 'pry', '~> 0.12.2', require: false
+
+  gem 'grpc-tools', '= 1.0.1'
+
+  # gitlab-shell spec gems
+  gem 'listen', '~> 0.5.0'
+  gem 'simplecov', '~> 0.17.1', require: false
+  gem 'vcr', '~> 4.0.0'
+  gem 'webmock', '~> 3.4.0'
+end
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock
new file mode 100644
index 000000000000..f409ebb9b414
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock
@@ -0,0 +1,239 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    abstract_type (0.0.7)
+    actionpack (6.0.3.1)
+      actionview (= 6.0.3.1)
+      activesupport (= 6.0.3.1)
+      rack (~> 2.0, >= 2.0.8)
+      rack-test (>= 0.6.3)
+      rails-dom-testing (~> 2.0)
+      rails-html-sanitizer (~> 1.0, >= 1.2.0)
+    actionview (6.0.3.1)
+      activesupport (= 6.0.3.1)
+      builder (~> 3.1)
+      erubi (~> 1.4)
+      rails-dom-testing (~> 2.0)
+      rails-html-sanitizer (~> 1.1, >= 1.2.0)
+    activesupport (6.0.3.1)
+      concurrent-ruby (~> 1.0, >= 1.0.2)
+      i18n (>= 0.7, < 2)
+      minitest (~> 5.1)
+      tzinfo (~> 1.1)
+      zeitwerk (~> 2.2, >= 2.2.2)
+    adamantium (0.2.0)
+      ice_nine (~> 0.11.0)
+      memoizable (~> 0.4.0)
+    addressable (2.6.0)
+      public_suffix (>= 2.0.2, < 4.0)
+    ast (2.4.0)
+    binding_ninja (0.2.3)
+    builder (3.2.4)
+    charlock_holmes (0.7.6)
+    coderay (1.1.2)
+    concord (0.1.5)
+      adamantium (~> 0.2.0)
+      equalizer (~> 0.0.9)
+    concurrent-ruby (1.1.6)
+    crack (0.4.3)
+      safe_yaml (~> 1.0.0)
+    crass (1.0.6)
+    diff-lcs (1.3)
+    docile (1.3.2)
+    equalizer (0.0.11)
+    erubi (1.9.0)
+    escape_utils (1.2.1)
+    factory_bot (5.0.2)
+      activesupport (>= 4.2.0)
+    faraday (0.15.4)
+      multipart-post (>= 1.2, < 3)
+    ffi (1.12.2)
+    gemojione (3.3.0)
+      json
+    github-linguist (7.9.0)
+      charlock_holmes (~> 0.7.6)
+      escape_utils (~> 1.2.0)
+      mini_mime (~> 1.0)
+      rugged (>= 0.25.1)
+    github-markup (1.7.0)
+    gitlab-gollum-lib (4.2.7.9)
+      gemojione (~> 3.2)
+      github-markup (~> 1.6)
+      gitlab-gollum-rugged_adapter (~> 0.4.4.2)
+      nokogiri (>= 1.6.1, < 2.0)
+      rouge (~> 3.1)
+      sanitize (~> 4.6.4)
+      stringex (~> 2.6)
+    gitlab-gollum-rugged_adapter (0.4.4.2)
+      mime-types (>= 1.15)
+      rugged (~> 0.25)
+    gitlab-labkit (0.12.0)
+      actionpack (>= 5.0.0, < 6.1.0)
+      activesupport (>= 5.0.0, < 6.1.0)
+      grpc (~> 1.19)
+      jaeger-client (~> 0.10)
+      opentracing (~> 0.4)
+      redis (> 3.0.0, < 5.0.0)
+    gitlab-markup (1.7.1)
+    google-protobuf (3.8.0)
+    googleapis-common-protos-types (1.0.4)
+      google-protobuf (~> 3.0)
+    grpc (1.24.0)
+      google-protobuf (~> 3.8)
+      googleapis-common-protos-types (~> 1.0)
+    grpc-tools (1.0.1)
+    hashdiff (0.3.9)
+    i18n (1.8.2)
+      concurrent-ruby (~> 1.0)
+    ice_nine (0.11.2)
+    jaeger-client (0.10.0)
+      opentracing (~> 0.3)
+      thrift
+    jaro_winkler (1.5.2)
+    json (2.2.0)
+    licensee (8.9.2)
+      rugged (~> 0.24)
+    listen (0.5.3)
+    loofah (2.5.0)
+      crass (~> 1.0.2)
+      nokogiri (>= 1.5.9)
+    memoizable (0.4.2)
+      thread_safe (~> 0.3, >= 0.3.1)
+    method_source (0.9.2)
+    mime-types (3.2.2)
+      mime-types-data (~> 3.2015)
+    mime-types-data (3.2019.0331)
+    mini_mime (1.0.2)
+    mini_portile2 (2.4.0)
+    minitest (5.14.0)
+    msgpack (1.3.1)
+    multipart-post (2.0.0)
+    nokogiri (1.10.9)
+      mini_portile2 (~> 2.4.0)
+    nokogumbo (1.5.0)
+      nokogiri
+    opentracing (0.5.0)
+    optimist (3.0.0)
+    parallel (1.17.0)
+    parser (2.7.0.5)
+      ast (~> 2.4.0)
+    proc_to_ast (0.1.0)
+      coderay
+      parser
+      unparser
+    procto (0.0.3)
+    pry (0.12.2)
+      coderay (~> 1.1.0)
+      method_source (~> 0.9.0)
+    public_suffix (3.0.3)
+    rack (2.1.2)
+    rack-test (1.1.0)
+      rack (>= 1.0, < 3)
+    rails-dom-testing (2.0.3)
+      activesupport (>= 4.2.0)
+      nokogiri (>= 1.6)
+    rails-html-sanitizer (1.3.0)
+      loofah (~> 2.3)
+    rainbow (3.0.0)
+    rbtrace (0.4.11)
+      ffi (>= 1.0.6)
+      msgpack (>= 0.4.3)
+      optimist (>= 3.0.0)
+    rdoc (6.2.0)
+    redis (4.1.3)
+    rouge (3.19.0)
+    rspec (3.8.0)
+      rspec-core (~> 3.8.0)
+      rspec-expectations (~> 3.8.0)
+      rspec-mocks (~> 3.8.0)
+    rspec-core (3.8.0)
+      rspec-support (~> 3.8.0)
+    rspec-expectations (3.8.3)
+      diff-lcs (>= 1.2.0, < 2.0)
+      rspec-support (~> 3.8.0)
+    rspec-mocks (3.8.0)
+      diff-lcs (>= 1.2.0, < 2.0)
+      rspec-support (~> 3.8.0)
+    rspec-parameterized (0.4.2)
+      binding_ninja (>= 0.2.3)
+      parser
+      proc_to_ast
+      rspec (>= 2.13, < 4)
+      unparser
+    rspec-support (3.8.0)
+    rubocop (0.69.0)
+      jaro_winkler (~> 1.5.1)
+      parallel (~> 1.10)
+      parser (>= 2.6)
+      rainbow (>= 2.2.2, < 4.0)
+      ruby-progressbar (~> 1.7)
+      unicode-display_width (>= 1.4.0, < 1.7)
+    ruby-progressbar (1.10.0)
+    rugged (0.28.4.1)
+    safe_yaml (1.0.5)
+    sanitize (4.6.6)
+      crass (~> 1.0.2)
+      nokogiri (>= 1.4.4)
+      nokogumbo (~> 1.4)
+    sentry-raven (2.9.0)
+      faraday (>= 0.7.6, < 1.0)
+    simplecov (0.17.1)
+      docile (~> 1.1)
+      json (>= 1.8, < 3)
+      simplecov-html (~> 0.10.0)
+    simplecov-html (0.10.2)
+    stringex (2.8.5)
+    thread_safe (0.3.6)
+    thrift (0.11.0.0)
+    timecop (0.9.1)
+    tzinfo (1.2.7)
+      thread_safe (~> 0.1)
+    unicode-display_width (1.6.0)
+    unparser (0.4.7)
+      abstract_type (~> 0.0.7)
+      adamantium (~> 0.2.0)
+      concord (~> 0.1.5)
+      diff-lcs (~> 1.3)
+      equalizer (~> 0.0.9)
+      parser (>= 2.6.5)
+      procto (~> 0.0.2)
+    vcr (4.0.0)
+    webmock (3.4.2)
+      addressable (>= 2.3.6)
+      crack (>= 0.3.2)
+      hashdiff
+    zeitwerk (2.3.0)
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  activesupport (~> 6.0.3.1)
+  bundler (>= 1.17.3)
+  factory_bot
+  faraday (~> 0.12)
+  github-linguist (~> 7.9)
+  gitlab-gollum-lib (~> 4.2.7.9)
+  gitlab-gollum-rugged_adapter (~> 0.4.4.2)
+  gitlab-labkit (~> 0.12.0)
+  gitlab-markup (~> 1.7.1)
+  google-protobuf (~> 3.8.0)
+  grpc (~> 1.24.0)
+  grpc-tools (= 1.0.1)
+  licensee (~> 8.9.0)
+  listen (~> 0.5.0)
+  pry (~> 0.12.2)
+  rbtrace
+  rdoc (~> 6.0)
+  rspec
+  rspec-parameterized
+  rubocop (~> 0.69)
+  rugged (~> 0.28)
+  sentry-raven (~> 2.9.0)
+  simplecov (~> 0.17.1)
+  timecop
+  vcr (~> 4.0.0)
+  webmock (~> 3.4.0)
+
+BUNDLED WITH
+   2.1.4
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix
new file mode 100644
index 000000000000..84cf1e500a22
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix
@@ -0,0 +1,63 @@
+{ stdenv, fetchFromGitLab, fetchFromGitHub, buildGoPackage, ruby,
+  bundlerEnv, pkgconfig, libgit2_0_27 }:
+
+let
+  rubyEnv = bundlerEnv rec {
+    name = "gitaly-env";
+    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 buildGoPackage rec {
+  version = "13.0.14";
+  pname = "gitaly";
+
+  src = fetchFromGitLab {
+    owner = "gitlab-org";
+    repo = "gitaly";
+    rev = "v${version}";
+    sha256 = "16ynkwiv0faa60msashj5w1bc4rdh7yv2qjmpcbf7dwq54gqmlbv";
+  };
+
+  # Fix a check which assumes that hook files are writeable by their
+  # owner.
+  patches = [
+    ./fix-executable-check.patch
+  ];
+
+  goPackagePath = "gitlab.com/gitlab-org/gitaly";
+
+  passthru = {
+    inherit rubyEnv;
+  };
+
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ rubyEnv.wrappedRuby libgit2_0_27 ];
+  goDeps = ./deps.nix;
+  preBuild = "rm -r go/src/gitlab.com/gitlab-org/labkit/vendor";
+
+  postInstall = ''
+    mkdir -p $ruby
+    cp -rv $src/ruby/{bin,lib,proto,git-hooks,gitlab-shell} $ruby
+  '';
+
+  outputs = [ "out" "ruby" ];
+
+  meta = with stdenv.lib; {
+    homepage = "https://gitlab.com/gitlab-org/gitaly";
+    description = "A Git RPC service for handling all the git calls made by GitLab";
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ roblabla globin fpletz talyz ];
+    license = licenses.mit;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/deps.nix b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/deps.nix
new file mode 100644
index 000000000000..221ce16163d8
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/deps.nix
@@ -0,0 +1,2100 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
+[
+  {
+    goPackagePath = "bou.ke/monkey";
+    fetch = {
+      type = "git";
+      url = "https://github.com/bouk/monkey";
+      rev = "v1.0.1";
+      sha256 = "050y07pwx5zk7fchp0lhf35w417sml7lxkkzly8f932fy25rydz5";
+    };
+  }
+  {
+    goPackagePath = "cloud.google.com/go";
+    fetch = {
+      type = "git";
+      url = "https://code.googlesource.com/gocloud";
+      rev = "v0.50.0";
+      sha256 = "0pbz5migljd5whxh6z1w79cwx93n85mcs3x1bckl27yzaa4lvqsl";
+    };
+  }
+  {
+    goPackagePath = "dmitri.shuralyov.com/gpu/mtl";
+    fetch = {
+      type = "git";
+      url = "https://dmitri.shuralyov.com/gpu/mtl";
+      rev = "666a987793e9";
+      sha256 = "1isd03hgiwcf2ld1rlp0plrnfz7r4i7c5q4kb6hkcd22axnmrv0z";
+    };
+  }
+  {
+    goPackagePath = "github.com/AndreasBriese/bbloom";
+    fetch = {
+      type = "git";
+      url = "https://github.com/AndreasBriese/bbloom";
+      rev = "e2d15f34fcf9";
+      sha256 = "05kkrsmpragy69bj6s80pxlm3pbwxrkkx7wgk0xigs6y2n6ylpds";
+    };
+  }
+  {
+    goPackagePath = "github.com/BurntSushi/toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/toml";
+      rev = "v0.3.1";
+      sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
+    };
+  }
+  {
+    goPackagePath = "github.com/BurntSushi/xgb";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/xgb";
+      rev = "27f122750802";
+      sha256 = "18lp2x8f5bljvlz0r7xn744f0c9rywjsb9ifiszqqdcpwhsa0kvj";
+    };
+  }
+  {
+    goPackagePath = "github.com/CloudyKit/fastprinter";
+    fetch = {
+      type = "git";
+      url = "https://github.com/CloudyKit/fastprinter";
+      rev = "74b38d55f37a";
+      sha256 = "07wkq3503j7sd5knsgp3lwzfdwm6sj7a3l6i71i52yb3fd8md235";
+    };
+  }
+  {
+    goPackagePath = "github.com/Joker/hpp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Joker/hpp";
+      rev = "v1.0.0";
+      sha256 = "1xnqkjkmqdj48w80qa74rwcmgar8dcilpkcrcn1f53djk45k1gq2";
+    };
+  }
+  {
+    goPackagePath = "github.com/Joker/jade";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Joker/jade";
+      rev = "d475f43051e7";
+      sha256 = "0yigzvxp5qd05pai0yimzkpl2m23358a2fqqs585psrdmwsic2pn";
+    };
+  }
+  {
+    goPackagePath = "github.com/Shopify/goreferrer";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Shopify/goreferrer";
+      rev = "ec9c9a553398";
+      sha256 = "0d740psj8czks1hl0nr6nlrwfbwq3nc51jj2p91d1wyhhmgn6jmn";
+    };
+  }
+  {
+    goPackagePath = "github.com/ajg/form";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ajg/form";
+      rev = "v1.5.1";
+      sha256 = "1d6sxzzf9yycdf8jm5877y0khmhkmhxfw3sc4xpdcsrdlc7gqh5a";
+    };
+  }
+  {
+    goPackagePath = "github.com/alecthomas/template";
+    fetch = {
+      type = "git";
+      url = "https://github.com/alecthomas/template";
+      rev = "a0175ee3bccc";
+      sha256 = "0qjgvvh26vk1cyfq9fadyhfgdj36f1iapbmr5xp6zqipldz8ffxj";
+    };
+  }
+  {
+    goPackagePath = "github.com/alecthomas/units";
+    fetch = {
+      type = "git";
+      url = "https://github.com/alecthomas/units";
+      rev = "2efee857e7cf";
+      sha256 = "1j65b91qb9sbrml9cpabfrcf07wmgzzghrl7809hjjhrmbzri5bl";
+    };
+  }
+  {
+    goPackagePath = "github.com/armon/consul-api";
+    fetch = {
+      type = "git";
+      url = "https://github.com/armon/consul-api";
+      rev = "eb2c6b5be1b6";
+      sha256 = "1j6fdr1sg36qy4n4xjl7brq739fpm5npq98cmvklzjc9qrx98nk9";
+    };
+  }
+  {
+    goPackagePath = "github.com/armon/go-radix";
+    fetch = {
+      type = "git";
+      url = "https://github.com/armon/go-radix";
+      rev = "7fddfc383310";
+      sha256 = "0y8chspn14n9xpsfb9gxnnf819rfpriaz64v81p7873a42kkhxb4";
+    };
+  }
+  {
+    goPackagePath = "github.com/beorn7/perks";
+    fetch = {
+      type = "git";
+      url = "https://github.com/beorn7/perks";
+      rev = "v1.0.1";
+      sha256 = "17n4yygjxa6p499dj3yaqzfww2g7528165cl13haj97hlx94dgl7";
+    };
+  }
+  {
+    goPackagePath = "github.com/bgentry/speakeasy";
+    fetch = {
+      type = "git";
+      url = "https://github.com/bgentry/speakeasy";
+      rev = "v0.1.0";
+      sha256 = "02dfrj0wyphd3db9zn2mixqxwiz1ivnyc5xc7gkz58l5l27nzp8s";
+    };
+  }
+  {
+    goPackagePath = "github.com/certifi/gocertifi";
+    fetch = {
+      type = "git";
+      url = "https://github.com/certifi/gocertifi";
+      rev = "ee1a9a0726d2";
+      sha256 = "08l6lqaw83pva6fa0aafmhmy1mhb145av21772zfh3ij809a37i4";
+    };
+  }
+  {
+    goPackagePath = "github.com/chzyer/logex";
+    fetch = {
+      type = "git";
+      url = "https://github.com/chzyer/logex";
+      rev = "v1.1.10";
+      sha256 = "08pbjj3wx9acavlwyr055isa8a5hnmllgdv5k6ra60l5y1brmlq4";
+    };
+  }
+  {
+    goPackagePath = "github.com/chzyer/readline";
+    fetch = {
+      type = "git";
+      url = "https://github.com/chzyer/readline";
+      rev = "2972be24d48e";
+      sha256 = "104q8dazj8yf6b089jjr82fy9h1g80zyyzvp3g8b44a7d8ngjj6r";
+    };
+  }
+  {
+    goPackagePath = "github.com/chzyer/test";
+    fetch = {
+      type = "git";
+      url = "https://github.com/chzyer/test";
+      rev = "a1ea475d72b1";
+      sha256 = "0rns2aqk22i9xsgyap0pq8wi4cfaxsri4d9q6xxhhyma8jjsnj2k";
+    };
+  }
+  {
+    goPackagePath = "github.com/client9/misspell";
+    fetch = {
+      type = "git";
+      url = "https://github.com/client9/misspell";
+      rev = "v0.3.4";
+      sha256 = "1vwf33wsc4la25zk9nylpbp9px3svlmldkm0bha4hp56jws4q9cs";
+    };
+  }
+  {
+    goPackagePath = "github.com/client9/reopen";
+    fetch = {
+      type = "git";
+      url = "https://github.com/client9/reopen";
+      rev = "v1.0.0";
+      sha256 = "0f0dpdbmvk7w518c6zjhlmp65y55vvx47x4lq9pgzvcbsvjsf18s";
+    };
+  }
+  {
+    goPackagePath = "github.com/cloudflare/tableflip";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cloudflare/tableflip";
+      rev = "4baec9811f2b";
+      sha256 = "095xb5gfz7dglljp91nh68dnscddvlf7q5ivvz972fq86r3ypq6q";
+    };
+  }
+  {
+    goPackagePath = "github.com/codahale/hdrhistogram";
+    fetch = {
+      type = "git";
+      url = "https://github.com/codahale/hdrhistogram";
+      rev = "3a0bb77429bd";
+      sha256 = "1zampgfjbxy192cbwdi7g86l1idxaam96d834wncnpfdwgh5kl57";
+    };
+  }
+  {
+    goPackagePath = "github.com/codegangsta/inject";
+    fetch = {
+      type = "git";
+      url = "https://github.com/codegangsta/inject";
+      rev = "33e0aa1cb7c0";
+      sha256 = "1jqakr3z9l60qhcgrdzsb6rlk8ikcamisw0g2ndmrf27s0ibfcaj";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/etcd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/etcd";
+      rev = "v3.3.10";
+      sha256 = "1x2ii1hj8jraba8rbxz6dmc03y3sjxdnzipdvg6fywnlq1f3l3wl";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/go-etcd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-etcd";
+      rev = "v2.0.0";
+      sha256 = "1xb34hzaa1lkbq5vkzy9vcz6gqwj7hp6cdbvyack2bf28dwn33jj";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/go-semver";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-semver";
+      rev = "v0.2.0";
+      sha256 = "1gghi5bnqj50hfxhqc1cxmynqmh2yk9ii7ab9gsm75y5cp94ymk0";
+    };
+  }
+  {
+    goPackagePath = "github.com/cpuguy83/go-md2man";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cpuguy83/go-md2man";
+      rev = "v1.0.10";
+      sha256 = "1bqkf2bvy1dns9zd24k81mh2p1zxsx2nhq5cj8dz2vgkv1xkh60i";
+    };
+  }
+  {
+    goPackagePath = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev = "v1.1.1";
+      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
+    };
+  }
+  {
+    goPackagePath = "github.com/denisenkom/go-mssqldb";
+    fetch = {
+      type = "git";
+      url = "https://github.com/denisenkom/go-mssqldb";
+      rev = "cfbb681360f0";
+      sha256 = "0mr4y9vppiyl7mvad74k3zk4sc1jdkmc0lcd6lhm70iziw2xpncs";
+    };
+  }
+  {
+    goPackagePath = "github.com/dgraph-io/badger";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dgraph-io/badger";
+      rev = "v1.6.0";
+      sha256 = "1vzibjqhb10q6s2chbzlwndij2d9ybjnq7h28hx4akr119avd0d5";
+    };
+  }
+  {
+    goPackagePath = "github.com/dgrijalva/jwt-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dgrijalva/jwt-go";
+      rev = "v3.2.0";
+      sha256 = "08m27vlms74pfy5z79w67f9lk9zkx6a9jd68k3c4msxy75ry36mp";
+    };
+  }
+  {
+    goPackagePath = "github.com/dgryski/go-farm";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dgryski/go-farm";
+      rev = "6a90982ecee2";
+      sha256 = "1x3l4jgps0v1bjvd446kj4dp0ckswjckxgrng9afm275ixnf83ix";
+    };
+  }
+  {
+    goPackagePath = "github.com/dustin/go-humanize";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dustin/go-humanize";
+      rev = "v1.0.0";
+      sha256 = "1kqf1kavdyvjk7f8kx62pnm7fbypn9z1vbf8v2qdh3y7z7a0cbl3";
+    };
+  }
+  {
+    goPackagePath = "github.com/eknkc/amber";
+    fetch = {
+      type = "git";
+      url = "https://github.com/eknkc/amber";
+      rev = "cdade1c07385";
+      sha256 = "152w97yckwncgw7lwjvgd8d00wy6y0nxzlvx72kl7nqqxs9vhxd9";
+    };
+  }
+  {
+    goPackagePath = "github.com/etcd-io/bbolt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/etcd-io/bbolt";
+      rev = "v1.3.3";
+      sha256 = "0dn0zngks9xiz0rrrb3911f73ghl64z84jsmzai2yfmzqr7cdkqc";
+    };
+  }
+  {
+    goPackagePath = "github.com/fasthttp-contrib/websocket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fasthttp-contrib/websocket";
+      rev = "1f3b11f56072";
+      sha256 = "1yacmwmil625p0pzj800h9dnmiab6bjwfmi48p9fcrvy2yyv9b97";
+    };
+  }
+  {
+    goPackagePath = "github.com/fatih/color";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fatih/color";
+      rev = "v1.7.0";
+      sha256 = "0v8msvg38r8d1iiq2i5r4xyfx0invhc941kjrsg5gzwvagv55inv";
+    };
+  }
+  {
+    goPackagePath = "github.com/fatih/structs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fatih/structs";
+      rev = "v1.1.0";
+      sha256 = "1wrhb8wp8zpzggl61lapb627lw8yv281abvr6vqakmf569nswa9q";
+    };
+  }
+  {
+    goPackagePath = "github.com/flosch/pongo2";
+    fetch = {
+      type = "git";
+      url = "https://github.com/flosch/pongo2";
+      rev = "bbf5a6c351f4";
+      sha256 = "0yqh58phznnxakm64w82gawrpndb0r85vsd1s7h244qqrq7w4avq";
+    };
+  }
+  {
+    goPackagePath = "github.com/fsnotify/fsnotify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fsnotify/fsnotify";
+      rev = "v1.4.7";
+      sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
+    };
+  }
+  {
+    goPackagePath = "github.com/gavv/httpexpect";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gavv/httpexpect";
+      rev = "v2.0.0";
+      sha256 = "0dqb7lsinciz594q6jg59hrvk4g4awbs2ybsr580j22j2xag53vs";
+    };
+  }
+  {
+    goPackagePath = "github.com/getsentry/raven-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/getsentry/raven-go";
+      rev = "v0.1.2";
+      sha256 = "1dl80kar4lzdcfl3w6jssi1ld6bv0rmx6sp6bz6rzysfr9ilm02z";
+    };
+  }
+  {
+    goPackagePath = "github.com/getsentry/sentry-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/getsentry/sentry-go";
+      rev = "v0.5.1";
+      sha256 = "1kfn0gcb4c6amhagv04ydpl6p9cqw7f0lxas688a0rf89iwdzz89";
+    };
+  }
+  {
+    goPackagePath = "github.com/gin-contrib/sse";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gin-contrib/sse";
+      rev = "5545eab6dad3";
+      sha256 = "0jhcvi66rn7c1wg3rf7q7sylrvlk7c40yk79c5lypnz1dpsdcrb5";
+    };
+  }
+  {
+    goPackagePath = "github.com/gin-gonic/gin";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gin-gonic/gin";
+      rev = "v1.4.0";
+      sha256 = "19nxip48p2s8l7p1p7wpd5li2fcngi4c58rgcg71izdmsmj2iw1d";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-check/check";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-check/check";
+      rev = "788fd7840127";
+      sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-errors/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-errors/errors";
+      rev = "v1.0.1";
+      sha256 = "0rznpknk19rxkr7li6dqs52c26pjazp69lh493l4ny4sxn5922lp";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-gl/glfw";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-gl/glfw";
+      rev = "12ad95a8df72";
+      sha256 = "0ahw4a1lk7wqn6m0sjngsv2zc08kxxj259ai6g4kf11lmidszm9s";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-kit/kit";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-kit/kit";
+      rev = "v0.8.0";
+      sha256 = "1rcywbc2pvab06qyf8pc2rdfjv7r6kxdv2v4wnpqnjhz225wqvc0";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-logfmt/logfmt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-logfmt/logfmt";
+      rev = "v0.3.0";
+      sha256 = "1gkgh3k5w1xwb2qbjq52p6azq3h1c1rr6pfwjlwj1zrijpzn2xb9";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-martini/martini";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-martini/martini";
+      rev = "22fa46961aab";
+      sha256 = "01ip3mwbnm5isq120ww73yrvbcn6n5944prhhbyf2ggyf6g46ylh";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-sql-driver/mysql";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-sql-driver/mysql";
+      rev = "v1.4.1";
+      sha256 = "1fvsvwc1v2i0gqn01mynvi1shp5xm0xaym6xng09fcbqb56lbjx1";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-stack/stack";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-stack/stack";
+      rev = "v1.8.0";
+      sha256 = "0wk25751ryyvxclyp8jdk5c3ar0cmfr8lrjb66qbg4808x66b96v";
+    };
+  }
+  {
+    goPackagePath = "github.com/gobuffalo/envy";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gobuffalo/envy";
+      rev = "v1.7.1";
+      sha256 = "1s1f05cgpkhgcs2qfh04ixxm1ggk8ms3fpwsxhb0mx7nfrcm106d";
+    };
+  }
+  {
+    goPackagePath = "github.com/gobuffalo/logger";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gobuffalo/logger";
+      rev = "v1.0.1";
+      sha256 = "1w6rkz0xwq3xj3giwzjkfnai69a0cgg09zx01z7s8r5z450cish3";
+    };
+  }
+  {
+    goPackagePath = "github.com/gobuffalo/packd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gobuffalo/packd";
+      rev = "v0.3.0";
+      sha256 = "02sg33jkp219g0z3yf2fn9xm2zds1qxzdznx5mh8vffh4njjg1x8";
+    };
+  }
+  {
+    goPackagePath = "github.com/gobuffalo/packr";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gobuffalo/packr";
+      rev = "v2.7.1";
+      sha256 = "0m5kl2fq8gf1v4vllgag2xl8fd382sdgqrcdb8f5alsnrdn08kb9";
+    };
+  }
+  {
+    goPackagePath = "github.com/gobwas/httphead";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gobwas/httphead";
+      rev = "2c6c146eadee";
+      sha256 = "0j7nlrf79cafl8ap69ri2c7v3psr2y133cr2wn735z7yn3dz3kss";
+    };
+  }
+  {
+    goPackagePath = "github.com/gobwas/pool";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gobwas/pool";
+      rev = "v0.2.0";
+      sha256 = "1avpa8c75j1y4hs7awazrjjy7w0pjfw80l424ddn5zyizvh7s67i";
+    };
+  }
+  {
+    goPackagePath = "github.com/gobwas/ws";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gobwas/ws";
+      rev = "v1.0.2";
+      sha256 = "070mfcjbfb40bglc9aw9zjvd4jb1hp3l1s12ww6mjlwbjcg0mm9s";
+    };
+  }
+  {
+    goPackagePath = "github.com/gogo/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gogo/protobuf";
+      rev = "v1.1.1";
+      sha256 = "1525pq7r6h3s8dncvq8gxi893p2nq8dxpzvq0nfl5b4p6mq0v1c2";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang-sql/civil";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang-sql/civil";
+      rev = "cb61b32ac6fe";
+      sha256 = "0yadfbvi0w06lg3sxw0daji02jxd3vv2in26yfmwpl4vd4vm9zay";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/glog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/glog";
+      rev = "23def4e6c14b";
+      sha256 = "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/groupcache";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/groupcache";
+      rev = "215e87163ea7";
+      sha256 = "07555csk49ara636bhl2vbzziayls3qks8964z0q29g065zliy9j";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/lint";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/lint";
+      rev = "06c8688daad7";
+      sha256 = "0xi94dwvz50a66bq1hp9fyqkym5mcpdxdb1hrfvicldgjf37lc47";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/mock";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/mock";
+      rev = "v1.3.1";
+      sha256 = "1wnfa8njxdym1qb664dmfnkpm4pmqy22hqjlqpwaaiqhglb5g9d1";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "v1.3.2";
+      sha256 = "1k1wb4zr0qbwgpvz9q5ws9zhlal8hq7dmq62pwxxriksayl6hzym";
+    };
+  }
+  {
+    goPackagePath = "github.com/gomodule/redigo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gomodule/redigo";
+      rev = "574c33c3df38";
+      sha256 = "1qpw8mq9xqj1hmpag1av941swkx39qikahsajyhn34rc2q54f4z6";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/btree";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/btree";
+      rev = "v1.0.0";
+      sha256 = "0ba430m9fbnagacp57krgidsyrgp3ycw5r7dj71brgp5r52g82p6";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/go-cmp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-cmp";
+      rev = "v0.4.0";
+      sha256 = "1x5pvl3fb5sbyng7i34431xycnhmx8xx94gq2n19g6p0vz68z2v2";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/go-querystring";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-querystring";
+      rev = "v1.0.0";
+      sha256 = "0xl12bqyvmn4xcnf8p9ksj9rmnr7s40pvppsdmy8n9bzw1db0iwz";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/martian";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/martian";
+      rev = "v2.1.0";
+      sha256 = "197hil6vrjk50b9wvwyzf61csid83whsjj6ik8mc9r2lryxlyyrp";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/pprof";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/pprof";
+      rev = "d4f498aebedc";
+      sha256 = "1r4pn70yy5vfl38jx9v8224n7jkhcm5wg28vv48izgznlgv7h024";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/renameio";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/renameio";
+      rev = "v0.1.0";
+      sha256 = "1ki2x5a9nrj17sn092d6n4zr29lfg5ydv4xz5cp58z6cw8ip43jx";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/uuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/uuid";
+      rev = "v1.1.1";
+      sha256 = "0hfxcf9frkb57k6q0rdkrmnfs78ms21r1qfk9fhlqga2yh5xg8zb";
+    };
+  }
+  {
+    goPackagePath = "github.com/googleapis/gax-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/googleapis/gax-go";
+      rev = "v2.0.5";
+      sha256 = "1lxawwngv6miaqd25s3ba0didfzylbwisd2nz7r4gmbmin6jsjrx";
+    };
+  }
+  {
+    goPackagePath = "github.com/gopherjs/gopherjs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gopherjs/gopherjs";
+      rev = "0766667cb4d1";
+      sha256 = "13pfc9sxiwjky2lm1xb3i3lcisn8p6mgjk2d927l7r92ysph8dmw";
+    };
+  }
+  {
+    goPackagePath = "github.com/gorilla/websocket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/websocket";
+      rev = "v1.4.0";
+      sha256 = "00i4vb31nsfkzzk7swvx3i75r2d960js3dri1875vypk3v2s0pzk";
+    };
+  }
+  {
+    goPackagePath = "github.com/grpc-ecosystem/go-grpc-middleware";
+    fetch = {
+      type = "git";
+      url = "https://github.com/grpc-ecosystem/go-grpc-middleware";
+      rev = "v1.0.0";
+      sha256 = "0lwgxih021xfhfb1xb9la5f98bpgpaiz63sbllx77qwwl2rmhrsp";
+    };
+  }
+  {
+    goPackagePath = "github.com/grpc-ecosystem/go-grpc-prometheus";
+    fetch = {
+      type = "git";
+      url = "https://github.com/grpc-ecosystem/go-grpc-prometheus";
+      rev = "v1.2.0";
+      sha256 = "1lzk54h7np32b3acidg1ggbn8ppbnns0m71gcg9d1qkkdh8zrijl";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/errwrap";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/errwrap";
+      rev = "v1.0.0";
+      sha256 = "0slfb6w3b61xz04r32bi0a1bygc82rjzhqkxj2si2074wynqnr1c";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-multierror";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-multierror";
+      rev = "v1.0.0";
+      sha256 = "00nyn8llqzbfm8aflr9kwsvpzi4kv8v45c141v88xskxp5xf6z49";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-version";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-version";
+      rev = "v1.2.0";
+      sha256 = "1bwi6y6111xq8ww8kjq0w1cmz15l1h9hb2id6596l8l0ag1vjj1z";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/golang-lru";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/golang-lru";
+      rev = "v0.5.1";
+      sha256 = "13f870cvk161bzjj6x41l45r5x9i1z9r2ymwmvm7768kg08zznpy";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/hcl";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/hcl";
+      rev = "v1.0.0";
+      sha256 = "0q6ml0qqs0yil76mpn4mdx4lp94id8vbv575qm60jzl1ijcl5i66";
+    };
+  }
+  {
+    goPackagePath = "github.com/hpcloud/tail";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hpcloud/tail";
+      rev = "v1.0.0";
+      sha256 = "1njpzc0pi1acg5zx9y6vj9xi6ksbsc5d387rd6904hy6rh2m6kn0";
+    };
+  }
+  {
+    goPackagePath = "github.com/ianlancetaylor/demangle";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ianlancetaylor/demangle";
+      rev = "5e5cf60278f6";
+      sha256 = "1fhjk11cip9c3jyj1byz9z77n6n2rlxmyz0xjx1zpn1da3cvri75";
+    };
+  }
+  {
+    goPackagePath = "github.com/imkira/go-interpol";
+    fetch = {
+      type = "git";
+      url = "https://github.com/imkira/go-interpol";
+      rev = "v1.1.0";
+      sha256 = "180h3pf2p0pch6hmqf45wk7wd87md83d3p122f8ll43x5nja5mph";
+    };
+  }
+  {
+    goPackagePath = "github.com/inconshreveable/mousetrap";
+    fetch = {
+      type = "git";
+      url = "https://github.com/inconshreveable/mousetrap";
+      rev = "v1.0.0";
+      sha256 = "1mn0kg48xkd74brf48qf5hzp0bc6g8cf5a77w895rl3qnlpfw152";
+    };
+  }
+  {
+    goPackagePath = "github.com/iris-contrib/blackfriday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/iris-contrib/blackfriday";
+      rev = "v2.0.0";
+      sha256 = "1gkizavajqmxm79il8r6cbi0g9ls3vwdh9wr0zy89vc9sq17p3im";
+    };
+  }
+  {
+    goPackagePath = "github.com/iris-contrib/go.uuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/iris-contrib/go.uuid";
+      rev = "v2.0.0";
+      sha256 = "0nc0ggn0a6bcwdrwinnx3z6889x65c20a2dwja0n8can3xblxs35";
+    };
+  }
+  {
+    goPackagePath = "github.com/iris-contrib/i18n";
+    fetch = {
+      type = "git";
+      url = "https://github.com/iris-contrib/i18n";
+      rev = "987a633949d0";
+      sha256 = "0yslm7hmacc57v970jbys4x5c5yxgcjgff982ngivg9v1a16kifq";
+    };
+  }
+  {
+    goPackagePath = "github.com/iris-contrib/schema";
+    fetch = {
+      type = "git";
+      url = "https://github.com/iris-contrib/schema";
+      rev = "v0.0.1";
+      sha256 = "1a1lk2ll2xv3ljffmfw4q8mqqw727pj8dzs6c8g2hh0b0b050g79";
+    };
+  }
+  {
+    goPackagePath = "github.com/joho/godotenv";
+    fetch = {
+      type = "git";
+      url = "https://github.com/joho/godotenv";
+      rev = "v1.3.0";
+      sha256 = "0ri8if0pc3x6jg4c3i8wr58xyfpxkwmcjk3rp8gb398a1aa3gpjm";
+    };
+  }
+  {
+    goPackagePath = "github.com/json-iterator/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/json-iterator/go";
+      rev = "v1.1.6";
+      sha256 = "08caswxvdn7nvaqyj5kyny6ghpygandlbw9vxdj7l5vkp7q0s43r";
+    };
+  }
+  {
+    goPackagePath = "github.com/jstemmer/go-junit-report";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jstemmer/go-junit-report";
+      rev = "v0.9.1";
+      sha256 = "1knip80yir1cdsjlb3rzy0a4w3kl4ljpiciaz6hjzwqlfhnv7bkw";
+    };
+  }
+  {
+    goPackagePath = "github.com/jtolds/gls";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jtolds/gls";
+      rev = "v4.20.0";
+      sha256 = "1k7xd2q2ysv2xsh373qs801v6f359240kx0vrl0ydh7731lngvk6";
+    };
+  }
+  {
+    goPackagePath = "github.com/juju/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/juju/errors";
+      rev = "089d3ea4e4d5";
+      sha256 = "056za75j1zgksky7pbf0pkjqz5ha15g3wj3p4ma10m9sywdyq79r";
+    };
+  }
+  {
+    goPackagePath = "github.com/juju/loggo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/juju/loggo";
+      rev = "584905176618";
+      sha256 = "0hzi0652y74jf62wwyi9gf8bzrs7ynvhjfqc8rwr4l799d7i5gd4";
+    };
+  }
+  {
+    goPackagePath = "github.com/juju/testing";
+    fetch = {
+      type = "git";
+      url = "https://github.com/juju/testing";
+      rev = "472a3e8b2073";
+      sha256 = "05wjc2k0kwbam7anaxwnj30pl03dcdbrsz32icd70zl70ipsqsw4";
+    };
+  }
+  {
+    goPackagePath = "github.com/julienschmidt/httprouter";
+    fetch = {
+      type = "git";
+      url = "https://github.com/julienschmidt/httprouter";
+      rev = "v1.2.0";
+      sha256 = "1k8bylc9s4vpvf5xhqh9h246dl1snxrzzz0614zz88cdh8yzs666";
+    };
+  }
+  {
+    goPackagePath = "github.com/k0kubun/colorstring";
+    fetch = {
+      type = "git";
+      url = "https://github.com/k0kubun/colorstring";
+      rev = "9440f1994b88";
+      sha256 = "0isskya7ky4k9znrh85crfc2pxwyfz2s8j1a5cbjb8b8zf2v0qbj";
+    };
+  }
+  {
+    goPackagePath = "github.com/kataras/golog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kataras/golog";
+      rev = "v0.0.9";
+      sha256 = "160hd3z93c9i33q9g1bhfdxmsqg1lanncnrqcsr2444dy5j6ly3i";
+    };
+  }
+  {
+    goPackagePath = "github.com/kataras/iris";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kataras/iris";
+      rev = "v12.0.1";
+      sha256 = "0k1jhamvf0byx6d317gzg6r2jls7bajhhf2spvdinarl2cjnakm5";
+    };
+  }
+  {
+    goPackagePath = "github.com/kataras/neffos";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kataras/neffos";
+      rev = "v0.0.10";
+      sha256 = "0mkqrxff28rcc71nw5qqsywn0fm2jz7magwp9hhvh1s01lgghjdp";
+    };
+  }
+  {
+    goPackagePath = "github.com/kataras/pio";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kataras/pio";
+      rev = "ea782b38602d";
+      sha256 = "0ca29wmkpx19qwnvi4fja3avkxkzz14x9wyzmg1l9074bxbj8cgj";
+    };
+  }
+  {
+    goPackagePath = "github.com/kelseyhightower/envconfig";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kelseyhightower/envconfig";
+      rev = "v1.3.0";
+      sha256 = "1zcq480ig7wbg4378qcfxznp2gzqmk7x6rbxizflvg9v2f376vrw";
+    };
+  }
+  {
+    goPackagePath = "github.com/kisielk/gotool";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kisielk/gotool";
+      rev = "v1.0.0";
+      sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn";
+    };
+  }
+  {
+    goPackagePath = "github.com/klauspost/compress";
+    fetch = {
+      type = "git";
+      url = "https://github.com/klauspost/compress";
+      rev = "v1.9.0";
+      sha256 = "07vndz6mdaliwagj2xq0y5c5w2zld14p9i5y7r0bkhb7klfyamfk";
+    };
+  }
+  {
+    goPackagePath = "github.com/klauspost/cpuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/klauspost/cpuid";
+      rev = "v1.2.1";
+      sha256 = "1071wchrs37bvpb99fwf19fjrpz0yaqipi2y2hjvim419flvd49x";
+    };
+  }
+  {
+    goPackagePath = "github.com/konsorten/go-windows-terminal-sequences";
+    fetch = {
+      type = "git";
+      url = "https://github.com/konsorten/go-windows-terminal-sequences";
+      rev = "v1.0.2";
+      sha256 = "09mn209ika7ciy87xf2x31dq5fnqw39jidgaljvmqxwk7ff1hnx7";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/logfmt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/logfmt";
+      rev = "b84e30acd515";
+      sha256 = "02ldzxgznrfdzvghfraslhgp19la1fczcbzh7wm2zdc6lmpd1qq9";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/pretty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/pretty";
+      rev = "v0.1.0";
+      sha256 = "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/pty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/pty";
+      rev = "v1.1.1";
+      sha256 = "0383f0mb9kqjvncqrfpidsf8y6ns5zlrc91c6a74xpyxjwvzl2y6";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/text";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/text";
+      rev = "v0.1.0";
+      sha256 = "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1";
+    };
+  }
+  {
+    goPackagePath = "github.com/labstack/echo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/labstack/echo";
+      rev = "v4.1.11";
+      sha256 = "0b14vgwzznn7wzyjb98xdmq4wjg16l3y62njiwfz4qsm4pwzk405";
+    };
+  }
+  {
+    goPackagePath = "github.com/labstack/gommon";
+    fetch = {
+      type = "git";
+      url = "https://github.com/labstack/gommon";
+      rev = "v0.3.0";
+      sha256 = "18z7akyzm75p6anm4b8qkqgm4iivx50z07hi5wf50w1pbsvbcdi0";
+    };
+  }
+  {
+    goPackagePath = "github.com/lib/pq";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lib/pq";
+      rev = "v1.2.0";
+      sha256 = "08j1smm6rassdssdks4yh9aspa1dv1g5nvwimmknspvhx8a7waqz";
+    };
+  }
+  {
+    goPackagePath = "github.com/libgit2/git2go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libgit2/git2go";
+      rev = "ecaeb7a21d47";
+      sha256 = "14r7ryff93r49g94f6kg66xc0y6rwb31lj22s3qmzmlgywk0pgvr";
+    };
+  }
+  {
+    goPackagePath = "github.com/lightstep/lightstep-tracer-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lightstep/lightstep-tracer-go";
+      rev = "v0.15.6";
+      sha256 = "10n5r66g44s6rnz5kf86s4a3p1g55kc1kxqhnk7bx7mlayndgpmb";
+    };
+  }
+  {
+    goPackagePath = "github.com/magiconair/properties";
+    fetch = {
+      type = "git";
+      url = "https://github.com/magiconair/properties";
+      rev = "v1.8.0";
+      sha256 = "1a10362wv8a8qwb818wygn2z48lgzch940hvpv81hv8gc747ajxn";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-colorable";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-colorable";
+      rev = "v0.1.2";
+      sha256 = "0512jm3wmzkkn7d99x9wflyqf48n5ri3npy1fqkq6l6adc5mni3n";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev = "v0.0.9";
+      sha256 = "0i3km37lajahh1y2392g4hpgvq05arcgiiv93yhzxxyv0fpqj72m";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-runewidth";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-runewidth";
+      rev = "v0.0.4";
+      sha256 = "00b3ssm7wiqln3k54z2wcnxr3k3c7m1ybyhb9h8ixzbzspld0qzs";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-shellwords";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-shellwords";
+      rev = "2444a32a19f4";
+      sha256 = "08zcgr1az1n8zaxzwdd205j86hczgyc52nxfnw5avpw7rrkf7v0d";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-sqlite3";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-sqlite3";
+      rev = "v1.12.0";
+      sha256 = "0di8zy6202sbs0p9kx8lpii77ir5jwjhg6z0796y3nfvw87wk9iv";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/goveralls";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/goveralls";
+      rev = "v0.0.2";
+      sha256 = "13ffdikvc594g1mryhi94m87skr7irwkjnpxp8ad2kprn6syfslp";
+    };
+  }
+  {
+    goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/matttproud/golang_protobuf_extensions";
+      rev = "v1.0.1";
+      sha256 = "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya";
+    };
+  }
+  {
+    goPackagePath = "github.com/mediocregopher/mediocre-go-lib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mediocregopher/mediocre-go-lib";
+      rev = "cb65787f37ed";
+      sha256 = "0lg6q76fxjhxv05m80k4l6nrkj9qwzafs2mb2gbvhznxh8m0cv9j";
+    };
+  }
+  {
+    goPackagePath = "github.com/mediocregopher/radix";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mediocregopher/radix";
+      rev = "v3.3.0";
+      sha256 = "0pchn5z2g4wnf87350war5fr9pqpdksia1ffvw7cphg4q9blggfx";
+    };
+  }
+  {
+    goPackagePath = "github.com/microcosm-cc/bluemonday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/microcosm-cc/bluemonday";
+      rev = "v1.0.2";
+      sha256 = "0j0aylsxqjcj49w7ph8cmpaqjlpvg7mb5mrcrd9bg71dlb9z9ir2";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/cli";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/cli";
+      rev = "v1.0.0";
+      sha256 = "1i9kmr7rcf10d2hji8h4247hmc0nbairv7a0q51393aw2h1bnwg2";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/go-homedir";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/go-homedir";
+      rev = "v1.1.0";
+      sha256 = "0ydzkipf28hwj2bfxqmwlww47khyk6d152xax4bnyh60f4lq3nx1";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/mapstructure";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/mapstructure";
+      rev = "v1.1.2";
+      sha256 = "03bpv28jz9zhn4947saqwi328ydj7f6g6pf1m2d4m5zdh5jlfkrr";
+    };
+  }
+  {
+    goPackagePath = "github.com/modern-go/concurrent";
+    fetch = {
+      type = "git";
+      url = "https://github.com/modern-go/concurrent";
+      rev = "bacd9c7ef1dd";
+      sha256 = "0s0fxccsyb8icjmiym5k7prcqx36hvgdwl588y0491gi18k5i4zs";
+    };
+  }
+  {
+    goPackagePath = "github.com/modern-go/reflect2";
+    fetch = {
+      type = "git";
+      url = "https://github.com/modern-go/reflect2";
+      rev = "v1.0.1";
+      sha256 = "06a3sablw53n1dqqbr2f53jyksbxdmmk8axaas4yvnhyfi55k4lf";
+    };
+  }
+  {
+    goPackagePath = "github.com/moul/http2curl";
+    fetch = {
+      type = "git";
+      url = "https://github.com/moul/http2curl";
+      rev = "v1.0.0";
+      sha256 = "15bpx33d3ygya8dg8hbsn24h7acpajl27006pj8lw1c0bfvbnrl0";
+    };
+  }
+  {
+    goPackagePath = "github.com/mwitkow/go-conntrack";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mwitkow/go-conntrack";
+      rev = "cc309e4a2223";
+      sha256 = "0nbrnpk7bkmqg9mzwsxlm0y8m7s9qd9phr1q30qlx2qmdmz7c1mf";
+    };
+  }
+  {
+    goPackagePath = "github.com/nats-io/nats.go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/nats-io/nats.go";
+      rev = "v1.8.1";
+      sha256 = "0h9zzpjl6ac227bhf0i4ram9a5jlibq53pawv0zzxdirxrnp1vkj";
+    };
+  }
+  {
+    goPackagePath = "github.com/nats-io/nkeys";
+    fetch = {
+      type = "git";
+      url = "https://github.com/nats-io/nkeys";
+      rev = "v0.0.2";
+      sha256 = "0kibc1g60w031rssk3vs74gfick3jdl3igckn1v4k8b5grawcks1";
+    };
+  }
+  {
+    goPackagePath = "github.com/nats-io/nuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/nats-io/nuid";
+      rev = "v1.0.1";
+      sha256 = "11zbhg4kds5idsya04bwz4plj0mmiigypzppzih731ppbk2ms1zg";
+    };
+  }
+  {
+    goPackagePath = "github.com/olekukonko/tablewriter";
+    fetch = {
+      type = "git";
+      url = "https://github.com/olekukonko/tablewriter";
+      rev = "v0.0.2";
+      sha256 = "1f4mwdh501p8105nfxayprlj5ld14fwzyyy2wbc04xk3wrm1wzlf";
+    };
+  }
+  {
+    goPackagePath = "github.com/onsi/ginkgo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/onsi/ginkgo";
+      rev = "v1.10.3";
+      sha256 = "00a40by9f5ylycnar8h3p9b4z5rcsvfvg4j3v5s5mchdqrqjv1pc";
+    };
+  }
+  {
+    goPackagePath = "github.com/onsi/gomega";
+    fetch = {
+      type = "git";
+      url = "https://github.com/onsi/gomega";
+      rev = "v1.7.1";
+      sha256 = "06p3x0910cdaa64l7d44s728d4j3yhps315dlcvrbjzhljjj7mam";
+    };
+  }
+  {
+    goPackagePath = "github.com/opentracing/opentracing-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/opentracing/opentracing-go";
+      rev = "v1.0.2";
+      sha256 = "0i0ghg94dg8lk05mw5n23983wq04yjvkjmdkc9z5y1f3508938h9";
+    };
+  }
+  {
+    goPackagePath = "github.com/otiai10/copy";
+    fetch = {
+      type = "git";
+      url = "https://github.com/otiai10/copy";
+      rev = "v1.0.1";
+      sha256 = "0xmy0kfcx48q10s040579pcjswfaxlwhv7a2z07z9r92fdrgw03k";
+    };
+  }
+  {
+    goPackagePath = "github.com/otiai10/curr";
+    fetch = {
+      type = "git";
+      url = "https://github.com/otiai10/curr";
+      rev = "v1.0.0";
+      sha256 = "0fpw20adq2wff7l4c87zaavj9jra4d64a8bbjixiiv3bbarim987";
+    };
+  }
+  {
+    goPackagePath = "github.com/otiai10/mint";
+    fetch = {
+      type = "git";
+      url = "https://github.com/otiai10/mint";
+      rev = "v1.3.0";
+      sha256 = "0kfc95jc2hfgwzcpdfa5hrxgj7s6rzx5jc0n1sn863bsngx2q1ca";
+    };
+  }
+  {
+    goPackagePath = "github.com/pelletier/go-toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pelletier/go-toml";
+      rev = "v1.2.0";
+      sha256 = "1fjzpcjng60mc3a4b2ql5a00d5gah84wj740dabv9kq67mpg8fxy";
+    };
+  }
+  {
+    goPackagePath = "github.com/philhofer/fwd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/philhofer/fwd";
+      rev = "v1.0.0";
+      sha256 = "1pg84khadh79v42y8sjsdgfb54vw2kzv7hpapxkifgj0yvcp30g2";
+    };
+  }
+  {
+    goPackagePath = "github.com/pingcap/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pingcap/errors";
+      rev = "v0.11.4";
+      sha256 = "02k6b30m42aya763fnwx3paq4r8h28yav4i2kv2z4r28r70xxcgn";
+    };
+  }
+  {
+    goPackagePath = "github.com/pkg/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pkg/errors";
+      rev = "v0.8.1";
+      sha256 = "0g5qcb4d4fd96midz0zdk8b9kz8xkzwfa8kr1cliqbg8sxsy5vd1";
+    };
+  }
+  {
+    goPackagePath = "github.com/pmezard/go-difflib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pmezard/go-difflib";
+      rev = "v1.0.0";
+      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
+    };
+  }
+  {
+    goPackagePath = "github.com/posener/complete";
+    fetch = {
+      type = "git";
+      url = "https://github.com/posener/complete";
+      rev = "v1.1.1";
+      sha256 = "1nbdiybjizbaxbf5q0xwbq0cjqw4bl6jggvsjzrpif0w86fcjda2";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_golang";
+      rev = "v1.0.0";
+      sha256 = "1f03ndyi3jq7zdxinnvzimz3s4z2374r6dikkc8i42xzb6d1bli6";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_model";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_model";
+      rev = "14fe0d1b01d4";
+      sha256 = "0zdmk6rbbx39cvfz0r59v2jg5sg9yd02b4pds5n5llgvivi99550";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/common";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/common";
+      rev = "v0.4.1";
+      sha256 = "0sf4sjdckblz1hqdfvripk3zyp8xq89w7q75kbsyg4c078af896s";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/procfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/procfs";
+      rev = "v0.0.3";
+      sha256 = "18c4m795fwng8f8qa395f3crvamlbk5y5afk8b5rzyisnmjq774y";
+    };
+  }
+  {
+    goPackagePath = "github.com/rogpeppe/go-internal";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rogpeppe/go-internal";
+      rev = "v1.4.0";
+      sha256 = "17wisy8bapx5ki0gpissm8dvv7x0lmdnrl1fka75g05kpbyv6g2n";
+    };
+  }
+  {
+    goPackagePath = "github.com/rubenv/sql-migrate";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rubenv/sql-migrate";
+      rev = "06338513c237";
+      sha256 = "0z7y7vsnzjswx51g9hlawnzmwnb8c7rks6ljzf6m1xbimhi4n3kz";
+    };
+  }
+  {
+    goPackagePath = "github.com/russross/blackfriday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/russross/blackfriday";
+      rev = "v1.5.2";
+      sha256 = "0jzbfzcywqcrnym4gxlz6nphmm1grg6wsl4f0r9x384rn83wkj7c";
+    };
+  }
+  {
+    goPackagePath = "github.com/ryanuber/columnize";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ryanuber/columnize";
+      rev = "v2.1.0";
+      sha256 = "0m9jhagb1k44zfcdai76xdf9vpi3bqdl7p078ffyibmz0z9jfap6";
+    };
+  }
+  {
+    goPackagePath = "github.com/sebest/xff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sebest/xff";
+      rev = "6c115e0ffa35";
+      sha256 = "0l11d8mc870vxzgi74cc9dqr7kgxjmbfkfi53gc30rsyx877jx4h";
+    };
+  }
+  {
+    goPackagePath = "github.com/sergi/go-diff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sergi/go-diff";
+      rev = "v1.0.0";
+      sha256 = "0swiazj8wphs2zmk1qgq75xza6m19snif94h2m6fi8dqkwqdl7c7";
+    };
+  }
+  {
+    goPackagePath = "github.com/shurcooL/sanitized_anchor_name";
+    fetch = {
+      type = "git";
+      url = "https://github.com/shurcooL/sanitized_anchor_name";
+      rev = "v1.0.0";
+      sha256 = "1gv9p2nr46z80dnfjsklc6zxbgk96349sdsxjz05f3z6wb6m5l8f";
+    };
+  }
+  {
+    goPackagePath = "github.com/sirupsen/logrus";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sirupsen/logrus";
+      rev = "v1.4.2";
+      sha256 = "087k2lxrr9p9dh68yw71d05h5g9p5v26zbwd6j7lghinjfaw334x";
+    };
+  }
+  {
+    goPackagePath = "github.com/smartystreets/assertions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/smartystreets/assertions";
+      rev = "b2de0cb4f26d";
+      sha256 = "1i7ldgavgl35c7gk25p7bvdr282ckng090zr4ch9mk1705akx09y";
+    };
+  }
+  {
+    goPackagePath = "github.com/smartystreets/goconvey";
+    fetch = {
+      type = "git";
+      url = "https://github.com/smartystreets/goconvey";
+      rev = "v1.6.4";
+      sha256 = "07zjxwszayal88z1j2bwnqrsa32vg8l4nivks5yfr9j8xfsw7n6m";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/afero";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/afero";
+      rev = "v1.1.2";
+      sha256 = "0miv4faf5ihjfifb1zv6aia6f6ik7h1s4954kcb8n6ixzhx9ck6k";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/cast";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/cast";
+      rev = "v1.3.0";
+      sha256 = "0xq1ffqj8y8h7dcnm0m9lfrh0ga7pssnn2c1dnr09chqbpn4bdc5";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/cobra";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/cobra";
+      rev = "v0.0.5";
+      sha256 = "0z4x8js65mhwg1gf6sa865pdxfgn45c3av9xlcc1l3xjvcnx32v2";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/jwalterweatherman";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/jwalterweatherman";
+      rev = "v1.0.0";
+      sha256 = "093fmmvavv84pv4q84hav7ph3fmrq87bvspjj899q0qsx37yvdr8";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/pflag";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/pflag";
+      rev = "v1.0.3";
+      sha256 = "1cj3cjm7d3zk0mf1xdybh0jywkbbw7a6yr3y22x9sis31scprswd";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/viper";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/viper";
+      rev = "v1.3.2";
+      sha256 = "1829hvf805kda65l59r17wvid7y0vr390s23zfhf4w7vdb4wp3zh";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/objx";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/objx";
+      rev = "v0.1.1";
+      sha256 = "0iph0qmpyqg4kwv8jsx6a56a7hhqq8swrazv40ycxk9rzr0s8yls";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/testify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/testify";
+      rev = "v1.4.0";
+      sha256 = "187i5g88sxfy4vxpm7dw1gwv29pa2qaq475lxrdh5livh69wqfjb";
+    };
+  }
+  {
+    goPackagePath = "github.com/tinylib/msgp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/tinylib/msgp";
+      rev = "v1.1.0";
+      sha256 = "08ha23sn14071ywrgxlyj7r523vzdwx1i83dcp1mqa830glgqaff";
+    };
+  }
+  {
+    goPackagePath = "github.com/uber-go/atomic";
+    fetch = {
+      type = "git";
+      url = "https://github.com/uber-go/atomic";
+      rev = "v1.3.2";
+      sha256 = "11pzvjys5ddjjgrv94pgk9pnip9yyb54z7idf33zk7p7xylpnsv6";
+    };
+  }
+  {
+    goPackagePath = "github.com/uber/jaeger-client-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/uber/jaeger-client-go";
+      rev = "v2.15.0";
+      sha256 = "0ki23m9zrf3vxp839fnp9ckr4m28y6mpad8g5s5lr5k8jkl0sfwj";
+    };
+  }
+  {
+    goPackagePath = "github.com/uber/jaeger-lib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/uber/jaeger-lib";
+      rev = "v1.5.0";
+      sha256 = "113fwpn80ylx970w8h7nfqnhh18dpx1jadbk7rbr8k68q4di4y0q";
+    };
+  }
+  {
+    goPackagePath = "github.com/ugorji/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ugorji/go";
+      rev = "v1.1.7";
+      sha256 = "068gja55kbh2iivp03x4n9dcml0rxv0k64ivkmq06si2ar1835rm";
+    };
+  }
+  {
+    goPackagePath = "github.com/urfave/negroni";
+    fetch = {
+      type = "git";
+      url = "https://github.com/urfave/negroni";
+      rev = "v1.0.0";
+      sha256 = "1gp6j74adi1cn8fq5v3wzlzhwl4zg43n2746m4fzdcdimihk3ccp";
+    };
+  }
+  {
+    goPackagePath = "github.com/valyala/bytebufferpool";
+    fetch = {
+      type = "git";
+      url = "https://github.com/valyala/bytebufferpool";
+      rev = "v1.0.0";
+      sha256 = "01lqzjddq6kz9v41nkky7wbgk7f1cw036sa7ldz10d82g5klzl93";
+    };
+  }
+  {
+    goPackagePath = "github.com/valyala/fasthttp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/valyala/fasthttp";
+      rev = "v1.6.0";
+      sha256 = "1r1hm4rv9w6x829jjg75y8xd523b76parsyyvjwyz8k2l6bm4h0b";
+    };
+  }
+  {
+    goPackagePath = "github.com/valyala/fasttemplate";
+    fetch = {
+      type = "git";
+      url = "https://github.com/valyala/fasttemplate";
+      rev = "v1.0.1";
+      sha256 = "0l131znbv8v67y20s4q361mwiww2c33zdc68mwvxchzk1gpy5ywq";
+    };
+  }
+  {
+    goPackagePath = "github.com/valyala/tcplisten";
+    fetch = {
+      type = "git";
+      url = "https://github.com/valyala/tcplisten";
+      rev = "ceec8f93295a";
+      sha256 = "0ksbj1gsdqanbnhly5w1wcc107bib4w0zpnyl00prr89zch3imnf";
+    };
+  }
+  {
+    goPackagePath = "github.com/xeipuuv/gojsonpointer";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xeipuuv/gojsonpointer";
+      rev = "4e3ac2762d5f";
+      sha256 = "13y6iq2nzf9z4ls66bfgnnamj2m3438absmbpqry64bpwjfbsi9q";
+    };
+  }
+  {
+    goPackagePath = "github.com/xeipuuv/gojsonreference";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xeipuuv/gojsonreference";
+      rev = "bd5ef7bd5415";
+      sha256 = "1xby79padc7bmyb8rfbad8wfnfdzpnh51b1n8c0kibch0kwc1db5";
+    };
+  }
+  {
+    goPackagePath = "github.com/xeipuuv/gojsonschema";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xeipuuv/gojsonschema";
+      rev = "v1.2.0";
+      sha256 = "1mqiq0r8qw4qlfp3ls8073r6514rmzwrmdn4j33rppk3zh942i6l";
+    };
+  }
+  {
+    goPackagePath = "github.com/xordataexchange/crypt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xordataexchange/crypt";
+      rev = "b2862e3d0a77";
+      sha256 = "04q3856anpzl4gdfgmg7pbp9cx231nkz3ymq2xp27rnmmwhfxr8y";
+    };
+  }
+  {
+    goPackagePath = "github.com/yalp/jsonpath";
+    fetch = {
+      type = "git";
+      url = "https://github.com/yalp/jsonpath";
+      rev = "5cc68e5049a0";
+      sha256 = "0kkyxp1cg3kfxy5hhwzxg132jin4xb492z5jpqq94ix15v6rdf4b";
+    };
+  }
+  {
+    goPackagePath = "github.com/yudai/gojsondiff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/yudai/gojsondiff";
+      rev = "v1.0.0";
+      sha256 = "0qnymi0027mb8kxm24mmd22bvjrdkc56c7f4q3lbdf93x1vxbbc2";
+    };
+  }
+  {
+    goPackagePath = "github.com/yudai/golcs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/yudai/golcs";
+      rev = "ecda9a501e82";
+      sha256 = "0mx6wc5fz05yhvg03vvps93bc5mw4vnng98fhmixd47385qb29pq";
+    };
+  }
+  {
+    goPackagePath = "github.com/yudai/pp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/yudai/pp";
+      rev = "v2.0.1";
+      sha256 = "18vbc7jagnjw1wpvhqjffl0np7bzzqdd9jpdcisvj5h85lbyn5gk";
+    };
+  }
+  {
+    goPackagePath = "github.com/ziutek/mymysql";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ziutek/mymysql";
+      rev = "v1.5.4";
+      sha256 = "172s7sv5bgc40x81k18hypf9c4n8hn9v5w5zwyr4mi5prbavqcci";
+    };
+  }
+  {
+    goPackagePath = "gitlab.com/gitlab-org/gitlab-shell";
+    fetch = {
+      type = "git";
+      url = "https://gitlab.com/gitlab-org/gitlab-shell.git";
+      rev = "716e30c55e89";
+      sha256 = "0g2bgwm5rf93xfd40j3d2a5js1a212r2l2qdbds3gp7h0v73npjw";
+    };
+  }
+  {
+    goPackagePath = "gitlab.com/gitlab-org/labkit";
+    fetch = {
+      type = "git";
+      url = "https://gitlab.com/gitlab-org/labkit.git";
+      rev = "0149780c759d";
+      sha256 = "1krp5jkwpckpdznbl9xp4yvq6cii750r24agcni3snbbs8hd8gb1";
+    };
+  }
+  {
+    goPackagePath = "go.opencensus.io";
+    fetch = {
+      type = "git";
+      url = "https://github.com/census-instrumentation/opencensus-go";
+      rev = "v0.22.2";
+      sha256 = "0lz7fid63pdrcvyzk5kn7vlcva102h61igmw7pz824wvj9k3hy4q";
+    };
+  }
+  {
+    goPackagePath = "go.uber.org/atomic";
+    fetch = {
+      type = "git";
+      url = "https://github.com/uber-go/atomic";
+      rev = "v1.3.2";
+      sha256 = "11pzvjys5ddjjgrv94pgk9pnip9yyb54z7idf33zk7p7xylpnsv6";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "87dc89f01550";
+      sha256 = "0z4i1m2yn3f31ci7wvcm2rxkx2yiv7a78mfzklncmsz2k97rlh2g";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/exp";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/exp";
+      rev = "da58074b4299";
+      sha256 = "1pgvdbjm3n47505diw3mm2hisp9b9q2lyvgl9m6xh2wx83b0cj48";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/image";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/image";
+      rev = "cff245a6509b";
+      sha256 = "0hiznlkiaay30acwvvyq8g6bm32r7bc6gv47pygrcxqpapasbz84";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/lint";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/lint";
+      rev = "fdd1cda4f05f";
+      sha256 = "0a23pc90fqar8sm1b480sls15ss20rqk13yrf63b6rnyd2c6z0x2";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/mobile";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/mobile";
+      rev = "d2bd2a29d028";
+      sha256 = "1nv6vvhnjr01nx9y06q46ww87dppdwpbqrlsfg1xf2587wxl8xiv";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/mod";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/mod";
+      rev = "c90efee705ee";
+      sha256 = "0i5md645rmcy5z5ij9ng428k9rz4g3k1kjy3blsq1264rn426gdf";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "6afb5195e5aa";
+      sha256 = "1aiz41q2yxgg3dxfkn33ff54vhaxbiwcps9j3ia1xx4cqxim38zw";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/oauth2";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/oauth2";
+      rev = "bf48bf16ab8d";
+      sha256 = "1sirdib60zwmh93kf9qrx51r8544k1p9rs5mk0797wibz3m4mrdg";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sync";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sync";
+      rev = "cd5d95a43a6e";
+      sha256 = "1nqkyz2y1qvqcma52ijh02s8aiqmkfb95j08f6zcjhbga3ds6hds";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "86b910548bc1";
+      sha256 = "1z8l2wp27q0bd4nc46j31lc7cr6kiw52zi6ix3i121pd3rcyrw44";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "v0.3.2";
+      sha256 = "0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/time";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/time";
+      rev = "9d24e82272b4";
+      sha256 = "1f5nkr4vys2vbd8wrwyiq2f5wcaahhpxmia85d1gshcbqjqf8dkb";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "43d50277825c";
+      sha256 = "1168q4da36wq9w2591iqzsfy5ymwfi2g46bv5dnyyspg155ld19k";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/xerrors";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/xerrors";
+      rev = "9bdfabe68543";
+      sha256 = "1yjfi1bk9xb81lqn85nnm13zz725wazvrx3b50hx19qmwg7a4b0c";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/api";
+    fetch = {
+      type = "git";
+      url = "https://code.googlesource.com/google-api-go-client";
+      rev = "v0.15.0";
+      sha256 = "1ljhwv5xsgsbqia70f35q19vwrsm47sh08ljbwdyfa867ff17qdh";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/appengine";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/appengine";
+      rev = "v1.6.5";
+      sha256 = "05hbq4cs7bqw0zl17bx8rzdkszid3nyl92100scg3jjrg70dhm7w";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/genproto";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-genproto";
+      rev = "ca5a22157cba";
+      sha256 = "0ldkh6f0g0wzfkp09ib15a62bmcbpsxj93saikqmc86242bcxij0";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/grpc";
+    fetch = {
+      type = "git";
+      url = "https://github.com/grpc/grpc-go";
+      rev = "v1.24.0";
+      sha256 = "0h8mwv74vzcfb7p4ai247x094skxca71vjp4wpj2wzmri0x9p4v6";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/DataDog/dd-trace-go.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/DataDog/dd-trace-go.v1";
+      rev = "v1.7.0";
+      sha256 = "0j45skiiayfsaw8id4g20k51zfr0raj47a03q2icka5xrh3qj6yq";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/alecthomas/kingpin.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/alecthomas/kingpin.v2";
+      rev = "v2.2.6";
+      sha256 = "0mndnv3hdngr3bxp7yxfd47cas4prv98sqw534mx7vp38gd88n5r";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/check.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/check.v1";
+      rev = "788fd7840127";
+      sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/errgo.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/errgo.v2";
+      rev = "v2.1.0";
+      sha256 = "065mbihiy7q67wnql0bzl9y1kkvck5ivra68254zbih52jxwrgr2";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/fsnotify.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/fsnotify.v1";
+      rev = "v1.4.7";
+      sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/go-playground/assert.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/go-playground/assert.v1";
+      rev = "v1.2.1";
+      sha256 = "1h4amgykpa0djwi619llr3g55p75ia0mi184h9s5zdl8l4rhn9pm";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/go-playground/validator.v8";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/go-playground/validator.v8";
+      rev = "v8.18.2";
+      sha256 = "1m2i48ph5a3kw9nlw2srx8i04v7chicds2hlzlrfm15045crga55";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/gorp.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/gorp.v1";
+      rev = "v1.7.2";
+      sha256 = "0zwkq4cv71vp7cmpfcs54908g1amr0cdxv1b8h1icf64jjawb1lb";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/mgo.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/mgo.v2";
+      rev = "9856a29383ce";
+      sha256 = "1gfbcmvpwwf1lydxj3g42wv2g9w3pf0y02igqk4f4f21h02sazkw";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/tomb.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/tomb.v1";
+      rev = "dd632973f1e7";
+      sha256 = "1lqmq1ag7s4b3gc3ddvr792c5xb5k6sfn0cchr3i2s7f1c231zjv";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "v2.2.8";
+      sha256 = "1inf7svydzscwv9fcjd2rm61a4xjk6jkswknybmns2n58shimapw";
+    };
+  }
+  {
+    goPackagePath = "honnef.co/go/tools";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dominikh/go-tools";
+      rev = "v0.0.1-2019.2.3";
+      sha256 = "1rwwahmbs4dwxncwjj56likir1kps9937vm2id3rygxzzla40zal";
+    };
+  }
+  {
+    goPackagePath = "rsc.io/binaryregexp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rsc/binaryregexp";
+      rev = "v0.2.0";
+      sha256 = "1kar0myy85waw418zslviwx8846zj0m9cmqkxjx0fvgjdi70nc4b";
+    };
+  }
+]
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/fix-executable-check.patch b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/fix-executable-check.patch
new file mode 100644
index 000000000000..65e130078b7f
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/fix-executable-check.patch
@@ -0,0 +1,13 @@
+diff --git a/internal/config/config.go b/internal/config/config.go
+index 037c9602..3d5409dc 100644
+--- a/internal/config/config.go
++++ b/internal/config/config.go
+@@ -185,7 +185,7 @@ func checkExecutable(path string) error {
+ 		return err
+ 	}
+ 
+-	if fi.Mode()&0755 < 0755 {
++	if fi.Mode()&0555 < 0555 {
+ 		return fmt.Errorf("not executable: %v", path)
+ 	}
+ 
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/gemset.nix b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/gemset.nix
new file mode 100644
index 000000000000..f693d5b4c7ba
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/gemset.nix
@@ -0,0 +1,927 @@
+{
+  abstract_type = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09330cmhrc2wmfhdj9zzg82sv6cdhm3qgdkva5ni5xfjril2pf14";
+      type = "gem";
+    };
+    version = "0.0.7";
+  };
+  actionpack = {
+    dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1665r4ffqdpykxwpgdnaq7xsaz1nfswc5wjs2qr0npx8bq7g49kh";
+      type = "gem";
+    };
+    version = "6.0.3.1";
+  };
+  actionview = {
+    dependencies = ["activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1n21pswh3k7m33vzhxyrbi5lj64b1138yqv34jjhkhlq3474b4rh";
+      type = "gem";
+    };
+    version = "6.0.3.1";
+  };
+  activesupport = {
+    dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo" "zeitwerk"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1l29n9n38c9lpy5smh26r7fy7jp2bpjqlzhxgsr79cv7xpwlrbhs";
+      type = "gem";
+    };
+    version = "6.0.3.1";
+  };
+  adamantium = {
+    dependencies = ["ice_nine" "memoizable"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0165r2ikgfwv2rm8dzyijkp74fvg0ni72hpdx8ay2v7cj08dqyak";
+      type = "gem";
+    };
+    version = "0.2.0";
+  };
+  addressable = {
+    dependencies = ["public_suffix"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bcm2hchn897xjhqj9zzsxf3n9xhddymj4lsclz508f4vw3av46l";
+      type = "gem";
+    };
+    version = "2.6.0";
+  };
+  ast = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "184ssy3w93nkajlz2c70ifm79jp3j737294kbc5fjw69v1w0n9x7";
+      type = "gem";
+    };
+    version = "2.4.0";
+  };
+  binding_ninja = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "17fa3sv6p2fw9g8fxpwx1kjhhs28aw41akkba0hlgvk60055b1aa";
+      type = "gem";
+    };
+    version = "0.2.3";
+  };
+  builder = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "045wzckxpwcqzrjr353cxnyaxgf0qg22jh00dcx7z38cys5g1jlr";
+      type = "gem";
+    };
+    version = "3.2.4";
+  };
+  charlock_holmes = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nf1l31n10yaark2rrg5qzyzcx9w80681449s3j09qmnipsl8rl5";
+      type = "gem";
+    };
+    version = "0.7.6";
+  };
+  coderay = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15vav4bhcc2x3jmi3izb11l4d9f3xv8hp2fszb7iqmpsccv1pz4y";
+      type = "gem";
+    };
+    version = "1.1.2";
+  };
+  concord = {
+    dependencies = ["adamantium" "equalizer"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1b6cdn0fg4n9gzbdr7zyf4jq40y6h0c0g9cra7wk9hhmsylk91bg";
+      type = "gem";
+    };
+    version = "0.1.5";
+  };
+  concurrent-ruby = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "094387x4yasb797mv07cs3g6f08y56virc2rjcpb1k79rzaj3nhl";
+      type = "gem";
+    };
+    version = "1.1.6";
+  };
+  crack = {
+    dependencies = ["safe_yaml"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0abb0fvgw00akyik1zxnq7yv391va148151qxdghnzngv66bl62k";
+      type = "gem";
+    };
+    version = "0.4.3";
+  };
+  crass = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0pfl5c0pyqaparxaqxi6s4gfl21bdldwiawrc0aknyvflli60lfw";
+      type = "gem";
+    };
+    version = "1.0.6";
+  };
+  diff-lcs = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18w22bjz424gzafv6nzv98h0aqkwz3d9xhm7cbr1wfbyas8zayza";
+      type = "gem";
+    };
+    version = "1.3";
+  };
+  docile = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qrwiyagxzl8zlx3dafb0ay8l14ib7imb2rsmx70i5cp420v8gif";
+      type = "gem";
+    };
+    version = "1.3.2";
+  };
+  equalizer = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1kjmx3fygx8njxfrwcmn7clfhjhb6bvv3scy2lyyi0wqyi3brra4";
+      type = "gem";
+    };
+    version = "0.0.11";
+  };
+  erubi = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nwzxnqhr31fn7nbqmffcysvxjdfl3bhxi0bld5qqhcnfc1xd13x";
+      type = "gem";
+    };
+    version = "1.9.0";
+  };
+  escape_utils = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qminivnyzwmqjhrh3b92halwbk0zcl9xn828p5rnap1szl2yag5";
+      type = "gem";
+    };
+    version = "1.2.1";
+  };
+  factory_bot = {
+    dependencies = ["activesupport"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "02ijqa3g6lb8l8mvi40z1zgh9bb3gr08p2r2ym159ghhfbcrmbwk";
+      type = "gem";
+    };
+    version = "5.0.2";
+  };
+  faraday = {
+    dependencies = ["multipart-post"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0s72m05jvzc1pd6cw1i289chas399q0a14xrwg4rvkdwy7bgzrh0";
+      type = "gem";
+    };
+    version = "0.15.4";
+  };
+  ffi = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10lfhahnnc91v63xpvk65apn61pib086zha3z5sp1xk9acfx12h4";
+      type = "gem";
+    };
+    version = "1.12.2";
+  };
+  gemojione = {
+    dependencies = ["json"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ayk8r147k1s38nj18pwk76npx1p7jhi86silk800nj913pjvrhj";
+      type = "gem";
+    };
+    version = "3.3.0";
+  };
+  github-linguist = {
+    dependencies = ["charlock_holmes" "escape_utils" "mini_mime" "rugged"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rhw05d88l928g6y2bngvmr66565b2z822hyynmb13b7khf07y1a";
+      type = "gem";
+    };
+    version = "7.9.0";
+  };
+  github-markup = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "17g6g18gdjg63k75sfwiskjzl9i0hfcnrkcpb4fwrnb20v3jgswp";
+      type = "gem";
+    };
+    version = "1.7.0";
+  };
+  gitlab-gollum-lib = {
+    dependencies = ["gemojione" "github-markup" "gitlab-gollum-rugged_adapter" "nokogiri" "rouge" "sanitize" "stringex"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0y21k8bix3h2qdys2kz2z831cclmx3zc15x67cp8s945dkmh39sj";
+      type = "gem";
+    };
+    version = "4.2.7.9";
+  };
+  gitlab-gollum-rugged_adapter = {
+    dependencies = ["mime-types" "rugged"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1d32d3yfadzwrarv0biwbfbkz2bqcc0dc3q0imnk962jaay19gc4";
+      type = "gem";
+    };
+    version = "0.4.4.2";
+  };
+  gitlab-labkit = {
+    dependencies = ["actionpack" "activesupport" "grpc" "jaeger-client" "opentracing" "redis"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0a63zgjll83b25hiq8m4sk75jci2rj8z46lss0j3bc6zi3pxnzax";
+      type = "gem";
+    };
+    version = "0.12.0";
+  };
+  gitlab-markup = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xnlra517pfj3hx07kasbqlcw51ix4xajr6bsd3mwg8bc92dlwy7";
+      type = "gem";
+    };
+    version = "1.7.1";
+  };
+  google-protobuf = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0by3289irdklb9gjqw41fq6mg6yja3iyzh99dj8p8z9l4brllqn4";
+      type = "gem";
+    };
+    version = "3.8.0";
+  };
+  googleapis-common-protos-types = {
+    dependencies = ["google-protobuf"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hyr94cafiqj0k8q19hnl658pmbz2b404akikzfv4hdb1j1bwsg1";
+      type = "gem";
+    };
+    version = "1.0.4";
+  };
+  grpc = {
+    dependencies = ["google-protobuf" "googleapis-common-protos-types"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18wikj9qd4jb4lks55cs2cf3q7fifnanm9z9ywnxhpj57vbnilpf";
+      type = "gem";
+    };
+    version = "1.24.0";
+  };
+  grpc-tools = {
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0pjs2sm43mai2fy0jsbxl8rs9bych8f5j8hv630fjwh0323cmcc9";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
+  hashdiff = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1qji49afni3c90zws617x514xi7ik70g2iwngj9skq68mjcq6y4x";
+      type = "gem";
+    };
+    version = "0.3.9";
+  };
+  i18n = {
+    dependencies = ["concurrent-ruby"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jwrd1l4mxz06iyx6053lr6hz2zy7ah2k3ranfzisvych5q19kwm";
+      type = "gem";
+    };
+    version = "1.8.2";
+  };
+  ice_nine = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nv35qg1rps9fsis28hz2cq2fx1i96795f91q4nmkm934xynll2x";
+      type = "gem";
+    };
+    version = "0.11.2";
+  };
+  jaeger-client = {
+    dependencies = ["opentracing" "thrift"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "198m72c9w3wfwr1mq22dcjjm7d4jd0bci4lrq6zq2zvlzhi04n8l";
+      type = "gem";
+    };
+    version = "0.10.0";
+  };
+  jaro_winkler = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1zz27z88qznix4r65gd9h56gl177snlfpgv10b0s69vi8qpl909l";
+      type = "gem";
+    };
+    version = "1.5.2";
+  };
+  json = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0sx97bm9by389rbzv8r1f43h06xcz8vwi3h5jv074gvparql7lcx";
+      type = "gem";
+    };
+    version = "2.2.0";
+  };
+  licensee = {
+    dependencies = ["rugged"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0w6d2smhg3kzcx4m2ii06akakypwhiglansk51bpx290hhc8h3pc";
+      type = "gem";
+    };
+    version = "8.9.2";
+  };
+  listen = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0inlw7vix61170vjr87h9izhjm5dbby8rbfrf1iryiv7b3kyvkxl";
+      type = "gem";
+    };
+    version = "0.5.3";
+  };
+  loofah = {
+    dependencies = ["crass" "nokogiri"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jk9fgn5ayzbqvzqm11gbkqvas77zdbpkvynlylyiwynclgrn040";
+      type = "gem";
+    };
+    version = "2.5.0";
+  };
+  memoizable = {
+    dependencies = ["thread_safe"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0v42bvghsvfpzybfazl14qhkrjvx0xlmxz0wwqc960ga1wld5x5c";
+      type = "gem";
+    };
+    version = "0.4.2";
+  };
+  method_source = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pviwzvdqd90gn6y7illcdd9adapw8fczml933p5vl739dkvl3lq";
+      type = "gem";
+    };
+    version = "0.9.2";
+  };
+  mime-types = {
+    dependencies = ["mime-types-data"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0fjxy1jm52ixpnv3vg9ld9pr9f35gy0jp66i1njhqjvmnvq0iwwk";
+      type = "gem";
+    };
+    version = "3.2.2";
+  };
+  mime-types-data = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1m00pg19cm47n1qlcxgl91ajh2yq0fszvn1vy8fy0s1jkrp9fw4a";
+      type = "gem";
+    };
+    version = "3.2019.0331";
+  };
+  mini_mime = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1axm0rxyx3ss93wbmfkm78a6x03l8y4qy60rhkkiq0aza0vwq3ha";
+      type = "gem";
+    };
+    version = "1.0.2";
+  };
+  mini_portile2 = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15zplpfw3knqifj9bpf604rb3wc1vhq6363pd6lvhayng8wql5vy";
+      type = "gem";
+    };
+    version = "2.4.0";
+  };
+  minitest = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0g73x65hmjph8dg1h3rkzfg7ys3ffxm35hj35grw75fixmq53qyz";
+      type = "gem";
+    };
+    version = "5.14.0";
+  };
+  msgpack = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1qr2mkm2i3m76zarvy7qgjl9596hmvjrg7x6w42vx8cfsbf5p0y1";
+      type = "gem";
+    };
+    version = "1.3.1";
+  };
+  multipart-post = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09k0b3cybqilk1gwrwwain95rdypixb2q9w65gd44gfzsd84xi1x";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
+  nokogiri = {
+    dependencies = ["mini_portile2"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "12j76d0bp608932xkzmfi638c7aqah57l437q8494znzbj610qnm";
+      type = "gem";
+    };
+    version = "1.10.9";
+  };
+  nokogumbo = {
+    dependencies = ["nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09qc1c7acv9qm48vk2kzvnrq4ij8jrql1cv33nmv2nwmlggy0jyj";
+      type = "gem";
+    };
+    version = "1.5.0";
+  };
+  opentracing = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "11lj1d8vq0hkb5hjz8q4lm82cddrggpbb33dhqfn7rxhwsmxgdfy";
+      type = "gem";
+    };
+    version = "0.5.0";
+  };
+  optimist = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05jxrp3nbn5iilc1k7ir90mfnwc5abc9h78s5rpm3qafwqxvcj4j";
+      type = "gem";
+    };
+    version = "3.0.0";
+  };
+  parallel = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1x1gzgjrdlkm1aw0hfpyphsxcx90qgs3y4gmp9km3dvf4hc4qm8r";
+      type = "gem";
+    };
+    version = "1.17.0";
+  };
+  parser = {
+    dependencies = ["ast"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0iirjc36irgwpfb58jdf9gli382cj893y9caqhxas8anpzzlikgc";
+      type = "gem";
+    };
+    version = "2.7.0.5";
+  };
+  proc_to_ast = {
+    dependencies = ["coderay" "parser" "unparser"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "14c65w48bbzp5lh1cngqd1y25kqvfnq1iy49hlzshl12dsk3z9wj";
+      type = "gem";
+    };
+    version = "0.1.0";
+  };
+  procto = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "13imvg1x50rz3r0yyfbhxwv72lbf7q28qx9l9nfbb91h2n9ch58c";
+      type = "gem";
+    };
+    version = "0.0.3";
+  };
+  pry = {
+    dependencies = ["coderay" "method_source"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00rm71x0r1jdycwbs83lf9l6p494m99asakbvqxh8rz7zwnlzg69";
+      type = "gem";
+    };
+    version = "0.12.2";
+  };
+  public_suffix = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08q64b5br692dd3v0a9wq9q5dvycc6kmiqmjbdxkxbfizggsvx6l";
+      type = "gem";
+    };
+    version = "3.0.3";
+  };
+  rack = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04qa0ry26hxfwkmvhi0fjlvbm8irzg66ahnpx2pp3bl6qbdc0i8w";
+      type = "gem";
+    };
+    version = "2.1.2";
+  };
+  rack-test = {
+    dependencies = ["rack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rh8h376mx71ci5yklnpqqn118z3bl67nnv5k801qaqn1zs62h8m";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  rails-dom-testing = {
+    dependencies = ["activesupport" "nokogiri"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1lfq2a7kp2x64dzzi5p4cjcbiv62vxh9lyqk2f0rqq3fkzrw8h5i";
+      type = "gem";
+    };
+    version = "2.0.3";
+  };
+  rails-html-sanitizer = {
+    dependencies = ["loofah"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1icpqmxbppl4ynzmn6dx7wdil5hhq6fz707m9ya6d86c7ys8sd4f";
+      type = "gem";
+    };
+    version = "1.3.0";
+  };
+  rainbow = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bb2fpjspydr6x0s8pn1pqkzmxszvkfapv0p4627mywl7ky4zkhk";
+      type = "gem";
+    };
+    version = "3.0.0";
+  };
+  rbtrace = {
+    dependencies = ["ffi" "msgpack" "optimist"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1lwsq08i0aj8na5q5ba3gg02sx3wl58fi6m52svl5p7cy56ycdwi";
+      type = "gem";
+    };
+    version = "0.4.11";
+  };
+  rdoc = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1gh7sc3xd4rgl9z90181cq580r1xqn063mmv51wdrhhsrkkw2bi9";
+      type = "gem";
+    };
+    version = "6.2.0";
+  };
+  redis = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08v2y91q1pmv12g9zsvwj66w3s8j9d82yrmxgyv4y4gz380j3wyh";
+      type = "gem";
+    };
+    version = "4.1.3";
+  };
+  rouge = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "102rc07d78k5bkl0s9nd1gw6wz0w0zcvg4g5sl7z9xxi4r793c35";
+      type = "gem";
+    };
+    version = "3.19.0";
+  };
+  rspec = {
+    dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15ppasvb9qrscwlyjz67ppw1lnxiqnkzx5vkx1bd8x5n3dhikxc3";
+      type = "gem";
+    };
+    version = "3.8.0";
+  };
+  rspec-core = {
+    dependencies = ["rspec-support"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1p1s5bnbqp3sxk67y0fh0x884jjym527r0vgmhbm81w7aq6b7l4p";
+      type = "gem";
+    };
+    version = "3.8.0";
+  };
+  rspec-expectations = {
+    dependencies = ["diff-lcs" "rspec-support"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1c4gs5ybf7km0qshdm92p38zvg32n1j2kr5fgs2icacz7xf2y6fy";
+      type = "gem";
+    };
+    version = "3.8.3";
+  };
+  rspec-mocks = {
+    dependencies = ["diff-lcs" "rspec-support"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "06y508cjqycb4yfhxmb3nxn0v9xqf17qbd46l1dh4xhncinr4fyp";
+      type = "gem";
+    };
+    version = "3.8.0";
+  };
+  rspec-parameterized = {
+    dependencies = ["binding_ninja" "parser" "proc_to_ast" "rspec" "unparser"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1c0892jbaznnldk1wi24qxm70g4zhw2idqx516rhgdzgd7yh5j31";
+      type = "gem";
+    };
+    version = "0.4.2";
+  };
+  rspec-support = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0p3m7drixrlhvj2zpc38b11x145bvm311x6f33jjcxmvcm0wq609";
+      type = "gem";
+    };
+    version = "3.8.0";
+  };
+  rubocop = {
+    dependencies = ["jaro_winkler" "parallel" "parser" "rainbow" "ruby-progressbar" "unicode-display_width"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1cmw8ajaiidvrzjcsljh47f4l3lmcazqrzljgalj3szkr8ibkk5i";
+      type = "gem";
+    };
+    version = "0.69.0";
+  };
+  ruby-progressbar = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1cv2ym3rl09svw8940ny67bav7b2db4ms39i4raaqzkf59jmhglk";
+      type = "gem";
+    };
+    version = "1.10.0";
+  };
+  rugged = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rdidxgpk1b6y1jq9v77lcx5khq0s9q0s253lr8x57d3hk43iskx";
+      type = "gem";
+    };
+    version = "0.28.4.1";
+  };
+  safe_yaml = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0j7qv63p0vqcd838i2iy2f76c3dgwzkiz1d1xkg7n0pbnxj2vb56";
+      type = "gem";
+    };
+    version = "1.0.5";
+  };
+  sanitize = {
+    dependencies = ["crass" "nokogiri" "nokogumbo"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0j4j2a2mkk1a70vbx959pvx0gvr1zb9snjwvsppwj28bp0p0b2bv";
+      type = "gem";
+    };
+    version = "4.6.6";
+  };
+  sentry-raven = {
+    dependencies = ["faraday"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1j9rwbig24ry0smgvmkzdjrzyszniaswipinvflzxzzaz52v7483";
+      type = "gem";
+    };
+    version = "2.9.0";
+  };
+  simplecov = {
+    dependencies = ["docile" "json" "simplecov-html"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1135k46nik05sdab30yxb8264lqiz01c8v000g16cl9pjc4mxrdw";
+      type = "gem";
+    };
+    version = "0.17.1";
+  };
+  simplecov-html = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1lihraa4rgxk8wbfl77fy9sf0ypk31iivly8vl3w04srd7i0clzn";
+      type = "gem";
+    };
+    version = "0.10.2";
+  };
+  stringex = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15ns7j5smw04w6w7bqd5mm2qcl7w9lhwykyb974i4isgg9yc23ys";
+      type = "gem";
+    };
+    version = "2.8.5";
+  };
+  thread_safe = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy";
+      type = "gem";
+    };
+    version = "0.3.6";
+  };
+  thrift = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "02p107kwx7jnkh6fpdgvaji0xdg6xkaarngkqjml6s4zny4m8slv";
+      type = "gem";
+    };
+    version = "0.11.0.0";
+  };
+  timecop = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0d7mm786180v4kzvn1f77rhfppsg5n0sq2bdx63x9nv114zm8jrp";
+      type = "gem";
+    };
+    version = "0.9.1";
+  };
+  tzinfo = {
+    dependencies = ["thread_safe"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1i3jh086w1kbdj3k5l60lc3nwbanmzdf8yjj3mlrx9b2gjjxhi9r";
+      type = "gem";
+    };
+    version = "1.2.7";
+  };
+  unicode-display_width = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08kfiniak1pvg3gn5k6snpigzvhvhyg7slmm0s2qx5zkj62c1z2w";
+      type = "gem";
+    };
+    version = "1.6.0";
+  };
+  unparser = {
+    dependencies = ["abstract_type" "adamantium" "concord" "diff-lcs" "equalizer" "parser" "procto"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qg1apxlnf4kxfj9jpm6hhv73jsncbs4zpsgyan32p5r331q1gmx";
+      type = "gem";
+    };
+    version = "0.4.7";
+  };
+  vcr = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qh7lkj9b0shph84dw1wsrlaprl0jn1i4339fpsfy99402290zrr";
+      type = "gem";
+    };
+    version = "4.0.0";
+  };
+  webmock = {
+    dependencies = ["addressable" "crack" "hashdiff"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "03994dxs4xayvkxqp01dd1ivhg4xxx7z35f7cxw7y2mwj3xn24ib";
+      type = "gem";
+    };
+    version = "3.4.2";
+  };
+  zeitwerk = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1akpm3pwvyiack2zk6giv9yn3cqb8pw6g40p4394pdc3xmy3s4k0";
+      type = "gem";
+    };
+    version = "2.3.0";
+  };
+}
\ No newline at end of file
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix b/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix
new file mode 100644
index 000000000000..3e32e90a6d2a
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchFromGitLab, buildGoPackage, ruby }:
+
+buildGoPackage rec {
+  pname = "gitlab-shell";
+  version = "13.2.0";
+  src = fetchFromGitLab {
+    owner = "gitlab-org";
+    repo = "gitlab-shell";
+    rev = "v${version}";
+    sha256 = "0drdpg4nmhzrmy8sl1f3hcd1278bpapgf0wmhi94xlyayh47j53a";
+  };
+
+  buildInputs = [ ruby ];
+
+  patches = [ ./remove-hardcoded-locations.patch ];
+
+  goPackagePath = "gitlab.com/gitlab-org/gitlab-shell";
+  goDeps = ./deps.nix;
+
+  postInstall = ''
+    cp -r "$NIX_BUILD_TOP/go/src/$goPackagePath"/bin/* $out/bin
+    cp -r "$NIX_BUILD_TOP/go/src/$goPackagePath"/{support,VERSION} $out/
+  '';
+
+  meta = with stdenv.lib; {
+    description = "SSH access and repository management app for GitLab";
+    homepage = "http://www.gitlab.com/";
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ fpletz globin talyz ];
+    license = licenses.mit;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-shell/deps.nix b/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-shell/deps.nix
new file mode 100644
index 000000000000..72c0f2cdf513
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-shell/deps.nix
@@ -0,0 +1,714 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
+[
+  {
+    goPackagePath = "bou.ke/monkey";
+    fetch = {
+      type = "git";
+      url = "https://github.com/bouk/monkey";
+      rev = "v1.0.1";
+      sha256 = "050y07pwx5zk7fchp0lhf35w417sml7lxkkzly8f932fy25rydz5";
+    };
+  }
+  {
+    goPackagePath = "cloud.google.com/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/googleapis/google-cloud-go";
+      rev = "v0.26.0";
+      sha256 = "149v3ci17g6wd2pm18mzcncq5qpl9hwdjnz3rlbn5rfidyn46la1";
+    };
+  }
+  {
+    goPackagePath = "github.com/BurntSushi/toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/toml";
+      rev = "v0.3.1";
+      sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
+    };
+  }
+  {
+    goPackagePath = "github.com/alecthomas/template";
+    fetch = {
+      type = "git";
+      url = "https://github.com/alecthomas/template";
+      rev = "a0175ee3bccc";
+      sha256 = "0qjgvvh26vk1cyfq9fadyhfgdj36f1iapbmr5xp6zqipldz8ffxj";
+    };
+  }
+  {
+    goPackagePath = "github.com/alecthomas/units";
+    fetch = {
+      type = "git";
+      url = "https://github.com/alecthomas/units";
+      rev = "2efee857e7cf";
+      sha256 = "1j65b91qb9sbrml9cpabfrcf07wmgzzghrl7809hjjhrmbzri5bl";
+    };
+  }
+  {
+    goPackagePath = "github.com/beorn7/perks";
+    fetch = {
+      type = "git";
+      url = "https://github.com/beorn7/perks";
+      rev = "v1.0.0";
+      sha256 = "1i1nz1f6g55xi2y3aiaz5kqfgvknarbfl4f0sx4nyyb4s7xb1z9x";
+    };
+  }
+  {
+    goPackagePath = "github.com/certifi/gocertifi";
+    fetch = {
+      type = "git";
+      url = "https://github.com/certifi/gocertifi";
+      rev = "ee1a9a0726d2";
+      sha256 = "08l6lqaw83pva6fa0aafmhmy1mhb145av21772zfh3ij809a37i4";
+    };
+  }
+  {
+    goPackagePath = "github.com/client9/misspell";
+    fetch = {
+      type = "git";
+      url = "https://github.com/client9/misspell";
+      rev = "v0.3.4";
+      sha256 = "1vwf33wsc4la25zk9nylpbp9px3svlmldkm0bha4hp56jws4q9cs";
+    };
+  }
+  {
+    goPackagePath = "github.com/cloudflare/tableflip";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cloudflare/tableflip";
+      rev = "8392f1641731";
+      sha256 = "0by5hk8s0bhhl3kiw658p5g53zvc61k4q2wxnh1w64p5ghd1rfn8";
+    };
+  }
+  {
+    goPackagePath = "github.com/codahale/hdrhistogram";
+    fetch = {
+      type = "git";
+      url = "https://github.com/codahale/hdrhistogram";
+      rev = "3a0bb77429bd";
+      sha256 = "1zampgfjbxy192cbwdi7g86l1idxaam96d834wncnpfdwgh5kl57";
+    };
+  }
+  {
+    goPackagePath = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev = "v1.1.1";
+      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
+    };
+  }
+  {
+    goPackagePath = "github.com/fsnotify/fsnotify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fsnotify/fsnotify";
+      rev = "v1.4.7";
+      sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
+    };
+  }
+  {
+    goPackagePath = "github.com/getsentry/raven-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/getsentry/raven-go";
+      rev = "v0.1.2";
+      sha256 = "1dl80kar4lzdcfl3w6jssi1ld6bv0rmx6sp6bz6rzysfr9ilm02z";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-kit/kit";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-kit/kit";
+      rev = "v0.8.0";
+      sha256 = "1rcywbc2pvab06qyf8pc2rdfjv7r6kxdv2v4wnpqnjhz225wqvc0";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-logfmt/logfmt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-logfmt/logfmt";
+      rev = "v0.3.0";
+      sha256 = "1gkgh3k5w1xwb2qbjq52p6azq3h1c1rr6pfwjlwj1zrijpzn2xb9";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-stack/stack";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-stack/stack";
+      rev = "v1.8.0";
+      sha256 = "0wk25751ryyvxclyp8jdk5c3ar0cmfr8lrjb66qbg4808x66b96v";
+    };
+  }
+  {
+    goPackagePath = "github.com/gogo/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gogo/protobuf";
+      rev = "v1.1.1";
+      sha256 = "1525pq7r6h3s8dncvq8gxi893p2nq8dxpzvq0nfl5b4p6mq0v1c2";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/glog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/glog";
+      rev = "23def4e6c14b";
+      sha256 = "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/lint";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/lint";
+      rev = "06c8688daad7";
+      sha256 = "0xi94dwvz50a66bq1hp9fyqkym5mcpdxdb1hrfvicldgjf37lc47";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/mock";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/mock";
+      rev = "v1.1.1";
+      sha256 = "0ap8wb6pdl6ccmdb43advjll2ly4sz26wsc3axw0hbrjrybybzgy";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "v1.3.2";
+      sha256 = "1k1wb4zr0qbwgpvz9q5ws9zhlal8hq7dmq62pwxxriksayl6hzym";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/go-cmp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-cmp";
+      rev = "v0.2.0";
+      sha256 = "1fbv0x27k9sn8svafc0hjwsnckk864lv4yi7bvzrxvmd3d5hskds";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/uuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/uuid";
+      rev = "v1.1.1";
+      sha256 = "0hfxcf9frkb57k6q0rdkrmnfs78ms21r1qfk9fhlqga2yh5xg8zb";
+    };
+  }
+  {
+    goPackagePath = "github.com/grpc-ecosystem/go-grpc-middleware";
+    fetch = {
+      type = "git";
+      url = "https://github.com/grpc-ecosystem/go-grpc-middleware";
+      rev = "v1.0.0";
+      sha256 = "0lwgxih021xfhfb1xb9la5f98bpgpaiz63sbllx77qwwl2rmhrsp";
+    };
+  }
+  {
+    goPackagePath = "github.com/grpc-ecosystem/go-grpc-prometheus";
+    fetch = {
+      type = "git";
+      url = "https://github.com/grpc-ecosystem/go-grpc-prometheus";
+      rev = "v1.2.0";
+      sha256 = "1lzk54h7np32b3acidg1ggbn8ppbnns0m71gcg9d1qkkdh8zrijl";
+    };
+  }
+  {
+    goPackagePath = "github.com/hpcloud/tail";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hpcloud/tail";
+      rev = "v1.0.0";
+      sha256 = "1njpzc0pi1acg5zx9y6vj9xi6ksbsc5d387rd6904hy6rh2m6kn0";
+    };
+  }
+  {
+    goPackagePath = "github.com/json-iterator/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/json-iterator/go";
+      rev = "v1.1.6";
+      sha256 = "08caswxvdn7nvaqyj5kyny6ghpygandlbw9vxdj7l5vkp7q0s43r";
+    };
+  }
+  {
+    goPackagePath = "github.com/julienschmidt/httprouter";
+    fetch = {
+      type = "git";
+      url = "https://github.com/julienschmidt/httprouter";
+      rev = "v1.2.0";
+      sha256 = "1k8bylc9s4vpvf5xhqh9h246dl1snxrzzz0614zz88cdh8yzs666";
+    };
+  }
+  {
+    goPackagePath = "github.com/kelseyhightower/envconfig";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kelseyhightower/envconfig";
+      rev = "v1.3.0";
+      sha256 = "1zcq480ig7wbg4378qcfxznp2gzqmk7x6rbxizflvg9v2f376vrw";
+    };
+  }
+  {
+    goPackagePath = "github.com/kisielk/gotool";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kisielk/gotool";
+      rev = "v1.0.0";
+      sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn";
+    };
+  }
+  {
+    goPackagePath = "github.com/konsorten/go-windows-terminal-sequences";
+    fetch = {
+      type = "git";
+      url = "https://github.com/konsorten/go-windows-terminal-sequences";
+      rev = "v1.0.1";
+      sha256 = "1lchgf27n276vma6iyxa0v1xds68n2g8lih5lavqnx5x6q5pw2ip";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/logfmt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/logfmt";
+      rev = "b84e30acd515";
+      sha256 = "02ldzxgznrfdzvghfraslhgp19la1fczcbzh7wm2zdc6lmpd1qq9";
+    };
+  }
+  {
+    goPackagePath = "github.com/libgit2/git2go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libgit2/git2go";
+      rev = "ecaeb7a21d47";
+      sha256 = "14r7ryff93r49g94f6kg66xc0y6rwb31lj22s3qmzmlgywk0pgvr";
+    };
+  }
+  {
+    goPackagePath = "github.com/lightstep/lightstep-tracer-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lightstep/lightstep-tracer-go";
+      rev = "v0.15.6";
+      sha256 = "10n5r66g44s6rnz5kf86s4a3p1g55kc1kxqhnk7bx7mlayndgpmb";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-shellwords";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-shellwords";
+      rev = "2444a32a19f4";
+      sha256 = "08zcgr1az1n8zaxzwdd205j86hczgyc52nxfnw5avpw7rrkf7v0d";
+    };
+  }
+  {
+    goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/matttproud/golang_protobuf_extensions";
+      rev = "v1.0.1";
+      sha256 = "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya";
+    };
+  }
+  {
+    goPackagePath = "github.com/modern-go/concurrent";
+    fetch = {
+      type = "git";
+      url = "https://github.com/modern-go/concurrent";
+      rev = "bacd9c7ef1dd";
+      sha256 = "0s0fxccsyb8icjmiym5k7prcqx36hvgdwl588y0491gi18k5i4zs";
+    };
+  }
+  {
+    goPackagePath = "github.com/modern-go/reflect2";
+    fetch = {
+      type = "git";
+      url = "https://github.com/modern-go/reflect2";
+      rev = "v1.0.1";
+      sha256 = "06a3sablw53n1dqqbr2f53jyksbxdmmk8axaas4yvnhyfi55k4lf";
+    };
+  }
+  {
+    goPackagePath = "github.com/mwitkow/go-conntrack";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mwitkow/go-conntrack";
+      rev = "cc309e4a2223";
+      sha256 = "0nbrnpk7bkmqg9mzwsxlm0y8m7s9qd9phr1q30qlx2qmdmz7c1mf";
+    };
+  }
+  {
+    goPackagePath = "github.com/onsi/ginkgo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/onsi/ginkgo";
+      rev = "v1.7.0";
+      sha256 = "14wgpdrvpc35rdz3859bz53sc1g4vpr1fysy15wy3ff9gmqs14yg";
+    };
+  }
+  {
+    goPackagePath = "github.com/onsi/gomega";
+    fetch = {
+      type = "git";
+      url = "https://github.com/onsi/gomega";
+      rev = "v1.4.3";
+      sha256 = "1c8rqg5i2hz3snmq7s41yar1zjnzilb0fyiyhkg83v97afcfx79v";
+    };
+  }
+  {
+    goPackagePath = "github.com/opentracing/opentracing-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/opentracing/opentracing-go";
+      rev = "v1.0.2";
+      sha256 = "0i0ghg94dg8lk05mw5n23983wq04yjvkjmdkc9z5y1f3508938h9";
+    };
+  }
+  {
+    goPackagePath = "github.com/otiai10/copy";
+    fetch = {
+      type = "git";
+      url = "https://github.com/otiai10/copy";
+      rev = "v1.0.1";
+      sha256 = "0xmy0kfcx48q10s040579pcjswfaxlwhv7a2z07z9r92fdrgw03k";
+    };
+  }
+  {
+    goPackagePath = "github.com/otiai10/mint";
+    fetch = {
+      type = "git";
+      url = "https://github.com/otiai10/mint";
+      rev = "v1.2.3";
+      sha256 = "00slgv9mw2m22ix5prz2a98ji6kpzr0ap6bqs568rfdmk6hm5f0k";
+    };
+  }
+  {
+    goPackagePath = "github.com/philhofer/fwd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/philhofer/fwd";
+      rev = "v1.0.0";
+      sha256 = "1pg84khadh79v42y8sjsdgfb54vw2kzv7hpapxkifgj0yvcp30g2";
+    };
+  }
+  {
+    goPackagePath = "github.com/pkg/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pkg/errors";
+      rev = "v0.8.0";
+      sha256 = "001i6n71ghp2l6kdl3qq1v2vmghcz3kicv9a5wgcihrzigm75pp5";
+    };
+  }
+  {
+    goPackagePath = "github.com/pmezard/go-difflib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pmezard/go-difflib";
+      rev = "v1.0.0";
+      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_golang";
+      rev = "v1.0.0";
+      sha256 = "1f03ndyi3jq7zdxinnvzimz3s4z2374r6dikkc8i42xzb6d1bli6";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_model";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_model";
+      rev = "fd36f4220a90";
+      sha256 = "1bs5d72k361llflgl94c22n0w53j30rsfh84smgk8mbjbcmjsaa5";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/common";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/common";
+      rev = "v0.4.1";
+      sha256 = "0sf4sjdckblz1hqdfvripk3zyp8xq89w7q75kbsyg4c078af896s";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/procfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/procfs";
+      rev = "v0.0.2";
+      sha256 = "0s7pvs7fgnfpmym3cd0k219av321h9sf3yvdlnn3qy0ps280lg7k";
+    };
+  }
+  {
+    goPackagePath = "github.com/sirupsen/logrus";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sirupsen/logrus";
+      rev = "v1.2.0";
+      sha256 = "0r6334x2bls8ddznvzaldx4g88msjjns4mlks95rqrrg7h0ijigg";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/objx";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/objx";
+      rev = "v0.1.1";
+      sha256 = "0iph0qmpyqg4kwv8jsx6a56a7hhqq8swrazv40ycxk9rzr0s8yls";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/testify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/testify";
+      rev = "v1.3.0";
+      sha256 = "0wjchp2c8xbgcbbq32w3kvblk6q6yn533g78nxl6iskq6y95lxsy";
+    };
+  }
+  {
+    goPackagePath = "github.com/tinylib/msgp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/tinylib/msgp";
+      rev = "v1.1.0";
+      sha256 = "08ha23sn14071ywrgxlyj7r523vzdwx1i83dcp1mqa830glgqaff";
+    };
+  }
+  {
+    goPackagePath = "github.com/uber-go/atomic";
+    fetch = {
+      type = "git";
+      url = "https://github.com/uber-go/atomic";
+      rev = "v1.3.2";
+      sha256 = "11pzvjys5ddjjgrv94pgk9pnip9yyb54z7idf33zk7p7xylpnsv6";
+    };
+  }
+  {
+    goPackagePath = "github.com/uber/jaeger-client-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/uber/jaeger-client-go";
+      rev = "v2.15.0";
+      sha256 = "0ki23m9zrf3vxp839fnp9ckr4m28y6mpad8g5s5lr5k8jkl0sfwj";
+    };
+  }
+  {
+    goPackagePath = "github.com/uber/jaeger-lib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/uber/jaeger-lib";
+      rev = "v1.5.0";
+      sha256 = "113fwpn80ylx970w8h7nfqnhh18dpx1jadbk7rbr8k68q4di4y0q";
+    };
+  }
+  {
+    goPackagePath = "gitlab.com/gitlab-org/gitaly";
+    fetch = {
+      type = "git";
+      url = "https://gitlab.com/gitlab-org/gitaly.git";
+      rev = "v1.68.0";
+      sha256 = "06w2qx9r7wxhpk6a3icqa0l6hr7x2j2k11kni1ksdx1m1100myjb";
+    };
+  }
+  {
+    goPackagePath = "gitlab.com/gitlab-org/labkit";
+    fetch = {
+      type = "git";
+      url = "https://gitlab.com/gitlab-org/labkit.git";
+      rev = "0c3fc7cdd57c";
+      sha256 = "0fpn37v7dhhdgd63v4mq9cna9wdzrsfams13qmjmps3xpdw2wr9i";
+    };
+  }
+  {
+    goPackagePath = "go.uber.org/atomic";
+    fetch = {
+      type = "git";
+      url = "https://github.com/uber-go/atomic";
+      rev = "v1.3.2";
+      sha256 = "11pzvjys5ddjjgrv94pgk9pnip9yyb54z7idf33zk7p7xylpnsv6";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "20be4c3c3ed5";
+      sha256 = "1ph7y8v30hc95h1dwr7vrhg1nzs47a261qin6zg8mhf12g5k2lxb";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/lint";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/lint";
+      rev = "d0100b6bd8b3";
+      sha256 = "0b0amr9x4ji66iv9ayfx7zrfx52k1m5g66qfcxkgj80qrb1y2yn7";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "d28f0bde5980";
+      sha256 = "18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/oauth2";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/oauth2";
+      rev = "d2e6202438be";
+      sha256 = "0wbn75fd10485nb93bm4kqldqifdim5xqy4v7r5sdvimvf3fyhn7";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sync";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sync";
+      rev = "112230192c58";
+      sha256 = "05i2k43j2d0llq768hg5pf3hb2yhfzp9la1w5wp0rsnnzblr0lfn";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "953cdadca894";
+      sha256 = "0gkha4whk8xkcv3isigbs250akag99isxnd3v9xmy0kl3g88hxy1";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "v0.3.0";
+      sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "2c0ae7006135";
+      sha256 = "1lsi2ssxajclj3bciz2a41v1vjv768ja3v6wnbyhxy8xphwkp4fk";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/appengine";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/appengine";
+      rev = "v1.1.0";
+      sha256 = "1pz202zszg8f35dk5pfhwgcdi3r6dx1l4yk6x6ly7nb4j45zi96x";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/genproto";
+    fetch = {
+      type = "git";
+      url = "https://github.com/googleapis/go-genproto";
+      rev = "bd91e49a0898";
+      sha256 = "1f5q04h03q6fksbfkhz13ai5849rkkb8xrmmi7cxs4lzsi6ixkg8";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/grpc";
+    fetch = {
+      type = "git";
+      url = "https://github.com/grpc/grpc-go";
+      rev = "v1.24.0";
+      sha256 = "0h8mwv74vzcfb7p4ai247x094skxca71vjp4wpj2wzmri0x9p4v6";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/DataDog/dd-trace-go.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/DataDog/dd-trace-go.v1";
+      rev = "v1.7.0";
+      sha256 = "0j45skiiayfsaw8id4g20k51zfr0raj47a03q2icka5xrh3qj6yq";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/alecthomas/kingpin.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/alecthomas/kingpin.v2";
+      rev = "v2.2.6";
+      sha256 = "0mndnv3hdngr3bxp7yxfd47cas4prv98sqw534mx7vp38gd88n5r";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/check.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/check.v1";
+      rev = "20d25e280405";
+      sha256 = "0k1m83ji9l1a7ng8a7v40psbymxasmssbrrhpdv2wl4rhs0nc3np";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/fsnotify.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/fsnotify.v1";
+      rev = "v1.4.7";
+      sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/tomb.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/tomb.v1";
+      rev = "dd632973f1e7";
+      sha256 = "1lqmq1ag7s4b3gc3ddvr792c5xb5k6sfn0cchr3i2s7f1c231zjv";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "v2.2.2";
+      sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa";
+    };
+  }
+  {
+    goPackagePath = "honnef.co/go/tools";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dominikh/go-tools";
+      rev = "ea95bdfd59fc";
+      sha256 = "1763nw7pwpzkvzfnm63dgzcgbq9hwmq5l1nffchnhh77vgkaq4ic";
+    };
+  }
+]
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-shell/remove-hardcoded-locations.patch b/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-shell/remove-hardcoded-locations.patch
new file mode 100644
index 000000000000..ee00070df2d7
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-shell/remove-hardcoded-locations.patch
@@ -0,0 +1,57 @@
+diff --git a/internal/config/config.go b/internal/config/config.go
+index 2231851..c869930 100644
+--- a/internal/config/config.go
++++ b/internal/config/config.go
+@@ -3,7 +3,6 @@ package config
+ import (
+ 	"io/ioutil"
+ 	"net/url"
+-	"os"
+ 	"path"
+ 	"path/filepath"
+ 
+@@ -38,16 +37,13 @@ type Config struct {
+ }
+ 
+ func New() (*Config, error) {
+-	dir, err := os.Getwd()
+-	if err != nil {
+-		return nil, err
+-	}
++	dir := "/run/gitlab"
+ 
+ 	return NewFromDir(dir)
+ }
+ 
+ func NewFromDir(dir string) (*Config, error) {
+-	return newFromFile(path.Join(dir, configFile))
++	return newFromFile("/run/gitlab/shell-config.yml")
+ }
+ 
+ func newFromFile(filename string) (*Config, error) {
+diff --git a/internal/keyline/key_line.go b/internal/keyline/key_line.go
+index c29a320..c44b701 100644
+--- a/internal/keyline/key_line.go
++++ b/internal/keyline/key_line.go
+@@ -36,7 +36,7 @@ func NewPrincipalKeyLine(keyId string, principal string, rootDir string) (*KeyLi
+ }
+ 
+ func (k *KeyLine) ToString() string {
+-	command := fmt.Sprintf("%s %s-%s", path.Join(k.RootDir, executable.BinDir, executable.GitlabShell), k.Prefix, k.Id)
++	command := fmt.Sprintf("%s %s-%s", path.Join("/run/current-system/sw/bin", executable.GitlabShell), k.Prefix, k.Id)
+ 
+ 	return fmt.Sprintf(`command="%s",%s %s`, command, SshOptions, k.Value)
+ }
+diff --git a/support/gitlab_config.rb b/support/gitlab_config.rb
+index 52ac5ee..d96baa3 100644
+--- a/support/gitlab_config.rb
++++ b/support/gitlab_config.rb
+@@ -7,7 +7,7 @@ class GitlabConfig
+   attr_reader :config
+ 
+   def initialize
+-    @config = YAML.load_file(File.join(ROOT_PATH, 'config.yml'))
++    @config = YAML.load_file('/run/gitlab/shell-config.yml')
+   end
+ 
+   def auth_file
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix b/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
new file mode 100644
index 000000000000..6386a9cc5aa7
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchFromGitLab, git, buildGoPackage }:
+
+buildGoPackage rec {
+  pname = "gitlab-workhorse";
+
+  version = "8.31.2";
+
+  src = fetchFromGitLab {
+    owner = "gitlab-org";
+    repo = "gitlab-workhorse";
+    rev = "v${version}";
+    sha256 = "0wvhhjfb490mjdrmc9xwr3qfh3941xn3b02c757ghrvzwv329wvg";
+  };
+
+  goPackagePath = "gitlab.com/gitlab-org/gitlab-workhorse";
+  goDeps = ./deps.nix;
+  buildInputs = [ git ];
+  buildFlagsArray = "-ldflags=-X main.Version=${version}";
+
+  # gitlab-workhorse depends on an older version of labkit which
+  # contains old, vendored versions of some packages; gitlab-workhorse
+  # also explicitly depends on newer versions of these libraries,
+  # but buildGoPackage exposes the vendored versions instead,
+  # leading to compilation errors. Since the vendored libraries
+  # aren't used here anyway, we'll just remove them.
+  postConfigure = ''
+    rm -r "$NIX_BUILD_TOP/go/src/gitlab.com/gitlab-org/labkit/vendor"
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "http://www.gitlab.com/";
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ fpletz globin talyz ];
+    license = licenses.mit;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/deps.nix b/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/deps.nix
new file mode 100644
index 000000000000..530eb073c7b5
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/deps.nix
@@ -0,0 +1,1614 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
+[
+  {
+    goPackagePath = "cloud.google.com/go";
+    fetch = {
+      type = "git";
+      url = "https://code.googlesource.com/gocloud";
+      rev = "v0.50.0";
+      sha256 = "0pbz5migljd5whxh6z1w79cwx93n85mcs3x1bckl27yzaa4lvqsl";
+    };
+  }
+  {
+    goPackagePath = "dmitri.shuralyov.com/gpu/mtl";
+    fetch = {
+      type = "git";
+      url = "https://dmitri.shuralyov.com/gpu/mtl";
+      rev = "666a987793e9";
+      sha256 = "1isd03hgiwcf2ld1rlp0plrnfz7r4i7c5q4kb6hkcd22axnmrv0z";
+    };
+  }
+  {
+    goPackagePath = "github.com/BurntSushi/toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/toml";
+      rev = "v0.3.1";
+      sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
+    };
+  }
+  {
+    goPackagePath = "github.com/BurntSushi/xgb";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/xgb";
+      rev = "27f122750802";
+      sha256 = "18lp2x8f5bljvlz0r7xn744f0c9rywjsb9ifiszqqdcpwhsa0kvj";
+    };
+  }
+  {
+    goPackagePath = "github.com/FZambia/sentinel";
+    fetch = {
+      type = "git";
+      url = "https://github.com/FZambia/sentinel";
+      rev = "v1.0.0";
+      sha256 = "14cfngdy0n5rg7nrvxg1ydcjd18v0s8h33jx9wkln5ms0d59kfly";
+    };
+  }
+  {
+    goPackagePath = "github.com/Joker/hpp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Joker/hpp";
+      rev = "6893e659854a";
+      sha256 = "0lsx63c28rzqigv3lwzznqacpk7nr0dn6ig37v023x8lzc728ix5";
+    };
+  }
+  {
+    goPackagePath = "github.com/Joker/jade";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Joker/jade";
+      rev = "v1.0.0";
+      sha256 = "0k9b8dcwwhajw6rzjmakqwmhw9z192pzzdhppcvam6dy63yl4zjf";
+    };
+  }
+  {
+    goPackagePath = "github.com/Shopify/goreferrer";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Shopify/goreferrer";
+      rev = "ec9c9a553398";
+      sha256 = "0d740psj8czks1hl0nr6nlrwfbwq3nc51jj2p91d1wyhhmgn6jmn";
+    };
+  }
+  {
+    goPackagePath = "github.com/ajg/form";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ajg/form";
+      rev = "v1.5.1";
+      sha256 = "1d6sxzzf9yycdf8jm5877y0khmhkmhxfw3sc4xpdcsrdlc7gqh5a";
+    };
+  }
+  {
+    goPackagePath = "github.com/alecthomas/template";
+    fetch = {
+      type = "git";
+      url = "https://github.com/alecthomas/template";
+      rev = "a0175ee3bccc";
+      sha256 = "0qjgvvh26vk1cyfq9fadyhfgdj36f1iapbmr5xp6zqipldz8ffxj";
+    };
+  }
+  {
+    goPackagePath = "github.com/alecthomas/units";
+    fetch = {
+      type = "git";
+      url = "https://github.com/alecthomas/units";
+      rev = "2efee857e7cf";
+      sha256 = "1j65b91qb9sbrml9cpabfrcf07wmgzzghrl7809hjjhrmbzri5bl";
+    };
+  }
+  {
+    goPackagePath = "github.com/aymerick/raymond";
+    fetch = {
+      type = "git";
+      url = "https://github.com/aymerick/raymond";
+      rev = "v2.0.2";
+      sha256 = "1w6am4142k8lyjnwwcgx94c2d8zviflzi0a9c81gn2j0gyx475i3";
+    };
+  }
+  {
+    goPackagePath = "github.com/beorn7/perks";
+    fetch = {
+      type = "git";
+      url = "https://github.com/beorn7/perks";
+      rev = "v1.0.0";
+      sha256 = "1i1nz1f6g55xi2y3aiaz5kqfgvknarbfl4f0sx4nyyb4s7xb1z9x";
+    };
+  }
+  {
+    goPackagePath = "github.com/certifi/gocertifi";
+    fetch = {
+      type = "git";
+      url = "https://github.com/certifi/gocertifi";
+      rev = "ee1a9a0726d2";
+      sha256 = "08l6lqaw83pva6fa0aafmhmy1mhb145av21772zfh3ij809a37i4";
+    };
+  }
+  {
+    goPackagePath = "github.com/chzyer/logex";
+    fetch = {
+      type = "git";
+      url = "https://github.com/chzyer/logex";
+      rev = "v1.1.10";
+      sha256 = "08pbjj3wx9acavlwyr055isa8a5hnmllgdv5k6ra60l5y1brmlq4";
+    };
+  }
+  {
+    goPackagePath = "github.com/chzyer/readline";
+    fetch = {
+      type = "git";
+      url = "https://github.com/chzyer/readline";
+      rev = "2972be24d48e";
+      sha256 = "104q8dazj8yf6b089jjr82fy9h1g80zyyzvp3g8b44a7d8ngjj6r";
+    };
+  }
+  {
+    goPackagePath = "github.com/chzyer/test";
+    fetch = {
+      type = "git";
+      url = "https://github.com/chzyer/test";
+      rev = "a1ea475d72b1";
+      sha256 = "0rns2aqk22i9xsgyap0pq8wi4cfaxsri4d9q6xxhhyma8jjsnj2k";
+    };
+  }
+  {
+    goPackagePath = "github.com/client9/misspell";
+    fetch = {
+      type = "git";
+      url = "https://github.com/client9/misspell";
+      rev = "v0.3.4";
+      sha256 = "1vwf33wsc4la25zk9nylpbp9px3svlmldkm0bha4hp56jws4q9cs";
+    };
+  }
+  {
+    goPackagePath = "github.com/client9/reopen";
+    fetch = {
+      type = "git";
+      url = "https://github.com/client9/reopen";
+      rev = "v1.0.0";
+      sha256 = "0f0dpdbmvk7w518c6zjhlmp65y55vvx47x4lq9pgzvcbsvjsf18s";
+    };
+  }
+  {
+    goPackagePath = "github.com/cloudflare/tableflip";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cloudflare/tableflip";
+      rev = "8392f1641731";
+      sha256 = "0by5hk8s0bhhl3kiw658p5g53zvc61k4q2wxnh1w64p5ghd1rfn8";
+    };
+  }
+  {
+    goPackagePath = "github.com/codahale/hdrhistogram";
+    fetch = {
+      type = "git";
+      url = "https://github.com/codahale/hdrhistogram";
+      rev = "3a0bb77429bd";
+      sha256 = "1zampgfjbxy192cbwdi7g86l1idxaam96d834wncnpfdwgh5kl57";
+    };
+  }
+  {
+    goPackagePath = "github.com/codegangsta/inject";
+    fetch = {
+      type = "git";
+      url = "https://github.com/codegangsta/inject";
+      rev = "33e0aa1cb7c0";
+      sha256 = "1jqakr3z9l60qhcgrdzsb6rlk8ikcamisw0g2ndmrf27s0ibfcaj";
+    };
+  }
+  {
+    goPackagePath = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev = "v1.1.1";
+      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
+    };
+  }
+  {
+    goPackagePath = "github.com/dgrijalva/jwt-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dgrijalva/jwt-go";
+      rev = "v3.2.0";
+      sha256 = "08m27vlms74pfy5z79w67f9lk9zkx6a9jd68k3c4msxy75ry36mp";
+    };
+  }
+  {
+    goPackagePath = "github.com/eknkc/amber";
+    fetch = {
+      type = "git";
+      url = "https://github.com/eknkc/amber";
+      rev = "cdade1c07385";
+      sha256 = "152w97yckwncgw7lwjvgd8d00wy6y0nxzlvx72kl7nqqxs9vhxd9";
+    };
+  }
+  {
+    goPackagePath = "github.com/fatih/structs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fatih/structs";
+      rev = "v1.1.0";
+      sha256 = "1wrhb8wp8zpzggl61lapb627lw8yv281abvr6vqakmf569nswa9q";
+    };
+  }
+  {
+    goPackagePath = "github.com/flosch/pongo2";
+    fetch = {
+      type = "git";
+      url = "https://github.com/flosch/pongo2";
+      rev = "bbf5a6c351f4";
+      sha256 = "0yqh58phznnxakm64w82gawrpndb0r85vsd1s7h244qqrq7w4avq";
+    };
+  }
+  {
+    goPackagePath = "github.com/fsnotify/fsnotify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fsnotify/fsnotify";
+      rev = "v1.4.7";
+      sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
+    };
+  }
+  {
+    goPackagePath = "github.com/gavv/monotime";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gavv/monotime";
+      rev = "30dba4353424";
+      sha256 = "0w67yyc9y11dp7lp4b712dkcgbiln1qmgfx1nbbrw3mfkzr61d7g";
+    };
+  }
+  {
+    goPackagePath = "github.com/getsentry/raven-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/getsentry/raven-go";
+      rev = "v0.1.2";
+      sha256 = "1dl80kar4lzdcfl3w6jssi1ld6bv0rmx6sp6bz6rzysfr9ilm02z";
+    };
+  }
+  {
+    goPackagePath = "github.com/getsentry/sentry-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/getsentry/sentry-go";
+      rev = "v0.3.0";
+      sha256 = "1919lhvg1swcqyfa6mck6nz53c7n4df21jsz46f7x4wncb6f5il1";
+    };
+  }
+  {
+    goPackagePath = "github.com/gin-contrib/sse";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gin-contrib/sse";
+      rev = "5545eab6dad3";
+      sha256 = "0jhcvi66rn7c1wg3rf7q7sylrvlk7c40yk79c5lypnz1dpsdcrb5";
+    };
+  }
+  {
+    goPackagePath = "github.com/gin-gonic/gin";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gin-gonic/gin";
+      rev = "v1.4.0";
+      sha256 = "19nxip48p2s8l7p1p7wpd5li2fcngi4c58rgcg71izdmsmj2iw1d";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-check/check";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-check/check";
+      rev = "788fd7840127";
+      sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-errors/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-errors/errors";
+      rev = "v1.0.1";
+      sha256 = "0rznpknk19rxkr7li6dqs52c26pjazp69lh493l4ny4sxn5922lp";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-gl/glfw";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-gl/glfw";
+      rev = "12ad95a8df72";
+      sha256 = "0ahw4a1lk7wqn6m0sjngsv2zc08kxxj259ai6g4kf11lmidszm9s";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-kit/kit";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-kit/kit";
+      rev = "v0.8.0";
+      sha256 = "1rcywbc2pvab06qyf8pc2rdfjv7r6kxdv2v4wnpqnjhz225wqvc0";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-logfmt/logfmt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-logfmt/logfmt";
+      rev = "v0.3.0";
+      sha256 = "1gkgh3k5w1xwb2qbjq52p6azq3h1c1rr6pfwjlwj1zrijpzn2xb9";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-martini/martini";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-martini/martini";
+      rev = "22fa46961aab";
+      sha256 = "01ip3mwbnm5isq120ww73yrvbcn6n5944prhhbyf2ggyf6g46ylh";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-stack/stack";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-stack/stack";
+      rev = "v1.8.0";
+      sha256 = "0wk25751ryyvxclyp8jdk5c3ar0cmfr8lrjb66qbg4808x66b96v";
+    };
+  }
+  {
+    goPackagePath = "github.com/gogo/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gogo/protobuf";
+      rev = "v1.1.1";
+      sha256 = "1525pq7r6h3s8dncvq8gxi893p2nq8dxpzvq0nfl5b4p6mq0v1c2";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/gddo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/gddo";
+      rev = "af0f2af80721";
+      sha256 = "0ja0xwgg31i2fyqn0b9sf1rjsqkw34kwrr0k0iczzn19mhhc3m7j";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/glog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/glog";
+      rev = "23def4e6c14b";
+      sha256 = "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/groupcache";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/groupcache";
+      rev = "215e87163ea7";
+      sha256 = "07555csk49ara636bhl2vbzziayls3qks8964z0q29g065zliy9j";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/lint";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/lint";
+      rev = "06c8688daad7";
+      sha256 = "0xi94dwvz50a66bq1hp9fyqkym5mcpdxdb1hrfvicldgjf37lc47";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/mock";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/mock";
+      rev = "v1.3.1";
+      sha256 = "1wnfa8njxdym1qb664dmfnkpm4pmqy22hqjlqpwaaiqhglb5g9d1";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "v1.3.2";
+      sha256 = "1k1wb4zr0qbwgpvz9q5ws9zhlal8hq7dmq62pwxxriksayl6hzym";
+    };
+  }
+  {
+    goPackagePath = "github.com/gomodule/redigo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gomodule/redigo";
+      rev = "v2.0.0";
+      sha256 = "1kg7s8027b4g1sfw0v3nh30c15j407kv684s53gg281r807dnfpk";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/btree";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/btree";
+      rev = "v1.0.0";
+      sha256 = "0ba430m9fbnagacp57krgidsyrgp3ycw5r7dj71brgp5r52g82p6";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/go-cmp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-cmp";
+      rev = "v0.4.0";
+      sha256 = "1x5pvl3fb5sbyng7i34431xycnhmx8xx94gq2n19g6p0vz68z2v2";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/go-querystring";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-querystring";
+      rev = "v1.0.0";
+      sha256 = "0xl12bqyvmn4xcnf8p9ksj9rmnr7s40pvppsdmy8n9bzw1db0iwz";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/martian";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/martian";
+      rev = "v2.1.0";
+      sha256 = "197hil6vrjk50b9wvwyzf61csid83whsjj6ik8mc9r2lryxlyyrp";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/pprof";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/pprof";
+      rev = "d4f498aebedc";
+      sha256 = "1r4pn70yy5vfl38jx9v8224n7jkhcm5wg28vv48izgznlgv7h024";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/renameio";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/renameio";
+      rev = "v0.1.0";
+      sha256 = "1ki2x5a9nrj17sn092d6n4zr29lfg5ydv4xz5cp58z6cw8ip43jx";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/uuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/uuid";
+      rev = "v1.1.1";
+      sha256 = "0hfxcf9frkb57k6q0rdkrmnfs78ms21r1qfk9fhlqga2yh5xg8zb";
+    };
+  }
+  {
+    goPackagePath = "github.com/googleapis/gax-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/googleapis/gax-go";
+      rev = "v2.0.5";
+      sha256 = "1lxawwngv6miaqd25s3ba0didfzylbwisd2nz7r4gmbmin6jsjrx";
+    };
+  }
+  {
+    goPackagePath = "github.com/gopherjs/gopherjs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gopherjs/gopherjs";
+      rev = "0766667cb4d1";
+      sha256 = "13pfc9sxiwjky2lm1xb3i3lcisn8p6mgjk2d927l7r92ysph8dmw";
+    };
+  }
+  {
+    goPackagePath = "github.com/gorilla/schema";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/schema";
+      rev = "v1.1.0";
+      sha256 = "14d31i3h6bg83r7ncmwm2pirab66z9hza38in18l89pbazxyh2n9";
+    };
+  }
+  {
+    goPackagePath = "github.com/gorilla/websocket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/websocket";
+      rev = "v1.4.0";
+      sha256 = "00i4vb31nsfkzzk7swvx3i75r2d960js3dri1875vypk3v2s0pzk";
+    };
+  }
+  {
+    goPackagePath = "github.com/grpc-ecosystem/go-grpc-middleware";
+    fetch = {
+      type = "git";
+      url = "https://github.com/grpc-ecosystem/go-grpc-middleware";
+      rev = "v1.0.0";
+      sha256 = "0lwgxih021xfhfb1xb9la5f98bpgpaiz63sbllx77qwwl2rmhrsp";
+    };
+  }
+  {
+    goPackagePath = "github.com/grpc-ecosystem/go-grpc-prometheus";
+    fetch = {
+      type = "git";
+      url = "https://github.com/grpc-ecosystem/go-grpc-prometheus";
+      rev = "v1.2.0";
+      sha256 = "1lzk54h7np32b3acidg1ggbn8ppbnns0m71gcg9d1qkkdh8zrijl";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/golang-lru";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/golang-lru";
+      rev = "v0.5.1";
+      sha256 = "13f870cvk161bzjj6x41l45r5x9i1z9r2ymwmvm7768kg08zznpy";
+    };
+  }
+  {
+    goPackagePath = "github.com/hpcloud/tail";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hpcloud/tail";
+      rev = "v1.0.0";
+      sha256 = "1njpzc0pi1acg5zx9y6vj9xi6ksbsc5d387rd6904hy6rh2m6kn0";
+    };
+  }
+  {
+    goPackagePath = "github.com/ianlancetaylor/demangle";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ianlancetaylor/demangle";
+      rev = "5e5cf60278f6";
+      sha256 = "1fhjk11cip9c3jyj1byz9z77n6n2rlxmyz0xjx1zpn1da3cvri75";
+    };
+  }
+  {
+    goPackagePath = "github.com/imkira/go-interpol";
+    fetch = {
+      type = "git";
+      url = "https://github.com/imkira/go-interpol";
+      rev = "v1.1.0";
+      sha256 = "180h3pf2p0pch6hmqf45wk7wd87md83d3p122f8ll43x5nja5mph";
+    };
+  }
+  {
+    goPackagePath = "github.com/iris-contrib/blackfriday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/iris-contrib/blackfriday";
+      rev = "v2.0.0";
+      sha256 = "1gkizavajqmxm79il8r6cbi0g9ls3vwdh9wr0zy89vc9sq17p3im";
+    };
+  }
+  {
+    goPackagePath = "github.com/iris-contrib/formBinder";
+    fetch = {
+      type = "git";
+      url = "https://github.com/iris-contrib/formBinder";
+      rev = "v5.0.0";
+      sha256 = "0mqk6j7a9d3y28ad4ylqc7z5w4hmn1ws5wwnyll918xn1wkzr5rg";
+    };
+  }
+  {
+    goPackagePath = "github.com/iris-contrib/go.uuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/iris-contrib/go.uuid";
+      rev = "v2.0.0";
+      sha256 = "0nc0ggn0a6bcwdrwinnx3z6889x65c20a2dwja0n8can3xblxs35";
+    };
+  }
+  {
+    goPackagePath = "github.com/iris-contrib/httpexpect";
+    fetch = {
+      type = "git";
+      url = "https://github.com/iris-contrib/httpexpect";
+      rev = "ebe99fcebbce";
+      sha256 = "126c50c6r5l2gdn60jirpb54pqwswxag3wgrv6wcn998h9w9gv8c";
+    };
+  }
+  {
+    goPackagePath = "github.com/jfbus/httprs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jfbus/httprs";
+      rev = "b0af8319bb15";
+      sha256 = "05cg9a27i9g92n3bivqrrqznccl5lfadlk97sp9izmd368dl5qvc";
+    };
+  }
+  {
+    goPackagePath = "github.com/jpillora/backoff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jpillora/backoff";
+      rev = "8eab2debe79d";
+      sha256 = "1m5z0703094vhbbmp6s7n6kk7ci5s1pfjq466mz14zp8d1w0yn3x";
+    };
+  }
+  {
+    goPackagePath = "github.com/json-iterator/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/json-iterator/go";
+      rev = "v1.1.6";
+      sha256 = "08caswxvdn7nvaqyj5kyny6ghpygandlbw9vxdj7l5vkp7q0s43r";
+    };
+  }
+  {
+    goPackagePath = "github.com/jstemmer/go-junit-report";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jstemmer/go-junit-report";
+      rev = "v0.9.1";
+      sha256 = "1knip80yir1cdsjlb3rzy0a4w3kl4ljpiciaz6hjzwqlfhnv7bkw";
+    };
+  }
+  {
+    goPackagePath = "github.com/jtolds/gls";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jtolds/gls";
+      rev = "v4.20.0";
+      sha256 = "1k7xd2q2ysv2xsh373qs801v6f359240kx0vrl0ydh7731lngvk6";
+    };
+  }
+  {
+    goPackagePath = "github.com/juju/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/juju/errors";
+      rev = "089d3ea4e4d5";
+      sha256 = "056za75j1zgksky7pbf0pkjqz5ha15g3wj3p4ma10m9sywdyq79r";
+    };
+  }
+  {
+    goPackagePath = "github.com/juju/loggo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/juju/loggo";
+      rev = "584905176618";
+      sha256 = "0hzi0652y74jf62wwyi9gf8bzrs7ynvhjfqc8rwr4l799d7i5gd4";
+    };
+  }
+  {
+    goPackagePath = "github.com/juju/testing";
+    fetch = {
+      type = "git";
+      url = "https://github.com/juju/testing";
+      rev = "472a3e8b2073";
+      sha256 = "05wjc2k0kwbam7anaxwnj30pl03dcdbrsz32icd70zl70ipsqsw4";
+    };
+  }
+  {
+    goPackagePath = "github.com/julienschmidt/httprouter";
+    fetch = {
+      type = "git";
+      url = "https://github.com/julienschmidt/httprouter";
+      rev = "v1.2.0";
+      sha256 = "1k8bylc9s4vpvf5xhqh9h246dl1snxrzzz0614zz88cdh8yzs666";
+    };
+  }
+  {
+    goPackagePath = "github.com/k0kubun/colorstring";
+    fetch = {
+      type = "git";
+      url = "https://github.com/k0kubun/colorstring";
+      rev = "9440f1994b88";
+      sha256 = "0isskya7ky4k9znrh85crfc2pxwyfz2s8j1a5cbjb8b8zf2v0qbj";
+    };
+  }
+  {
+    goPackagePath = "github.com/kataras/golog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kataras/golog";
+      rev = "99c81de45f40";
+      sha256 = "1dgrsvhzymgj7da54ldv8plkxk3n8zh3kc995qxl6mrpz65j801p";
+    };
+  }
+  {
+    goPackagePath = "github.com/kataras/iris";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kataras/iris";
+      rev = "v11.1.1";
+      sha256 = "1rxpr5hdj9mji26mlfp4zic0pc6nh93akzccw24a5kynj07g68wg";
+    };
+  }
+  {
+    goPackagePath = "github.com/kataras/pio";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kataras/pio";
+      rev = "ea782b38602d";
+      sha256 = "0ca29wmkpx19qwnvi4fja3avkxkzz14x9wyzmg1l9074bxbj8cgj";
+    };
+  }
+  {
+    goPackagePath = "github.com/kelseyhightower/envconfig";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kelseyhightower/envconfig";
+      rev = "v1.3.0";
+      sha256 = "1zcq480ig7wbg4378qcfxznp2gzqmk7x6rbxizflvg9v2f376vrw";
+    };
+  }
+  {
+    goPackagePath = "github.com/kisielk/gotool";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kisielk/gotool";
+      rev = "v1.0.0";
+      sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn";
+    };
+  }
+  {
+    goPackagePath = "github.com/klauspost/compress";
+    fetch = {
+      type = "git";
+      url = "https://github.com/klauspost/compress";
+      rev = "v1.4.0";
+      sha256 = "1y7951q0ji894d111lqqbacq64cxyi2dxsni5sqi9488zsasgw8s";
+    };
+  }
+  {
+    goPackagePath = "github.com/klauspost/cpuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/klauspost/cpuid";
+      rev = "e7e905edc00e";
+      sha256 = "0cmyv3rwv5r5iqvvfhbiwp3jsfa40c6xfm42nxbngd5lygjcwwgf";
+    };
+  }
+  {
+    goPackagePath = "github.com/konsorten/go-windows-terminal-sequences";
+    fetch = {
+      type = "git";
+      url = "https://github.com/konsorten/go-windows-terminal-sequences";
+      rev = "v1.0.2";
+      sha256 = "09mn209ika7ciy87xf2x31dq5fnqw39jidgaljvmqxwk7ff1hnx7";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/logfmt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/logfmt";
+      rev = "b84e30acd515";
+      sha256 = "02ldzxgznrfdzvghfraslhgp19la1fczcbzh7wm2zdc6lmpd1qq9";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/pretty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/pretty";
+      rev = "v0.1.0";
+      sha256 = "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/pty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/pty";
+      rev = "v1.1.1";
+      sha256 = "0383f0mb9kqjvncqrfpidsf8y6ns5zlrc91c6a74xpyxjwvzl2y6";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/text";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/text";
+      rev = "v0.1.0";
+      sha256 = "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1";
+    };
+  }
+  {
+    goPackagePath = "github.com/labstack/echo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/labstack/echo";
+      rev = "v4.1.10";
+      sha256 = "0qg9ykmhgldiv2v1w8sz8x0j0bgqf11ghzrim59fb6pxz8qgg25h";
+    };
+  }
+  {
+    goPackagePath = "github.com/labstack/gommon";
+    fetch = {
+      type = "git";
+      url = "https://github.com/labstack/gommon";
+      rev = "v0.3.0";
+      sha256 = "18z7akyzm75p6anm4b8qkqgm4iivx50z07hi5wf50w1pbsvbcdi0";
+    };
+  }
+  {
+    goPackagePath = "github.com/libgit2/git2go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/libgit2/git2go";
+      rev = "ecaeb7a21d47";
+      sha256 = "14r7ryff93r49g94f6kg66xc0y6rwb31lj22s3qmzmlgywk0pgvr";
+    };
+  }
+  {
+    goPackagePath = "github.com/lightstep/lightstep-tracer-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lightstep/lightstep-tracer-go";
+      rev = "v0.15.6";
+      sha256 = "10n5r66g44s6rnz5kf86s4a3p1g55kc1kxqhnk7bx7mlayndgpmb";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-colorable";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-colorable";
+      rev = "v0.1.2";
+      sha256 = "0512jm3wmzkkn7d99x9wflyqf48n5ri3npy1fqkq6l6adc5mni3n";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev = "v0.0.9";
+      sha256 = "0i3km37lajahh1y2392g4hpgvq05arcgiiv93yhzxxyv0fpqj72m";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/goveralls";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/goveralls";
+      rev = "v0.0.2";
+      sha256 = "13ffdikvc594g1mryhi94m87skr7irwkjnpxp8ad2kprn6syfslp";
+    };
+  }
+  {
+    goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/matttproud/golang_protobuf_extensions";
+      rev = "v1.0.1";
+      sha256 = "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya";
+    };
+  }
+  {
+    goPackagePath = "github.com/microcosm-cc/bluemonday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/microcosm-cc/bluemonday";
+      rev = "v1.0.2";
+      sha256 = "0j0aylsxqjcj49w7ph8cmpaqjlpvg7mb5mrcrd9bg71dlb9z9ir2";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/copystructure";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/copystructure";
+      rev = "v1.0.0";
+      sha256 = "05njg92w1088v4yl0js0zdrpfq6k37i9j14mxkr3p90p5yd9rrrr";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/reflectwalk";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/reflectwalk";
+      rev = "v1.0.0";
+      sha256 = "0wzkp0fdx22n8f7y9y37dgmnlrlfsv9zjdb48cbx7rsqsbnny7l0";
+    };
+  }
+  {
+    goPackagePath = "github.com/modern-go/concurrent";
+    fetch = {
+      type = "git";
+      url = "https://github.com/modern-go/concurrent";
+      rev = "bacd9c7ef1dd";
+      sha256 = "0s0fxccsyb8icjmiym5k7prcqx36hvgdwl588y0491gi18k5i4zs";
+    };
+  }
+  {
+    goPackagePath = "github.com/modern-go/reflect2";
+    fetch = {
+      type = "git";
+      url = "https://github.com/modern-go/reflect2";
+      rev = "v1.0.1";
+      sha256 = "06a3sablw53n1dqqbr2f53jyksbxdmmk8axaas4yvnhyfi55k4lf";
+    };
+  }
+  {
+    goPackagePath = "github.com/moul/http2curl";
+    fetch = {
+      type = "git";
+      url = "https://github.com/moul/http2curl";
+      rev = "v1.0.0";
+      sha256 = "15bpx33d3ygya8dg8hbsn24h7acpajl27006pj8lw1c0bfvbnrl0";
+    };
+  }
+  {
+    goPackagePath = "github.com/mwitkow/go-conntrack";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mwitkow/go-conntrack";
+      rev = "cc309e4a2223";
+      sha256 = "0nbrnpk7bkmqg9mzwsxlm0y8m7s9qd9phr1q30qlx2qmdmz7c1mf";
+    };
+  }
+  {
+    goPackagePath = "github.com/onsi/ginkgo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/onsi/ginkgo";
+      rev = "v1.10.1";
+      sha256 = "033a42h1wzmji57p86igg9whvsbp6nvfdsypskw738ys903n3z4d";
+    };
+  }
+  {
+    goPackagePath = "github.com/onsi/gomega";
+    fetch = {
+      type = "git";
+      url = "https://github.com/onsi/gomega";
+      rev = "v1.7.0";
+      sha256 = "09j6wq425wgzzsbwm9ckhfgl2capv3yyqbrf45qyrjwkzm49i02y";
+    };
+  }
+  {
+    goPackagePath = "github.com/opentracing/opentracing-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/opentracing/opentracing-go";
+      rev = "v1.0.2";
+      sha256 = "0i0ghg94dg8lk05mw5n23983wq04yjvkjmdkc9z5y1f3508938h9";
+    };
+  }
+  {
+    goPackagePath = "github.com/philhofer/fwd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/philhofer/fwd";
+      rev = "v1.0.0";
+      sha256 = "1pg84khadh79v42y8sjsdgfb54vw2kzv7hpapxkifgj0yvcp30g2";
+    };
+  }
+  {
+    goPackagePath = "github.com/pingcap/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pingcap/errors";
+      rev = "v0.11.1";
+      sha256 = "00wr0l4cwq0qx8jw51j0n7pbh9l7hdq2874x9rf1mz5svz1wbmcp";
+    };
+  }
+  {
+    goPackagePath = "github.com/pkg/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pkg/errors";
+      rev = "v0.8.1";
+      sha256 = "0g5qcb4d4fd96midz0zdk8b9kz8xkzwfa8kr1cliqbg8sxsy5vd1";
+    };
+  }
+  {
+    goPackagePath = "github.com/pmezard/go-difflib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pmezard/go-difflib";
+      rev = "v1.0.0";
+      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_golang";
+      rev = "v1.0.0";
+      sha256 = "1f03ndyi3jq7zdxinnvzimz3s4z2374r6dikkc8i42xzb6d1bli6";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_model";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_model";
+      rev = "14fe0d1b01d4";
+      sha256 = "0zdmk6rbbx39cvfz0r59v2jg5sg9yd02b4pds5n5llgvivi99550";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/common";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/common";
+      rev = "v0.4.1";
+      sha256 = "0sf4sjdckblz1hqdfvripk3zyp8xq89w7q75kbsyg4c078af896s";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/procfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/procfs";
+      rev = "v0.0.2";
+      sha256 = "0s7pvs7fgnfpmym3cd0k219av321h9sf3yvdlnn3qy0ps280lg7k";
+    };
+  }
+  {
+    goPackagePath = "github.com/rafaeljusto/redigomock";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rafaeljusto/redigomock";
+      rev = "257e089e14a1";
+      sha256 = "1k572vsda7q5l42s1kn5bjkfb30jshsbc96dz4cnghg43qylyd6h";
+    };
+  }
+  {
+    goPackagePath = "github.com/rogpeppe/go-internal";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rogpeppe/go-internal";
+      rev = "v1.3.0";
+      sha256 = "0mcdh1licgnnahwml9y2iq6xy5x9xmjw5frcnds2s3wpjyqrl216";
+    };
+  }
+  {
+    goPackagePath = "github.com/ryanuber/columnize";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ryanuber/columnize";
+      rev = "v2.1.0";
+      sha256 = "0m9jhagb1k44zfcdai76xdf9vpi3bqdl7p078ffyibmz0z9jfap6";
+    };
+  }
+  {
+    goPackagePath = "github.com/sebest/xff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sebest/xff";
+      rev = "6c115e0ffa35";
+      sha256 = "0l11d8mc870vxzgi74cc9dqr7kgxjmbfkfi53gc30rsyx877jx4h";
+    };
+  }
+  {
+    goPackagePath = "github.com/sergi/go-diff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sergi/go-diff";
+      rev = "v1.0.0";
+      sha256 = "0swiazj8wphs2zmk1qgq75xza6m19snif94h2m6fi8dqkwqdl7c7";
+    };
+  }
+  {
+    goPackagePath = "github.com/shurcooL/sanitized_anchor_name";
+    fetch = {
+      type = "git";
+      url = "https://github.com/shurcooL/sanitized_anchor_name";
+      rev = "v1.0.0";
+      sha256 = "1gv9p2nr46z80dnfjsklc6zxbgk96349sdsxjz05f3z6wb6m5l8f";
+    };
+  }
+  {
+    goPackagePath = "github.com/sirupsen/logrus";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sirupsen/logrus";
+      rev = "v1.3.0";
+      sha256 = "0ib7k8cwxn53dyxd3af1g81z018n77n6q64pm4miznirf7c2c9gk";
+    };
+  }
+  {
+    goPackagePath = "github.com/smartystreets/assertions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/smartystreets/assertions";
+      rev = "b2de0cb4f26d";
+      sha256 = "1i7ldgavgl35c7gk25p7bvdr282ckng090zr4ch9mk1705akx09y";
+    };
+  }
+  {
+    goPackagePath = "github.com/smartystreets/goconvey";
+    fetch = {
+      type = "git";
+      url = "https://github.com/smartystreets/goconvey";
+      rev = "505e41936337";
+      sha256 = "07zjxwszayal88z1j2bwnqrsa32vg8l4nivks5yfr9j8xfsw7n6m";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/objx";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/objx";
+      rev = "v0.1.1";
+      sha256 = "0iph0qmpyqg4kwv8jsx6a56a7hhqq8swrazv40ycxk9rzr0s8yls";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/testify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/testify";
+      rev = "v1.4.0";
+      sha256 = "187i5g88sxfy4vxpm7dw1gwv29pa2qaq475lxrdh5livh69wqfjb";
+    };
+  }
+  {
+    goPackagePath = "github.com/tinylib/msgp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/tinylib/msgp";
+      rev = "v1.1.0";
+      sha256 = "08ha23sn14071ywrgxlyj7r523vzdwx1i83dcp1mqa830glgqaff";
+    };
+  }
+  {
+    goPackagePath = "github.com/uber-go/atomic";
+    fetch = {
+      type = "git";
+      url = "https://github.com/uber-go/atomic";
+      rev = "v1.3.2";
+      sha256 = "11pzvjys5ddjjgrv94pgk9pnip9yyb54z7idf33zk7p7xylpnsv6";
+    };
+  }
+  {
+    goPackagePath = "github.com/uber/jaeger-client-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/uber/jaeger-client-go";
+      rev = "v2.15.0";
+      sha256 = "0ki23m9zrf3vxp839fnp9ckr4m28y6mpad8g5s5lr5k8jkl0sfwj";
+    };
+  }
+  {
+    goPackagePath = "github.com/uber/jaeger-lib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/uber/jaeger-lib";
+      rev = "v1.5.0";
+      sha256 = "113fwpn80ylx970w8h7nfqnhh18dpx1jadbk7rbr8k68q4di4y0q";
+    };
+  }
+  {
+    goPackagePath = "github.com/ugorji/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ugorji/go";
+      rev = "v1.1.4";
+      sha256 = "0ma2qvn5wqvjidpdz74x832a813qnr1cxbx6n6n125ak9b3wbn5w";
+    };
+  }
+  {
+    goPackagePath = "github.com/urfave/negroni";
+    fetch = {
+      type = "git";
+      url = "https://github.com/urfave/negroni";
+      rev = "v1.0.0";
+      sha256 = "1gp6j74adi1cn8fq5v3wzlzhwl4zg43n2746m4fzdcdimihk3ccp";
+    };
+  }
+  {
+    goPackagePath = "github.com/valyala/bytebufferpool";
+    fetch = {
+      type = "git";
+      url = "https://github.com/valyala/bytebufferpool";
+      rev = "v1.0.0";
+      sha256 = "01lqzjddq6kz9v41nkky7wbgk7f1cw036sa7ldz10d82g5klzl93";
+    };
+  }
+  {
+    goPackagePath = "github.com/valyala/fasthttp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/valyala/fasthttp";
+      rev = "v1.4.0";
+      sha256 = "0kypc7r91n61fm6qsadza1aiy9n6byghvcxzvx7agi6yzrllk956";
+    };
+  }
+  {
+    goPackagePath = "github.com/valyala/fasttemplate";
+    fetch = {
+      type = "git";
+      url = "https://github.com/valyala/fasttemplate";
+      rev = "v1.0.1";
+      sha256 = "0l131znbv8v67y20s4q361mwiww2c33zdc68mwvxchzk1gpy5ywq";
+    };
+  }
+  {
+    goPackagePath = "github.com/valyala/tcplisten";
+    fetch = {
+      type = "git";
+      url = "https://github.com/valyala/tcplisten";
+      rev = "ceec8f93295a";
+      sha256 = "0ksbj1gsdqanbnhly5w1wcc107bib4w0zpnyl00prr89zch3imnf";
+    };
+  }
+  {
+    goPackagePath = "github.com/xeipuuv/gojsonpointer";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xeipuuv/gojsonpointer";
+      rev = "df4f5c81cb3b";
+      sha256 = "0dfwc66z5gq75m3z7va80c10c22ijiq99bahq86l26ki71g286xn";
+    };
+  }
+  {
+    goPackagePath = "github.com/xeipuuv/gojsonreference";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xeipuuv/gojsonreference";
+      rev = "bd5ef7bd5415";
+      sha256 = "1xby79padc7bmyb8rfbad8wfnfdzpnh51b1n8c0kibch0kwc1db5";
+    };
+  }
+  {
+    goPackagePath = "github.com/xeipuuv/gojsonschema";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xeipuuv/gojsonschema";
+      rev = "v1.1.0";
+      sha256 = "10gn5y4l72zknj21mff29d9vnk4pz7jnw39xnlsb373lsiih91xg";
+    };
+  }
+  {
+    goPackagePath = "github.com/yalp/jsonpath";
+    fetch = {
+      type = "git";
+      url = "https://github.com/yalp/jsonpath";
+      rev = "5cc68e5049a0";
+      sha256 = "0kkyxp1cg3kfxy5hhwzxg132jin4xb492z5jpqq94ix15v6rdf4b";
+    };
+  }
+  {
+    goPackagePath = "github.com/yudai/gojsondiff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/yudai/gojsondiff";
+      rev = "v1.0.0";
+      sha256 = "0qnymi0027mb8kxm24mmd22bvjrdkc56c7f4q3lbdf93x1vxbbc2";
+    };
+  }
+  {
+    goPackagePath = "github.com/yudai/golcs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/yudai/golcs";
+      rev = "ecda9a501e82";
+      sha256 = "0mx6wc5fz05yhvg03vvps93bc5mw4vnng98fhmixd47385qb29pq";
+    };
+  }
+  {
+    goPackagePath = "github.com/yudai/pp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/yudai/pp";
+      rev = "v2.0.1";
+      sha256 = "18vbc7jagnjw1wpvhqjffl0np7bzzqdd9jpdcisvj5h85lbyn5gk";
+    };
+  }
+  {
+    goPackagePath = "gitlab.com/gitlab-org/gitaly";
+    fetch = {
+      type = "git";
+      url = "https://gitlab.com/gitlab-org/gitaly.git";
+      rev = "v1.74.0";
+      sha256 = "1gmrpzm4ijw8g1xj8b3vmvg4cmis7shvwxp5vl2r47a8mh2ql5pd";
+    };
+  }
+  {
+    goPackagePath = "gitlab.com/gitlab-org/labkit";
+    fetch = {
+      type = "git";
+      url = "https://gitlab.com/gitlab-org/labkit.git";
+      rev = "fac94cb428e6";
+      sha256 = "19wvfjij6zm88fxbx0cngr6ny4yh3fw469d6vlv741b37s07w3j0";
+    };
+  }
+  {
+    goPackagePath = "go.opencensus.io";
+    fetch = {
+      type = "git";
+      url = "https://github.com/census-instrumentation/opencensus-go";
+      rev = "v0.22.2";
+      sha256 = "0lz7fid63pdrcvyzk5kn7vlcva102h61igmw7pz824wvj9k3hy4q";
+    };
+  }
+  {
+    goPackagePath = "go.uber.org/atomic";
+    fetch = {
+      type = "git";
+      url = "https://github.com/uber-go/atomic";
+      rev = "v1.3.2";
+      sha256 = "11pzvjys5ddjjgrv94pgk9pnip9yyb54z7idf33zk7p7xylpnsv6";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "87dc89f01550";
+      sha256 = "0z4i1m2yn3f31ci7wvcm2rxkx2yiv7a78mfzklncmsz2k97rlh2g";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/exp";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/exp";
+      rev = "da58074b4299";
+      sha256 = "1pgvdbjm3n47505diw3mm2hisp9b9q2lyvgl9m6xh2wx83b0cj48";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/image";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/image";
+      rev = "cff245a6509b";
+      sha256 = "0hiznlkiaay30acwvvyq8g6bm32r7bc6gv47pygrcxqpapasbz84";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/lint";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/lint";
+      rev = "fdd1cda4f05f";
+      sha256 = "0a23pc90fqar8sm1b480sls15ss20rqk13yrf63b6rnyd2c6z0x2";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/mobile";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/mobile";
+      rev = "d2bd2a29d028";
+      sha256 = "1nv6vvhnjr01nx9y06q46ww87dppdwpbqrlsfg1xf2587wxl8xiv";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/mod";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/mod";
+      rev = "c90efee705ee";
+      sha256 = "0i5md645rmcy5z5ij9ng428k9rz4g3k1kjy3blsq1264rn426gdf";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "6afb5195e5aa";
+      sha256 = "1aiz41q2yxgg3dxfkn33ff54vhaxbiwcps9j3ia1xx4cqxim38zw";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/oauth2";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/oauth2";
+      rev = "bf48bf16ab8d";
+      sha256 = "1sirdib60zwmh93kf9qrx51r8544k1p9rs5mk0797wibz3m4mrdg";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sync";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sync";
+      rev = "cd5d95a43a6e";
+      sha256 = "1nqkyz2y1qvqcma52ijh02s8aiqmkfb95j08f6zcjhbga3ds6hds";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "d101bd2416d5";
+      sha256 = "1ksxf37b0ym21n8j29m3wgbaiw1kcjw3hgf88kipc1ry2j13l98p";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "v0.3.2";
+      sha256 = "0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/time";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/time";
+      rev = "9d24e82272b4";
+      sha256 = "1f5nkr4vys2vbd8wrwyiq2f5wcaahhpxmia85d1gshcbqjqf8dkb";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "43d50277825c";
+      sha256 = "1168q4da36wq9w2591iqzsfy5ymwfi2g46bv5dnyyspg155ld19k";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/xerrors";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/xerrors";
+      rev = "9bdfabe68543";
+      sha256 = "1yjfi1bk9xb81lqn85nnm13zz725wazvrx3b50hx19qmwg7a4b0c";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/api";
+    fetch = {
+      type = "git";
+      url = "https://code.googlesource.com/google-api-go-client";
+      rev = "v0.15.0";
+      sha256 = "1ljhwv5xsgsbqia70f35q19vwrsm47sh08ljbwdyfa867ff17qdh";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/appengine";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/appengine";
+      rev = "v1.6.5";
+      sha256 = "05hbq4cs7bqw0zl17bx8rzdkszid3nyl92100scg3jjrg70dhm7w";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/genproto";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-genproto";
+      rev = "ca5a22157cba";
+      sha256 = "0ldkh6f0g0wzfkp09ib15a62bmcbpsxj93saikqmc86242bcxij0";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/grpc";
+    fetch = {
+      type = "git";
+      url = "https://github.com/grpc/grpc-go";
+      rev = "v1.24.0";
+      sha256 = "0h8mwv74vzcfb7p4ai247x094skxca71vjp4wpj2wzmri0x9p4v6";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/DataDog/dd-trace-go.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/DataDog/dd-trace-go.v1";
+      rev = "v1.7.0";
+      sha256 = "0j45skiiayfsaw8id4g20k51zfr0raj47a03q2icka5xrh3qj6yq";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/alecthomas/kingpin.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/alecthomas/kingpin.v2";
+      rev = "v2.2.6";
+      sha256 = "0mndnv3hdngr3bxp7yxfd47cas4prv98sqw534mx7vp38gd88n5r";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/check.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/check.v1";
+      rev = "788fd7840127";
+      sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/errgo.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/errgo.v2";
+      rev = "v2.1.0";
+      sha256 = "065mbihiy7q67wnql0bzl9y1kkvck5ivra68254zbih52jxwrgr2";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/fsnotify.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/fsnotify.v1";
+      rev = "v1.4.7";
+      sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/go-playground/assert.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/go-playground/assert.v1";
+      rev = "v1.2.1";
+      sha256 = "1h4amgykpa0djwi619llr3g55p75ia0mi184h9s5zdl8l4rhn9pm";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/go-playground/validator.v8";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/go-playground/validator.v8";
+      rev = "v8.18.2";
+      sha256 = "1m2i48ph5a3kw9nlw2srx8i04v7chicds2hlzlrfm15045crga55";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/mgo.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/mgo.v2";
+      rev = "9856a29383ce";
+      sha256 = "1gfbcmvpwwf1lydxj3g42wv2g9w3pf0y02igqk4f4f21h02sazkw";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/tomb.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/tomb.v1";
+      rev = "dd632973f1e7";
+      sha256 = "1lqmq1ag7s4b3gc3ddvr792c5xb5k6sfn0cchr3i2s7f1c231zjv";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "v2.2.2";
+      sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa";
+    };
+  }
+  {
+    goPackagePath = "honnef.co/go/tools";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dominikh/go-tools";
+      rev = "v0.0.1-2019.2.3";
+      sha256 = "1rwwahmbs4dwxncwjj56likir1kps9937vm2id3rygxzzla40zal";
+    };
+  }
+  {
+    goPackagePath = "rsc.io/binaryregexp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rsc/binaryregexp";
+      rev = "v0.2.0";
+      sha256 = "1kar0myy85waw418zslviwx8846zj0m9cmqkxjx0fvgjdi70nc4b";
+    };
+  }
+]
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/remove-hardcoded-locations.patch b/nixpkgs/pkgs/applications/version-management/gitlab/remove-hardcoded-locations.patch
new file mode 100644
index 000000000000..846bdeff48d3
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/remove-hardcoded-locations.patch
@@ -0,0 +1,163 @@
+diff --git a/config/environments/production.rb b/config/environments/production.rb
+index c5cbfcf64c..4d01f6fab8 100644
+--- a/config/environments/production.rb
++++ b/config/environments/production.rb
+@@ -70,10 +70,10 @@ Rails.application.configure do
+ 
+   config.action_mailer.delivery_method = :sendmail
+   # Defaults to:
+-  # # config.action_mailer.sendmail_settings = {
+-  # #   location: '/usr/sbin/sendmail',
+-  # #   arguments: '-i -t'
+-  # # }
++  config.action_mailer.sendmail_settings = {
++    location: '/usr/sbin/sendmail',
++    arguments: '-i -t'
++  }
+   config.action_mailer.perform_deliveries = true
+   config.action_mailer.raise_delivery_errors = true
+ 
+diff --git a/config/gitlab.yml.example b/config/gitlab.yml.example
+index bd696a7f2c..44e3863736 100644
+--- a/config/gitlab.yml.example
++++ b/config/gitlab.yml.example
+@@ -590,7 +590,7 @@ production: &base
+   # CAUTION!
+   # Use the default values unless you really know what you are doing
+   git:
+-    bin_path: /usr/bin/git
++    bin_path: git
+ 
+   ## Webpack settings
+   # If enabled, this will tell rails to serve frontend assets from the webpack-dev-server running
+diff --git a/config/initializers/1_settings.rb b/config/initializers/1_settings.rb
+index 0bea8a4f4b..290248547b 100644
+--- a/config/initializers/1_settings.rb
++++ b/config/initializers/1_settings.rb
+@@ -255,7 +255,7 @@ Settings.gitlab['user']       ||= 'git'
+ Settings.gitlab['user_home']  ||= begin
+   Etc.getpwnam(Settings.gitlab['user']).dir
+ rescue ArgumentError # no user configured
+-  '/home/' + Settings.gitlab['user']
++  '/homeless-shelter'
+ end
+ Settings.gitlab['time_zone'] ||= nil
+ Settings.gitlab['signup_enabled'] ||= true if Settings.gitlab['signup_enabled'].nil?
+@@ -507,7 +507,7 @@ Settings.backup['upload']['storage_class'] ||= nil
+ # Git
+ #
+ Settings['git'] ||= Settingslogic.new({})
+-Settings.git['bin_path'] ||= '/usr/bin/git'
++Settings.git['bin_path'] ||= 'git'
+ 
+ # Important: keep the satellites.path setting until GitLab 9.0 at
+ # least. This setting is fed to 'rm -rf' in
+diff --git a/lib/api/api.rb b/lib/api/api.rb
+index e953f3d2ec..3a8d9f076b 100644
+--- a/lib/api/api.rb
++++ b/lib/api/api.rb
+@@ -2,7 +2,7 @@ module API
+   class API < Grape::API
+     include APIGuard
+ 
+-    LOG_FILENAME = Rails.root.join("log", "api_json.log")
++    LOG_FILENAME = File.join(ENV["GITLAB_LOG_PATH"], "api_json.log")
+ 
+     NO_SLASH_URL_PART_REGEX = %r{[^/]+}
+     PROJECT_ENDPOINT_REQUIREMENTS = { id: NO_SLASH_URL_PART_REGEX }.freeze
+diff --git a/lib/gitlab/logger.rb b/lib/gitlab/logger.rb
+index a42e312b5d..ccaab9229e 100644
+--- a/lib/gitlab/logger.rb
++++ b/lib/gitlab/logger.rb
+@@ -26,7 +26,7 @@ module Gitlab
+     end
+ 
+     def self.full_log_path
+-      Rails.root.join("log", file_name)
++        File.join(ENV["GITLAB_LOG_PATH"], file_name)
+     end
+ 
+     def self.cache_key
+diff --git a/lib/gitlab/uploads_transfer.rb b/lib/gitlab/uploads_transfer.rb
+index 7d7400bdab..cb25211d44 100644
+--- a/lib/gitlab/uploads_transfer.rb
++++ b/lib/gitlab/uploads_transfer.rb
+@@ -1,7 +1,7 @@
+ module Gitlab
+   class UploadsTransfer < ProjectTransfer
+     def root_dir
+-      FileUploader.root
++      ENV['GITLAB_UPLOADS_PATH'] || FileUploader.root
+     end
+   end
+ end
+diff --git a/lib/system_check/app/log_writable_check.rb b/lib/system_check/app/log_writable_check.rb
+index 3e0c436d6e..28cefc5514 100644
+--- a/lib/system_check/app/log_writable_check.rb
++++ b/lib/system_check/app/log_writable_check.rb
+@@ -21,7 +21,7 @@ module SystemCheck
+       private
+ 
+       def log_path
+-        Rails.root.join('log')
++        ENV["GITLAB_LOG_PATH"]
+       end
+     end
+   end
+diff --git a/lib/system_check/app/uploads_directory_exists_check.rb b/lib/system_check/app/uploads_directory_exists_check.rb
+index 7026d0ba07..c56e1f7ed9 100644
+--- a/lib/system_check/app/uploads_directory_exists_check.rb
++++ b/lib/system_check/app/uploads_directory_exists_check.rb
+@@ -4,12 +4,13 @@ module SystemCheck
+       set_name 'Uploads directory exists?'
+ 
+       def check?
+-        File.directory?(Rails.root.join('public/uploads'))
++        File.directory?(ENV['GITLAB_UPLOADS_PATH'] || Rails.root.join('public/uploads'))
+       end
+ 
+       def show_error
++        uploads_dir = ENV['GITLAB_UPLOADS_PATH'] || Rails.root.join('public/uploads')
+         try_fixing_it(
+-          "sudo -u #{gitlab_user} mkdir #{Rails.root}/public/uploads"
++            "sudo -u #{gitlab_user} mkdir #{uploads_dir}"
+         )
+         for_more_information(
+           see_installation_guide_section 'GitLab'
+diff --git a/lib/system_check/app/uploads_path_permission_check.rb b/lib/system_check/app/uploads_path_permission_check.rb
+index 7df6c06025..bb447c16b2 100644
+--- a/lib/system_check/app/uploads_path_permission_check.rb
++++ b/lib/system_check/app/uploads_path_permission_check.rb
+@@ -25,7 +25,7 @@ module SystemCheck
+       private
+ 
+       def rails_uploads_path
+-        Rails.root.join('public/uploads')
++        ENV['GITLAB_UPLOADS_PATH'] || Rails.root.join('public/uploads')
+       end
+ 
+       def uploads_fullpath
+diff --git a/lib/system_check/app/uploads_path_tmp_permission_check.rb b/lib/system_check/app/uploads_path_tmp_permission_check.rb
+index b276a81eac..070e3ebd81 100644
+--- a/lib/system_check/app/uploads_path_tmp_permission_check.rb
++++ b/lib/system_check/app/uploads_path_tmp_permission_check.rb
+@@ -33,7 +33,7 @@ module SystemCheck
+       end
+ 
+       def uploads_fullpath
+-        File.realpath(Rails.root.join('public/uploads'))
++        File.realpath(ENV['GITLAB_UPLOADS_PATH'] || Rails.root.join('public/uploads'))
+       end
+     end
+   end
+--- a/lib/gitlab/authorized_keys.rb
++++ b/lib/gitlab/authorized_keys.rb
+@@ -157,7 +157,7 @@
+         raise KeyError, "Invalid ID: #{id.inspect}"
+       end
+ 
+-      "#{File.join(Gitlab.config.gitlab_shell.path, 'bin', 'gitlab-shell')} #{id}"
++      "#{File.join('/run/current-system/sw/bin', 'gitlab-shell')} #{id}"
+     end
+ 
+     def strip(key)
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/reset_token.rake b/nixpkgs/pkgs/applications/version-management/gitlab/reset_token.rake
new file mode 100644
index 000000000000..705b5830edfc
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/reset_token.rake
@@ -0,0 +1,43 @@
+# Taken from:
+# https://about.gitlab.com/2017/03/20/gitlab-8-dot-17-dot-4-security-release/
+
+# lib/tasks/reset_token.rake
+require_relative '../../app/models/concerns/token_authenticatable.rb'
+
+STDOUT.sync = true
+
+namespace :tokens do
+  desc "Reset all GitLab user auth tokens"
+  task reset_all: :environment do
+    reset_all_users_token(:reset_authentication_token!)
+  end
+
+  desc "Reset all GitLab email tokens"
+  task reset_all_email: :environment do
+    reset_all_users_token(:reset_incoming_email_token!)
+  end
+
+  def reset_all_users_token(token)
+    TmpUser.find_in_batches do |batch|
+      puts "Processing batch starting with user ID: #{batch.first.id}"
+
+      batch.each(&token)
+    end
+  end
+end
+
+class TmpUser < ActiveRecord::Base
+  include TokenAuthenticatable
+
+  self.table_name = 'users'
+
+  def reset_authentication_token!
+    write_new_token(:authentication_token)
+    save!(validate: false)
+  end
+
+  def reset_incoming_email_token!
+    write_new_token(:incoming_email_token)
+    save!(validate: false)
+  end
+end
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile b/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile
new file mode 100644
index 000000000000..9c8c5e8b30d7
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile
@@ -0,0 +1,500 @@
+source 'https://rubygems.org'
+
+gem 'rails', '~> 6.0.3'
+
+gem 'bootsnap', '~> 1.4.6'
+
+# Improves copy-on-write performance for MRI
+gem 'nakayoshi_fork', '~> 0.0.4'
+
+# Responders respond_to and respond_with
+gem 'responders', '~> 3.0'
+
+gem 'sprockets', '~> 3.7.0'
+
+# Default values for AR models
+gem 'default_value_for', '~> 3.3.0'
+
+# Supported DBs
+gem 'pg', '~> 1.1'
+
+gem 'rugged', '~> 0.28'
+gem 'grape-path-helpers', '~> 1.2'
+
+gem 'faraday', '~> 0.12'
+gem 'marginalia', '~> 1.8.0'
+
+# Authentication libraries
+gem 'devise', '~> 4.6'
+gem 'doorkeeper', '~> 5.0.3'
+gem 'doorkeeper-openid_connect', '~> 1.6.3'
+gem 'omniauth', '~> 1.8'
+gem 'omniauth-auth0', '~> 2.0.0'
+gem 'omniauth-azure-oauth2', '~> 0.0.9'
+gem 'omniauth-cas3', '~> 1.1.4'
+gem 'omniauth-facebook', '~> 4.0.0'
+gem 'omniauth-github', '~> 1.4'
+gem 'omniauth-gitlab', '~> 1.0.2'
+gem 'omniauth-google-oauth2', '~> 0.6.0'
+gem 'omniauth-kerberos', '~> 0.3.0', group: :kerberos
+gem 'omniauth-oauth2-generic', '~> 0.2.2'
+gem 'omniauth-saml', '~> 1.10'
+gem 'omniauth-shibboleth', '~> 1.3.0'
+gem 'omniauth-twitter', '~> 1.4'
+gem 'omniauth_crowd', '~> 2.2.0'
+gem 'omniauth-authentiq', '~> 0.3.3'
+gem 'omniauth_openid_connect', '~> 0.3.3'
+gem "omniauth-ultraauth", '~> 0.0.2'
+gem 'omniauth-salesforce', '~> 1.0.5'
+gem 'rack-oauth2', '~> 1.9.3'
+gem 'jwt', '~> 2.1.0'
+
+# Kerberos authentication. EE-only
+gem 'gssapi', group: :kerberos
+
+# Spam and anti-bot protection
+gem 'recaptcha', '~> 4.11', require: 'recaptcha/rails'
+gem 'akismet', '~> 3.0'
+gem 'invisible_captcha', '~> 0.12.1'
+
+# Two-factor authentication
+gem 'devise-two-factor', '~> 3.1.0'
+gem 'rqrcode-rails3', '~> 0.1.7'
+gem 'attr_encrypted', '~> 3.1.0'
+gem 'u2f', '~> 0.2.1'
+
+# GitLab Pages
+gem 'validates_hostname', '~> 1.0.6'
+gem 'rubyzip', '~> 2.0.0', require: 'zip'
+# GitLab Pages letsencrypt support
+gem 'acme-client', '~> 2.0.5'
+
+# Browser detection
+gem 'browser', '~> 2.5'
+
+# GPG
+gem 'gpgme', '~> 2.0.19'
+
+# LDAP Auth
+# GitLab fork with several improvements to original library. For full list of changes
+# see https://github.com/intridea/omniauth-ldap/compare/master...gitlabhq:master
+gem 'gitlab_omniauth-ldap', '~> 2.1.1', require: 'omniauth-ldap'
+gem 'net-ldap'
+
+# API
+gem 'grape', '~> 1.1.0'
+gem 'grape-entity', '~> 0.7.1'
+gem 'rack-cors', '~> 1.0.6', require: 'rack/cors'
+
+# GraphQL API
+gem 'graphql', '~> 1.10.5'
+# NOTE: graphiql-rails v1.5+ doesn't work: https://gitlab.com/gitlab-org/gitlab/issues/31771
+# 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.0.beta3'
+gem 'graphql-docs', '~> 1.6.0', group: [:development, :test]
+
+# Disable strong_params so that Mash does not respond to :permitted?
+gem 'hashie-forbidden_attributes'
+
+# Pagination
+gem 'kaminari', '~> 1.0'
+
+# HAML
+gem 'hamlit', '~> 2.11.0'
+
+# Files attachments
+gem 'carrierwave', '~> 1.3'
+gem 'mini_magick'
+
+# for backups
+gem 'fog-aws', '~> 3.5'
+# Locked until fog-google resolves https://github.com/fog/fog-google/issues/421.
+# Also see config/initializers/fog_core_patch.rb.
+gem 'fog-core', '= 2.1.0'
+gem 'fog-google', '~> 1.9'
+gem 'fog-local', '~> 0.6'
+gem 'fog-openstack', '~> 1.0'
+gem 'fog-rackspace', '~> 0.1.1'
+gem 'fog-aliyun', '~> 0.3'
+
+# for Google storage
+gem 'google-api-client', '~> 0.23'
+
+# for aws storage
+gem 'unf', '~> 0.1.4'
+
+# Seed data
+gem 'seed-fu', '~> 2.3.7'
+
+# Search
+gem 'elasticsearch-model', '~> 6.1'
+gem 'elasticsearch-rails', '~> 6.1', require: 'elasticsearch/rails/instrumentation'
+gem 'elasticsearch-api',   '~> 6.8'
+gem 'aws-sdk'
+gem 'faraday_middleware-aws-signers-v4'
+
+# Markdown and HTML processing
+gem 'html-pipeline', '~> 2.12'
+gem 'deckar01-task_list', '2.3.1'
+gem 'gitlab-markup', '~> 1.7.1'
+gem 'github-markup', '~> 1.7.0', require: 'github/markup'
+gem 'commonmarker', '~> 0.20'
+gem 'RedCloth', '~> 4.3.2'
+gem 'rdoc', '~> 6.1.2'
+gem 'org-ruby', '~> 0.9.12'
+gem 'creole', '~> 0.5.0'
+gem 'wikicloth', '0.8.1'
+gem 'asciidoctor', '~> 2.0.10'
+gem 'asciidoctor-include-ext', '~> 0.3.1', require: false
+gem 'asciidoctor-plantuml', '~> 0.0.12'
+gem 'rouge', '~> 3.19.0'
+gem 'truncato', '~> 0.7.11'
+gem 'bootstrap_form', '~> 4.2.0'
+gem 'nokogiri', '~> 1.10.9'
+gem 'escape_utils', '~> 1.1'
+
+# Calendar rendering
+gem 'icalendar'
+
+# Diffs
+gem 'diffy', '~> 3.3'
+gem 'diff_match_patch', '~> 0.1.0'
+
+# Application server
+gem 'rack', '~> 2.0.9'
+
+group :unicorn do
+  gem 'unicorn', '~> 5.5'
+  gem 'unicorn-worker-killer', '~> 0.4.4'
+end
+
+group :puma do
+  gem 'gitlab-puma', '~> 4.3.3.gitlab.2', require: false
+  gem 'gitlab-puma_worker_killer', '~> 0.1.1.gitlab.1', require: false
+  gem 'rack-timeout', require: false
+end
+
+# State machine
+gem 'state_machines-activerecord', '~> 0.6.0'
+
+# Issue tags
+gem 'acts-as-taggable-on', '~> 6.0'
+
+# Background jobs
+gem 'sidekiq', '~> 5.2.7'
+gem 'sidekiq-cron', '~> 1.0'
+gem 'redis-namespace', '~> 1.6.0'
+gem 'gitlab-sidekiq-fetcher', '0.5.2', require: 'sidekiq-reliable-fetch'
+
+# Cron Parser
+gem 'fugit', '~> 1.2.1'
+
+# HTTP requests
+gem 'httparty', '~> 0.16.4'
+
+# Colored output to console
+gem 'rainbow', '~> 3.0'
+
+# Progress bar
+gem 'ruby-progressbar'
+
+# GitLab settings
+gem 'settingslogic', '~> 2.0.9'
+
+# Linear-time regex library for untrusted regular expressions
+gem 're2', '~> 1.2.0'
+
+# Misc
+
+gem 'version_sorter', '~> 2.2.4'
+
+# Export Ruby Regex to Javascript
+gem 'js_regex', '~> 3.1'
+
+# User agent parsing
+gem 'device_detector'
+
+# Redis
+gem 'redis', '~> 4.0'
+gem 'connection_pool', '~> 2.0'
+
+# Redis session store
+gem 'redis-rails', '~> 5.0.2'
+
+# Discord integration
+gem 'discordrb-webhooks-blackst0ne', '~> 3.3', require: false
+
+# HipChat integration
+gem 'hipchat', '~> 1.5.0'
+
+# Jira integration
+gem 'jira-ruby', '~> 2.0.0'
+gem 'atlassian-jwt', '~> 0.2.0'
+
+# Flowdock integration
+gem 'flowdock', '~> 0.7'
+
+# Slack integration
+gem 'slack-messenger', '~> 2.3.3'
+
+# Hangouts Chat integration
+gem 'hangouts-chat', '~> 0.0.5'
+
+# Asana integration
+gem 'asana', '~> 0.9'
+
+# FogBugz integration
+gem 'ruby-fogbugz', '~> 0.2.1'
+
+# Kubernetes integration
+gem 'kubeclient', '~> 4.6.0'
+
+# Sanitize user input
+gem 'sanitize', '~> 4.6'
+gem 'babosa', '~> 1.0.2'
+
+# Sanitizes SVG input
+gem 'loofah', '~> 2.2'
+
+# Working with license
+gem 'licensee', '~> 8.9'
+
+# Ace editor
+gem 'ace-rails-ap', '~> 4.1.0'
+
+# Detect and convert string character encoding
+gem 'charlock_holmes', '~> 0.7.5'
+
+# Detect mime content type from content
+gem 'mimemagic', '~> 0.3.2'
+
+# Faster blank
+gem 'fast_blank'
+
+# Parse time & duration
+gem 'gitlab-chronic', '~> 0.10.5'
+gem 'gitlab_chronic_duration', '~> 0.10.6.2'
+
+gem 'webpack-rails', '~> 0.9.10'
+gem 'rack-proxy', '~> 0.6.0'
+
+gem 'sassc-rails', '~> 2.1.0'
+gem 'uglifier', '~> 2.7.2'
+
+gem 'addressable', '~> 2.7'
+gem 'font-awesome-rails', '~> 4.7'
+gem 'gemojione', '~> 3.3'
+gem 'gon', '~> 6.2'
+gem 'request_store', '~> 1.5'
+gem 'base32', '~> 0.3.0'
+
+gem "gitlab-license", "~> 1.0"
+
+# Protect against bruteforcing
+gem 'rack-attack', '~> 6.3.0'
+
+# Sentry integration
+gem 'sentry-raven', '~> 2.9'
+
+gem 'premailer-rails', '~> 1.10.3'
+
+# LabKit: Tracing and Correlation
+gem 'gitlab-labkit', '0.12.0'
+
+# I18n
+gem 'ruby_parser', '~> 3.8', require: false
+gem 'rails-i18n', '~> 6.0'
+gem 'gettext_i18n_rails', '~> 1.8.0'
+gem 'gettext_i18n_rails_js', '~> 1.3'
+gem 'gettext', '~> 3.2.2', require: false, group: :development
+
+gem 'batch-loader', '~> 1.4.0'
+
+# Perf bar
+gem 'peek', '~> 1.1'
+
+# Snowplow events tracking
+gem 'snowplow-tracker', '~> 0.6.1'
+
+# Metrics
+group :metrics do
+  gem 'method_source', '~> 0.8', require: false
+
+  # Prometheus
+  gem 'prometheus-client-mmap', '~> 0.10.0'
+  gem 'raindrops', '~> 0.18'
+end
+
+group :development do
+  gem 'brakeman', '~> 4.2', require: false
+  gem 'danger', '~> 6.0', require: false
+
+  gem 'letter_opener_web', '~> 1.3.4'
+  gem 'rblineprof', '~> 0.3.6', platform: :mri, require: false
+
+  # Better errors handler
+  gem 'better_errors', '~> 2.5.0'
+  gem 'binding_of_caller', '~> 0.8.0'
+
+  # thin instead webrick
+  gem 'thin', '~> 1.7.0'
+end
+
+group :development, :test do
+  gem 'bullet', '~> 6.0.2', require: !!ENV['ENABLE_BULLET']
+  gem 'pry-byebug', '~> 3.5.1', platform: :mri
+  gem 'pry-rails', '~> 0.3.9'
+
+  gem 'awesome_print', require: false
+
+  gem 'database_cleaner', '~> 1.7.0'
+  gem 'factory_bot_rails', '~> 5.1.0'
+  gem 'rspec-rails', '~> 4.0.0'
+
+  # Prevent occasions where minitest is not bundled in packaged versions of ruby (see #3826)
+  gem 'minitest', '~> 5.11.0'
+
+  # Generate Fake data
+  gem 'ffaker', '~> 2.10'
+
+  gem 'spring', '~> 2.0.0'
+  gem 'spring-commands-rspec', '~> 1.0.4'
+
+  gem 'gitlab-styles', '~> 3.2.0', require: false
+  # Pin these dependencies, otherwise a new rule could break the CI pipelines
+  gem 'rubocop', '~> 0.74.0'
+  gem 'rubocop-performance', '~> 1.4.1'
+  gem 'rubocop-rspec', '~> 1.37.0'
+
+  gem 'scss_lint', '~> 0.56.0', require: false
+  gem 'haml_lint', '~> 0.34.0', require: false
+  gem 'simplecov', '~> 0.18.5', require: false
+  gem 'bundler-audit', '~> 0.6.1', require: false
+
+  gem 'benchmark-ips', '~> 2.3.0', require: false
+
+  gem 'knapsack', '~> 1.17'
+
+  gem 'simple_po_parser', '~> 1.1.2', require: false
+
+  gem 'timecop', '~> 0.9.1'
+
+  gem 'png_quantizator', '~> 0.2.1', require: false
+
+  gem 'parallel', '~> 1.19', require: false
+end
+
+# Gems required in omnibus-gitlab pipeline
+group :development, :test, :omnibus do
+  gem 'license_finder', '~> 5.4', require: false
+end
+
+group :test do
+  gem 'fuubar', '~> 2.2.0'
+  gem 'rspec-retry', '~> 0.6.1'
+  gem 'rspec_profiling', '~> 0.0.5'
+  gem 'rspec-parameterized', require: false
+
+  gem 'capybara', '~> 3.22.0'
+  gem 'capybara-screenshot', '~> 1.0.22'
+  gem 'selenium-webdriver', '~> 3.142'
+
+  gem 'shoulda-matchers', '~> 4.0.1', require: false
+  gem 'email_spec', '~> 2.2.0'
+  gem 'json-schema', '~> 2.8.0'
+  gem 'webmock', '~> 3.5.1'
+  gem 'rails-controller-testing'
+  gem 'concurrent-ruby', '~> 1.1'
+  gem 'test-prof', '~> 0.10.0'
+  gem 'rspec_junit_formatter'
+  gem 'guard-rspec'
+
+  # Moved in `test` because https://gitlab.com/gitlab-org/gitlab/-/issues/217527
+  gem 'derailed_benchmarks', require: false
+end
+
+gem 'octokit', '~> 4.15'
+
+# https://gitlab.com/gitlab-org/gitlab/issues/207207
+gem 'gitlab-mail_room', '~> 0.0.4', require: 'mail_room'
+
+gem 'email_reply_trimmer', '~> 0.1'
+gem 'html2text'
+
+gem 'ruby-prof', '~> 1.3.0'
+gem 'stackprof', '~> 0.2.15', require: false
+gem 'rbtrace', '~> 0.4', require: false
+gem 'memory_profiler', '~> 0.9', require: false
+gem 'benchmark-memory', '~> 0.1', require: false
+gem 'activerecord-explain-analyze', '~> 0.1', require: false
+
+# OAuth
+gem 'oauth2', '~> 1.4'
+
+# Health check
+gem 'health_check', '~> 2.6.0'
+
+# System information
+gem 'vmstat', '~> 2.3.0'
+gem 'sys-filesystem', '~> 1.1.6'
+
+# NTP client
+gem 'net-ntp'
+
+# SSH host key support
+gem 'net-ssh', '~> 6.0'
+gem 'sshkey', '~> 2.0'
+
+# Required for ED25519 SSH host key support
+group :ed25519 do
+  gem 'ed25519', '~> 1.2'
+  gem 'bcrypt_pbkdf', '~> 1.0'
+end
+
+# Gitaly GRPC protocol definitions
+gem 'gitaly', '~> 13.0.0.pre.rc1'
+
+gem 'grpc', '~> 1.24.0'
+
+gem 'google-protobuf', '~> 3.8.0'
+
+gem 'toml-rb', '~> 1.0.0'
+
+# Feature toggles
+gem 'flipper', '~> 0.17.1'
+gem 'flipper-active_record', '~> 0.17.1'
+gem 'flipper-active_support_cache_store', '~> 0.17.1'
+gem 'unleash', '~> 0.1.5'
+
+# Structured logging
+gem 'lograge', '~> 0.5'
+gem 'grape_logging', '~> 1.7'
+
+# DNS Lookup
+gem 'gitlab-net-dns', '~> 0.9.1'
+
+# Countries list
+gem 'countries', '~> 3.0'
+
+gem 'retriable', '~> 3.1.2'
+
+# LRU cache
+gem 'lru_redux'
+
+gem 'erubi', '~> 1.9.0'
+
+# Locked as long as quoted-printable encoding issues are not resolved
+# Monkey-patched in `config/initializers/mail_encoding_patch.rb`
+# See https://gitlab.com/gitlab-org/gitlab/issues/197386
+gem 'mail', '= 2.7.1'
+
+# File encryption
+gem 'lockbox', '~> 0.3.3'
+
+# Email validation
+gem 'valid_email', '~> 0.1'
+
+# JSON
+gem 'json', '~> 2.3.0'
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock b/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
new file mode 100644
index 000000000000..e6407161f8eb
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
@@ -0,0 +1,1411 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    RedCloth (4.3.2)
+    abstract_type (0.0.7)
+    ace-rails-ap (4.1.2)
+    acme-client (2.0.5)
+      faraday (~> 0.9, >= 0.9.1)
+    actioncable (6.0.3)
+      actionpack (= 6.0.3)
+      nio4r (~> 2.0)
+      websocket-driver (>= 0.6.1)
+    actionmailbox (6.0.3)
+      actionpack (= 6.0.3)
+      activejob (= 6.0.3)
+      activerecord (= 6.0.3)
+      activestorage (= 6.0.3)
+      activesupport (= 6.0.3)
+      mail (>= 2.7.1)
+    actionmailer (6.0.3)
+      actionpack (= 6.0.3)
+      actionview (= 6.0.3)
+      activejob (= 6.0.3)
+      mail (~> 2.5, >= 2.5.4)
+      rails-dom-testing (~> 2.0)
+    actionpack (6.0.3)
+      actionview (= 6.0.3)
+      activesupport (= 6.0.3)
+      rack (~> 2.0, >= 2.0.8)
+      rack-test (>= 0.6.3)
+      rails-dom-testing (~> 2.0)
+      rails-html-sanitizer (~> 1.0, >= 1.2.0)
+    actiontext (6.0.3)
+      actionpack (= 6.0.3)
+      activerecord (= 6.0.3)
+      activestorage (= 6.0.3)
+      activesupport (= 6.0.3)
+      nokogiri (>= 1.8.5)
+    actionview (6.0.3)
+      activesupport (= 6.0.3)
+      builder (~> 3.1)
+      erubi (~> 1.4)
+      rails-dom-testing (~> 2.0)
+      rails-html-sanitizer (~> 1.1, >= 1.2.0)
+    activejob (6.0.3)
+      activesupport (= 6.0.3)
+      globalid (>= 0.3.6)
+    activemodel (6.0.3)
+      activesupport (= 6.0.3)
+    activerecord (6.0.3)
+      activemodel (= 6.0.3)
+      activesupport (= 6.0.3)
+    activerecord-explain-analyze (0.1.0)
+      activerecord (>= 4)
+      pg
+    activestorage (6.0.3)
+      actionpack (= 6.0.3)
+      activejob (= 6.0.3)
+      activerecord (= 6.0.3)
+      marcel (~> 0.3.1)
+    activesupport (6.0.3)
+      concurrent-ruby (~> 1.0, >= 1.0.2)
+      i18n (>= 0.7, < 2)
+      minitest (~> 5.1)
+      tzinfo (~> 1.1)
+      zeitwerk (~> 2.2, >= 2.2.2)
+    acts-as-taggable-on (6.5.0)
+      activerecord (>= 5.0, < 6.1)
+    adamantium (0.2.0)
+      ice_nine (~> 0.11.0)
+      memoizable (~> 0.4.0)
+    addressable (2.7.0)
+      public_suffix (>= 2.0.2, < 5.0)
+    aes_key_wrap (1.0.1)
+    akismet (3.0.0)
+    apollo_upload_server (2.0.0.beta.3)
+      graphql (>= 1.8)
+      rails (>= 4.2)
+    asana (0.9.3)
+      faraday (~> 0.9)
+      faraday_middleware (~> 0.9)
+      faraday_middleware-multi_json (~> 0.0)
+      oauth2 (~> 1.4)
+    asciidoctor (2.0.10)
+    asciidoctor-include-ext (0.3.1)
+      asciidoctor (>= 1.5.6, < 3.0.0)
+    asciidoctor-plantuml (0.0.12)
+      asciidoctor (>= 1.5.6, < 3.0.0)
+    ast (2.4.0)
+    atlassian-jwt (0.2.0)
+      jwt (~> 2.1.0)
+    attr_encrypted (3.1.0)
+      encryptor (~> 3.0.0)
+    attr_required (1.0.1)
+    awesome_print (1.8.0)
+    aws-eventstream (1.0.3)
+    aws-sdk (2.11.374)
+      aws-sdk-resources (= 2.11.374)
+    aws-sdk-core (2.11.374)
+      aws-sigv4 (~> 1.0)
+      jmespath (~> 1.0)
+    aws-sdk-resources (2.11.374)
+      aws-sdk-core (= 2.11.374)
+    aws-sigv4 (1.1.0)
+      aws-eventstream (~> 1.0, >= 1.0.2)
+    axiom-types (0.1.1)
+      descendants_tracker (~> 0.0.4)
+      ice_nine (~> 0.11.0)
+      thread_safe (~> 0.3, >= 0.3.1)
+    babosa (1.0.2)
+    base32 (0.3.2)
+    batch-loader (1.4.0)
+    bcrypt (3.1.12)
+    bcrypt_pbkdf (1.0.0)
+    benchmark-ips (2.3.0)
+    benchmark-memory (0.1.2)
+      memory_profiler (~> 0.9)
+    better_errors (2.5.0)
+      coderay (>= 1.0.0)
+      erubi (>= 1.0.0)
+      rack (>= 0.9.0)
+    bindata (2.4.3)
+    binding_ninja (0.2.3)
+    binding_of_caller (0.8.0)
+      debug_inspector (>= 0.0.1)
+    bootsnap (1.4.6)
+      msgpack (~> 1.0)
+    bootstrap_form (4.2.0)
+      actionpack (>= 5.0)
+      activemodel (>= 5.0)
+    brakeman (4.2.1)
+    browser (2.5.3)
+    builder (3.2.4)
+    bullet (6.0.2)
+      activesupport (>= 3.0.0)
+      uniform_notifier (~> 1.11)
+    bundler-audit (0.6.1)
+      bundler (>= 1.2.0, < 3)
+      thor (~> 0.18)
+    byebug (9.1.0)
+    capybara (3.22.0)
+      addressable
+      mini_mime (>= 0.1.3)
+      nokogiri (~> 1.8)
+      rack (>= 1.6.0)
+      rack-test (>= 0.6.3)
+      regexp_parser (~> 1.5)
+      xpath (~> 3.2)
+    capybara-screenshot (1.0.22)
+      capybara (>= 1.0, < 4)
+      launchy
+    carrierwave (1.3.1)
+      activemodel (>= 4.0.0)
+      activesupport (>= 4.0.0)
+      mime-types (>= 1.16)
+    character_set (1.1.2)
+    charlock_holmes (0.7.6)
+    childprocess (3.0.0)
+    chunky_png (1.3.5)
+    citrus (3.0.2)
+    claide (1.0.3)
+    claide-plugins (0.9.2)
+      cork
+      nap
+      open4 (~> 1.3)
+    coderay (1.1.2)
+    coercible (1.0.0)
+      descendants_tracker (~> 0.0.1)
+    colored2 (3.1.2)
+    commonmarker (0.20.1)
+      ruby-enum (~> 0.5)
+    concord (0.1.5)
+      adamantium (~> 0.2.0)
+      equalizer (~> 0.0.9)
+    concurrent-ruby (1.1.6)
+    connection_pool (2.2.2)
+    contracts (0.11.0)
+    cork (0.3.0)
+      colored2 (~> 3.1)
+    countries (3.0.0)
+      i18n_data (~> 0.8.0)
+      sixarm_ruby_unaccent (~> 1.1)
+      unicode_utils (~> 1.4)
+    crack (0.4.3)
+      safe_yaml (~> 1.0.0)
+    crass (1.0.6)
+    creole (0.5.0)
+    css_parser (1.7.0)
+      addressable
+    daemons (1.2.6)
+    danger (6.0.9)
+      claide (~> 1.0)
+      claide-plugins (>= 0.9.2)
+      colored2 (~> 3.1)
+      cork (~> 0.1)
+      faraday (~> 0.9)
+      faraday-http-cache (~> 2.0)
+      git (~> 1.5)
+      kramdown (~> 2.0)
+      kramdown-parser-gfm (~> 1.0)
+      no_proxy_fix
+      octokit (~> 4.7)
+      terminal-table (~> 1)
+    database_cleaner (1.7.0)
+    debug_inspector (0.0.3)
+    debugger-ruby_core_source (1.3.8)
+    deckar01-task_list (2.3.1)
+      html-pipeline
+    declarative (0.0.10)
+    declarative-option (0.1.0)
+    default_value_for (3.3.0)
+      activerecord (>= 3.2.0, < 6.1)
+    derailed_benchmarks (1.7.0)
+      benchmark-ips (~> 2)
+      get_process_mem (~> 0)
+      heapy (~> 0)
+      memory_profiler (~> 0)
+      mini_histogram (~> 0)
+      rack (>= 1)
+      rake (> 10, < 14)
+      ruby-statistics (>= 2.1)
+      thor (>= 0.19, < 2)
+      unicode_plot (>= 0.0.4, < 1.0.0)
+    descendants_tracker (0.0.4)
+      thread_safe (~> 0.3, >= 0.3.1)
+    device_detector (1.0.0)
+    devise (4.7.1)
+      bcrypt (~> 3.0)
+      orm_adapter (~> 0.1)
+      railties (>= 4.1.0)
+      responders
+      warden (~> 1.2.3)
+    devise-two-factor (3.1.0)
+      activesupport (< 6.1)
+      attr_encrypted (>= 1.3, < 4, != 2)
+      devise (~> 4.0)
+      railties (< 6.1)
+      rotp (~> 2.0)
+    diff-lcs (1.3)
+    diff_match_patch (0.1.0)
+    diffy (3.3.0)
+    discordrb-webhooks-blackst0ne (3.3.0)
+      rest-client (~> 2.0)
+    docile (1.3.2)
+    domain_name (0.5.20180417)
+      unf (>= 0.0.5, < 1.0.0)
+    doorkeeper (5.0.3)
+      railties (>= 4.2)
+    doorkeeper-openid_connect (1.6.3)
+      doorkeeper (>= 5.0, < 5.2)
+      json-jwt (~> 1.6)
+    ed25519 (1.2.4)
+    elasticsearch (6.8.0)
+      elasticsearch-api (= 6.8.0)
+      elasticsearch-transport (= 6.8.0)
+    elasticsearch-api (6.8.0)
+      multi_json
+    elasticsearch-model (6.1.0)
+      activesupport (> 3)
+      elasticsearch (> 1)
+      hashie
+    elasticsearch-rails (6.1.0)
+    elasticsearch-transport (6.8.0)
+      faraday
+      multi_json
+    email_reply_trimmer (0.1.6)
+    email_spec (2.2.0)
+      htmlentities (~> 4.3.3)
+      launchy (~> 2.1)
+      mail (~> 2.7)
+    encryptor (3.0.0)
+    enumerable-statistics (2.0.1)
+    equalizer (0.0.11)
+    erubi (1.9.0)
+    escape_utils (1.2.1)
+    et-orbi (1.2.1)
+      tzinfo
+    eventmachine (1.2.7)
+    excon (0.71.1)
+    execjs (2.6.0)
+    expression_parser (0.9.0)
+    extended-markdown-filter (0.6.0)
+      html-pipeline (~> 2.0)
+    factory_bot (5.1.0)
+      activesupport (>= 4.2.0)
+    factory_bot_rails (5.1.0)
+      factory_bot (~> 5.1.0)
+      railties (>= 4.2.0)
+    faraday (0.15.4)
+      multipart-post (>= 1.2, < 3)
+    faraday-http-cache (2.0.0)
+      faraday (~> 0.8)
+    faraday_middleware (0.12.2)
+      faraday (>= 0.7.4, < 1.0)
+    faraday_middleware-aws-signers-v4 (0.1.7)
+      aws-sdk-resources (~> 2)
+      faraday (~> 0.9)
+    faraday_middleware-multi_json (0.0.6)
+      faraday_middleware
+      multi_json
+    fast_blank (1.0.0)
+    fast_gettext (1.6.0)
+    ffaker (2.10.0)
+    ffi (1.12.2)
+    ffi-compiler (1.0.1)
+      ffi (>= 1.0.0)
+      rake
+    flipper (0.17.1)
+    flipper-active_record (0.17.1)
+      activerecord (>= 4.2, < 7)
+      flipper (~> 0.17.1)
+    flipper-active_support_cache_store (0.17.1)
+      activesupport (>= 4.2, < 7)
+      flipper (~> 0.17.1)
+    flowdock (0.7.1)
+      httparty (~> 0.7)
+      multi_json
+    fog-aliyun (0.3.3)
+      fog-core
+      fog-json
+      ipaddress (~> 0.8)
+      xml-simple (~> 1.1)
+    fog-aws (3.5.2)
+      fog-core (~> 2.1)
+      fog-json (~> 1.1)
+      fog-xml (~> 0.1)
+      ipaddress (~> 0.8)
+    fog-core (2.1.0)
+      builder
+      excon (~> 0.58)
+      formatador (~> 0.2)
+      mime-types
+    fog-google (1.9.1)
+      fog-core (<= 2.1.0)
+      fog-json (~> 1.2)
+      fog-xml (~> 0.1.0)
+      google-api-client (~> 0.23.0)
+    fog-json (1.2.0)
+      fog-core
+      multi_json (~> 1.10)
+    fog-local (0.6.0)
+      fog-core (>= 1.27, < 3.0)
+    fog-openstack (1.0.8)
+      fog-core (~> 2.1)
+      fog-json (>= 1.0)
+      ipaddress (>= 0.8)
+    fog-rackspace (0.1.1)
+      fog-core (>= 1.35)
+      fog-json (>= 1.0)
+      fog-xml (>= 0.1)
+      ipaddress (>= 0.8)
+    fog-xml (0.1.3)
+      fog-core
+      nokogiri (>= 1.5.11, < 2.0.0)
+    font-awesome-rails (4.7.0.5)
+      railties (>= 3.2, < 6.1)
+    formatador (0.2.5)
+    fugit (1.2.1)
+      et-orbi (~> 1.1, >= 1.1.8)
+      raabro (~> 1.1)
+    fuubar (2.2.0)
+      rspec-core (~> 3.0)
+      ruby-progressbar (~> 1.4)
+    gemoji (3.0.1)
+    gemojione (3.3.0)
+      json
+    get_process_mem (0.2.5)
+      ffi (~> 1.0)
+    gettext (3.2.9)
+      locale (>= 2.0.5)
+      text (>= 1.3.0)
+    gettext_i18n_rails (1.8.0)
+      fast_gettext (>= 0.9.0)
+    gettext_i18n_rails_js (1.3.0)
+      gettext (>= 3.0.2)
+      gettext_i18n_rails (>= 0.7.1)
+      po_to_json (>= 1.0.0)
+      rails (>= 3.2.0)
+    git (1.5.0)
+    gitaly (13.0.0.pre.rc1)
+      grpc (~> 1.0)
+    github-markup (1.7.0)
+    gitlab-chronic (0.10.5)
+      numerizer (~> 0.2)
+    gitlab-labkit (0.12.0)
+      actionpack (>= 5.0.0, < 6.1.0)
+      activesupport (>= 5.0.0, < 6.1.0)
+      grpc (~> 1.19)
+      jaeger-client (~> 0.10)
+      opentracing (~> 0.4)
+      redis (> 3.0.0, < 5.0.0)
+    gitlab-license (1.0.0)
+    gitlab-mail_room (0.0.4)
+    gitlab-markup (1.7.1)
+    gitlab-net-dns (0.9.1)
+    gitlab-puma (4.3.3.gitlab.2)
+      nio4r (~> 2.0)
+    gitlab-puma_worker_killer (0.1.1.gitlab.1)
+      get_process_mem (~> 0.2)
+      gitlab-puma (>= 2.7, < 5)
+    gitlab-sidekiq-fetcher (0.5.2)
+      sidekiq (~> 5)
+    gitlab-styles (3.2.0)
+      rubocop (~> 0.74.0)
+      rubocop-gitlab-security (~> 0.1.0)
+      rubocop-performance (~> 1.4.1)
+      rubocop-rails (~> 2.0)
+      rubocop-rspec (~> 1.36)
+    gitlab_chronic_duration (0.10.6.2)
+      numerizer (~> 0.2)
+    gitlab_omniauth-ldap (2.1.1)
+      net-ldap (~> 0.16)
+      omniauth (~> 1.3)
+      pyu-ruby-sasl (>= 0.0.3.3, < 0.1)
+      rubyntlm (~> 0.5)
+    globalid (0.4.2)
+      activesupport (>= 4.2.0)
+    gon (6.2.0)
+      actionpack (>= 3.0)
+      multi_json
+      request_store (>= 1.0)
+    google-api-client (0.23.4)
+      addressable (~> 2.5, >= 2.5.1)
+      googleauth (>= 0.5, < 0.7.0)
+      httpclient (>= 2.8.1, < 3.0)
+      mime-types (~> 3.0)
+      representable (~> 3.0)
+      retriable (>= 2.0, < 4.0)
+    google-protobuf (3.8.0)
+    googleapis-common-protos-types (1.0.4)
+      google-protobuf (~> 3.0)
+    googleauth (0.6.6)
+      faraday (~> 0.12)
+      jwt (>= 1.4, < 3.0)
+      memoist (~> 0.12)
+      multi_json (~> 1.11)
+      os (>= 0.9, < 2.0)
+      signet (~> 0.7)
+    gpgme (2.0.20)
+      mini_portile2 (~> 2.3)
+    grape (1.1.0)
+      activesupport
+      builder
+      mustermann-grape (~> 1.0.0)
+      rack (>= 1.3.0)
+      rack-accept
+      virtus (>= 1.0.0)
+    grape-entity (0.7.1)
+      activesupport (>= 4.0)
+      multi_json (>= 1.3.2)
+    grape-path-helpers (1.2.0)
+      activesupport
+      grape (~> 1.0)
+      rake (~> 12)
+    grape_logging (1.8.3)
+      grape
+      rack
+    graphiql-rails (1.4.10)
+      railties
+      sprockets-rails
+    graphql (1.10.5)
+    graphql-docs (1.6.0)
+      commonmarker (~> 0.16)
+      escape_utils (~> 1.2)
+      extended-markdown-filter (~> 0.4)
+      gemoji (~> 3.0)
+      graphql (~> 1.6)
+      html-pipeline (~> 2.8)
+      sass (~> 3.4)
+    grpc (1.24.0)
+      google-protobuf (~> 3.8)
+      googleapis-common-protos-types (~> 1.0)
+    gssapi (1.2.0)
+      ffi (>= 1.0.1)
+    guard (2.15.1)
+      formatador (>= 0.2.4)
+      listen (>= 2.7, < 4.0)
+      lumberjack (>= 1.0.12, < 2.0)
+      nenv (~> 0.1)
+      notiffany (~> 0.0)
+      pry (>= 0.9.12)
+      shellany (~> 0.0)
+      thor (>= 0.18.1)
+    guard-compat (1.2.1)
+    guard-rspec (4.7.3)
+      guard (~> 2.1)
+      guard-compat (~> 1.1)
+      rspec (>= 2.99.0, < 4.0)
+    haml (5.1.2)
+      temple (>= 0.8.0)
+      tilt
+    haml_lint (0.34.0)
+      haml (>= 4.0, < 5.2)
+      rainbow
+      rubocop (>= 0.50.0)
+      sysexits (~> 1.1)
+    hamlit (2.11.0)
+      temple (>= 0.8.2)
+      thor
+      tilt
+    hangouts-chat (0.0.5)
+    hashdiff (0.3.8)
+    hashie (3.6.0)
+    hashie-forbidden_attributes (0.1.1)
+      hashie (>= 3.0)
+    health_check (2.6.0)
+      rails (>= 4.0)
+    heapy (0.1.4)
+    hipchat (1.5.2)
+      httparty
+      mimemagic
+    html-pipeline (2.12.2)
+      activesupport (>= 2)
+      nokogiri (>= 1.4)
+    html2text (0.2.0)
+      nokogiri (~> 1.6)
+    htmlentities (4.3.4)
+    http (4.2.0)
+      addressable (~> 2.3)
+      http-cookie (~> 1.0)
+      http-form_data (~> 2.0)
+      http-parser (~> 1.2.0)
+    http-cookie (1.0.3)
+      domain_name (~> 0.5)
+    http-form_data (2.1.1)
+    http-parser (1.2.1)
+      ffi-compiler (>= 1.0, < 2.0)
+    httparty (0.16.4)
+      mime-types (~> 3.0)
+      multi_xml (>= 0.5.2)
+    httpclient (2.8.3)
+    i18n (1.8.2)
+      concurrent-ruby (~> 1.0)
+    i18n_data (0.8.0)
+    icalendar (2.4.1)
+    ice_nine (0.11.2)
+    invisible_captcha (0.12.1)
+      rails (>= 3.2.0)
+    ipaddress (0.8.3)
+    jaeger-client (0.10.0)
+      opentracing (~> 0.3)
+      thrift
+    jaro_winkler (1.5.4)
+    jira-ruby (2.0.0)
+      activesupport
+      atlassian-jwt
+      multipart-post
+      oauth (~> 0.5, >= 0.5.0)
+    jmespath (1.4.0)
+    js_regex (3.1.1)
+      character_set (~> 1.1)
+      regexp_parser (~> 1.1)
+      regexp_property_values (~> 0.3)
+    json (2.3.0)
+    json-jwt (1.11.0)
+      activesupport (>= 4.2)
+      aes_key_wrap
+      bindata
+    json-schema (2.8.0)
+      addressable (>= 2.4)
+    jwt (2.1.0)
+    kaminari (1.2.1)
+      activesupport (>= 4.1.0)
+      kaminari-actionview (= 1.2.1)
+      kaminari-activerecord (= 1.2.1)
+      kaminari-core (= 1.2.1)
+    kaminari-actionview (1.2.1)
+      actionview
+      kaminari-core (= 1.2.1)
+    kaminari-activerecord (1.2.1)
+      activerecord
+      kaminari-core (= 1.2.1)
+    kaminari-core (1.2.1)
+    kgio (2.11.3)
+    knapsack (1.17.0)
+      rake
+    kramdown (2.1.0)
+    kramdown-parser-gfm (1.1.0)
+      kramdown (~> 2.0)
+    kubeclient (4.6.0)
+      http (>= 3.0, < 5.0)
+      recursive-open-struct (~> 1.0, >= 1.0.4)
+      rest-client (~> 2.0)
+    launchy (2.4.3)
+      addressable (~> 2.3)
+    letter_opener (1.7.0)
+      launchy (~> 2.2)
+    letter_opener_web (1.3.4)
+      actionmailer (>= 3.2)
+      letter_opener (~> 1.0)
+      railties (>= 3.2)
+    license_finder (5.4.0)
+      bundler
+      rubyzip
+      thor
+      toml (= 0.2.0)
+      with_env (= 1.1.0)
+      xml-simple
+    licensee (8.9.2)
+      rugged (~> 0.24)
+    listen (3.1.5)
+      rb-fsevent (~> 0.9, >= 0.9.4)
+      rb-inotify (~> 0.9, >= 0.9.7)
+      ruby_dep (~> 1.2)
+    locale (2.1.2)
+    lockbox (0.3.3)
+    lograge (0.10.0)
+      actionpack (>= 4)
+      activesupport (>= 4)
+      railties (>= 4)
+      request_store (~> 1.0)
+    loofah (2.5.0)
+      crass (~> 1.0.2)
+      nokogiri (>= 1.5.9)
+    lru_redux (1.1.0)
+    lumberjack (1.0.13)
+    mail (2.7.1)
+      mini_mime (>= 0.1.1)
+    marcel (0.3.3)
+      mimemagic (~> 0.3.2)
+    marginalia (1.8.0)
+      actionpack (>= 2.3)
+      activerecord (>= 2.3)
+    memoist (0.16.0)
+    memoizable (0.4.2)
+      thread_safe (~> 0.3, >= 0.3.1)
+    memory_profiler (0.9.14)
+    method_source (0.9.2)
+    mime-types (3.2.2)
+      mime-types-data (~> 3.2015)
+    mime-types-data (3.2019.0331)
+    mimemagic (0.3.5)
+    mini_histogram (0.1.3)
+    mini_magick (4.9.5)
+    mini_mime (1.0.2)
+    mini_portile2 (2.4.0)
+    minitest (5.11.3)
+    msgpack (1.3.1)
+    multi_json (1.14.1)
+    multi_xml (0.6.0)
+    multipart-post (2.1.1)
+    murmurhash3 (0.1.6)
+    mustermann (1.0.3)
+    mustermann-grape (1.0.0)
+      mustermann (~> 1.0.0)
+    nakayoshi_fork (0.0.4)
+    nap (1.1.0)
+    nenv (0.3.0)
+    net-ldap (0.16.2)
+    net-ntp (2.1.3)
+    net-ssh (6.0.0)
+    netrc (0.11.0)
+    nio4r (2.5.2)
+    no_proxy_fix (0.1.2)
+    nokogiri (1.10.9)
+      mini_portile2 (~> 2.4.0)
+    nokogumbo (1.5.0)
+      nokogiri
+    notiffany (0.1.3)
+      nenv (~> 0.1)
+      shellany (~> 0.0)
+    numerizer (0.2.0)
+    oauth (0.5.4)
+    oauth2 (1.4.1)
+      faraday (>= 0.8, < 0.16.0)
+      jwt (>= 1.0, < 3.0)
+      multi_json (~> 1.3)
+      multi_xml (~> 0.5)
+      rack (>= 1.2, < 3)
+    octokit (4.15.0)
+      faraday (>= 0.9)
+      sawyer (~> 0.8.0, >= 0.5.3)
+    omniauth (1.9.0)
+      hashie (>= 3.4.6, < 3.7.0)
+      rack (>= 1.6.2, < 3)
+    omniauth-auth0 (2.0.0)
+      omniauth-oauth2 (~> 1.4)
+    omniauth-authentiq (0.3.3)
+      jwt (>= 1.5)
+      omniauth-oauth2 (>= 1.5)
+    omniauth-azure-oauth2 (0.0.10)
+      jwt (>= 1.0, < 3.0)
+      omniauth (~> 1.0)
+      omniauth-oauth2 (~> 1.4)
+    omniauth-cas3 (1.1.4)
+      addressable (~> 2.3)
+      nokogiri (~> 1.7, >= 1.7.1)
+      omniauth (~> 1.2)
+    omniauth-facebook (4.0.0)
+      omniauth-oauth2 (~> 1.2)
+    omniauth-github (1.4.0)
+      omniauth (~> 1.5)
+      omniauth-oauth2 (>= 1.4.0, < 2.0)
+    omniauth-gitlab (1.0.3)
+      omniauth (~> 1.0)
+      omniauth-oauth2 (~> 1.0)
+    omniauth-google-oauth2 (0.6.0)
+      jwt (>= 2.0)
+      omniauth (>= 1.1.1)
+      omniauth-oauth2 (>= 1.5)
+    omniauth-kerberos (0.3.0)
+      omniauth-multipassword
+      timfel-krb5-auth (~> 0.8)
+    omniauth-multipassword (0.4.2)
+      omniauth (~> 1.0)
+    omniauth-oauth (1.1.0)
+      oauth
+      omniauth (~> 1.0)
+    omniauth-oauth2 (1.6.0)
+      oauth2 (~> 1.1)
+      omniauth (~> 1.9)
+    omniauth-oauth2-generic (0.2.2)
+      omniauth-oauth2 (~> 1.0)
+    omniauth-salesforce (1.0.5)
+      omniauth (~> 1.0)
+      omniauth-oauth2 (~> 1.0)
+    omniauth-saml (1.10.0)
+      omniauth (~> 1.3, >= 1.3.2)
+      ruby-saml (~> 1.7)
+    omniauth-shibboleth (1.3.0)
+      omniauth (>= 1.0.0)
+    omniauth-twitter (1.4.0)
+      omniauth-oauth (~> 1.1)
+      rack
+    omniauth-ultraauth (0.0.2)
+      omniauth_openid_connect (~> 0.3.0)
+    omniauth_crowd (2.2.3)
+      activesupport
+      nokogiri (>= 1.4.4)
+      omniauth (~> 1.0)
+    omniauth_openid_connect (0.3.3)
+      addressable (~> 2.5)
+      omniauth (~> 1.9)
+      openid_connect (~> 1.1)
+    open4 (1.3.4)
+    openid_connect (1.1.8)
+      activemodel
+      attr_required (>= 1.0.0)
+      json-jwt (>= 1.5.0)
+      rack-oauth2 (>= 1.6.1)
+      swd (>= 1.0.0)
+      tzinfo
+      validate_email
+      validate_url
+      webfinger (>= 1.0.1)
+    opentracing (0.5.0)
+    optimist (3.0.0)
+    org-ruby (0.9.12)
+      rubypants (~> 0.2)
+    orm_adapter (0.5.0)
+    os (1.0.0)
+    parallel (1.19.1)
+    parser (2.7.0.4)
+      ast (~> 2.4.0)
+    parslet (1.8.2)
+    peek (1.1.0)
+      railties (>= 4.0.0)
+    pg (1.2.2)
+    png_quantizator (0.2.1)
+    po_to_json (1.0.1)
+      json (>= 1.6.0)
+    premailer (1.11.1)
+      addressable
+      css_parser (>= 1.6.0)
+      htmlentities (>= 4.0.0)
+    premailer-rails (1.10.3)
+      actionmailer (>= 3)
+      premailer (~> 1.7, >= 1.7.9)
+    proc_to_ast (0.1.0)
+      coderay
+      parser
+      unparser
+    procto (0.0.3)
+    prometheus-client-mmap (0.10.0)
+    pry (0.11.3)
+      coderay (~> 1.1.0)
+      method_source (~> 0.9.0)
+    pry-byebug (3.5.1)
+      byebug (~> 9.1)
+      pry (~> 0.10)
+    pry-rails (0.3.9)
+      pry (>= 0.10.4)
+    public_suffix (4.0.3)
+    pyu-ruby-sasl (0.0.3.3)
+    raabro (1.1.6)
+    rack (2.0.9)
+    rack-accept (0.4.5)
+      rack (>= 0.4)
+    rack-attack (6.3.0)
+      rack (>= 1.0, < 3)
+    rack-cors (1.0.6)
+      rack (>= 1.6.0)
+    rack-oauth2 (1.9.3)
+      activesupport
+      attr_required
+      httpclient
+      json-jwt (>= 1.9.0)
+      rack
+    rack-protection (2.0.5)
+      rack
+    rack-proxy (0.6.0)
+      rack
+    rack-test (1.1.0)
+      rack (>= 1.0, < 3)
+    rack-timeout (0.5.1)
+    rails (6.0.3)
+      actioncable (= 6.0.3)
+      actionmailbox (= 6.0.3)
+      actionmailer (= 6.0.3)
+      actionpack (= 6.0.3)
+      actiontext (= 6.0.3)
+      actionview (= 6.0.3)
+      activejob (= 6.0.3)
+      activemodel (= 6.0.3)
+      activerecord (= 6.0.3)
+      activestorage (= 6.0.3)
+      activesupport (= 6.0.3)
+      bundler (>= 1.3.0)
+      railties (= 6.0.3)
+      sprockets-rails (>= 2.0.0)
+    rails-controller-testing (1.0.4)
+      actionpack (>= 5.0.1.x)
+      actionview (>= 5.0.1.x)
+      activesupport (>= 5.0.1.x)
+    rails-dom-testing (2.0.3)
+      activesupport (>= 4.2.0)
+      nokogiri (>= 1.6)
+    rails-html-sanitizer (1.3.0)
+      loofah (~> 2.3)
+    rails-i18n (6.0.0)
+      i18n (>= 0.7, < 2)
+      railties (>= 6.0.0, < 7)
+    railties (6.0.3)
+      actionpack (= 6.0.3)
+      activesupport (= 6.0.3)
+      method_source
+      rake (>= 0.8.7)
+      thor (>= 0.20.3, < 2.0)
+    rainbow (3.0.0)
+    raindrops (0.19.1)
+    rake (12.3.3)
+    rb-fsevent (0.10.2)
+    rb-inotify (0.9.10)
+      ffi (>= 0.5.0, < 2)
+    rblineprof (0.3.6)
+      debugger-ruby_core_source (~> 1.3)
+    rbtrace (0.4.11)
+      ffi (>= 1.0.6)
+      msgpack (>= 0.4.3)
+      optimist (>= 3.0.0)
+    rdoc (6.1.2)
+    re2 (1.2.0)
+    recaptcha (4.13.1)
+      json
+    recursive-open-struct (1.1.1)
+    redis (4.1.3)
+    redis-actionpack (5.2.0)
+      actionpack (>= 5, < 7)
+      redis-rack (>= 2.1.0, < 3)
+      redis-store (>= 1.1.0, < 2)
+    redis-activesupport (5.2.0)
+      activesupport (>= 3, < 7)
+      redis-store (>= 1.3, < 2)
+    redis-namespace (1.6.0)
+      redis (>= 3.0.4)
+    redis-rack (2.1.2)
+      rack (>= 2.0.8, < 3)
+      redis-store (>= 1.2, < 2)
+    redis-rails (5.0.2)
+      redis-actionpack (>= 5.0, < 6)
+      redis-activesupport (>= 5.0, < 6)
+      redis-store (>= 1.2, < 2)
+    redis-store (1.8.1)
+      redis (>= 4, < 5)
+    regexp_parser (1.5.1)
+    regexp_property_values (0.3.4)
+    representable (3.0.4)
+      declarative (< 0.1.0)
+      declarative-option (< 0.2.0)
+      uber (< 0.2.0)
+    request_store (1.5.0)
+      rack (>= 1.4)
+    responders (3.0.0)
+      actionpack (>= 5.0)
+      railties (>= 5.0)
+    rest-client (2.0.2)
+      http-cookie (>= 1.0.2, < 2.0)
+      mime-types (>= 1.16, < 4.0)
+      netrc (~> 0.8)
+    retriable (3.1.2)
+    rinku (2.0.0)
+    rotp (2.1.2)
+    rouge (3.19.0)
+    rqrcode (0.7.0)
+      chunky_png
+    rqrcode-rails3 (0.1.7)
+      rqrcode (>= 0.4.2)
+    rspec (3.9.0)
+      rspec-core (~> 3.9.0)
+      rspec-expectations (~> 3.9.0)
+      rspec-mocks (~> 3.9.0)
+    rspec-core (3.9.1)
+      rspec-support (~> 3.9.1)
+    rspec-expectations (3.9.1)
+      diff-lcs (>= 1.2.0, < 2.0)
+      rspec-support (~> 3.9.0)
+    rspec-mocks (3.9.1)
+      diff-lcs (>= 1.2.0, < 2.0)
+      rspec-support (~> 3.9.0)
+    rspec-parameterized (0.4.2)
+      binding_ninja (>= 0.2.3)
+      parser
+      proc_to_ast
+      rspec (>= 2.13, < 4)
+      unparser
+    rspec-rails (4.0.0)
+      actionpack (>= 4.2)
+      activesupport (>= 4.2)
+      railties (>= 4.2)
+      rspec-core (~> 3.9)
+      rspec-expectations (~> 3.9)
+      rspec-mocks (~> 3.9)
+      rspec-support (~> 3.9)
+    rspec-retry (0.6.1)
+      rspec-core (> 3.3)
+    rspec-support (3.9.2)
+    rspec_junit_formatter (0.4.1)
+      rspec-core (>= 2, < 4, != 2.12.0)
+    rspec_profiling (0.0.5)
+      activerecord
+      pg
+      rails
+      sqlite3
+    rubocop (0.74.0)
+      jaro_winkler (~> 1.5.1)
+      parallel (~> 1.10)
+      parser (>= 2.6)
+      rainbow (>= 2.2.2, < 4.0)
+      ruby-progressbar (~> 1.7)
+      unicode-display_width (>= 1.4.0, < 1.7)
+    rubocop-gitlab-security (0.1.1)
+      rubocop (>= 0.51)
+    rubocop-performance (1.4.1)
+      rubocop (>= 0.71.0)
+    rubocop-rails (2.4.0)
+      rack (>= 1.1)
+      rubocop (>= 0.72.0)
+    rubocop-rspec (1.37.0)
+      rubocop (>= 0.68.1)
+    ruby-enum (0.7.2)
+      i18n
+    ruby-fogbugz (0.2.1)
+      crack (~> 0.4)
+    ruby-prof (1.3.1)
+    ruby-progressbar (1.10.1)
+    ruby-saml (1.7.2)
+      nokogiri (>= 1.5.10)
+    ruby-statistics (2.1.2)
+    ruby_dep (1.5.0)
+    ruby_parser (3.13.1)
+      sexp_processor (~> 4.9)
+    rubyntlm (0.6.2)
+    rubypants (0.2.0)
+    rubyzip (2.0.0)
+    rugged (0.28.4.1)
+    safe_yaml (1.0.4)
+    sanitize (4.6.6)
+      crass (~> 1.0.2)
+      nokogiri (>= 1.4.4)
+      nokogumbo (~> 1.4)
+    sass (3.5.5)
+      sass-listen (~> 4.0.0)
+    sass-listen (4.0.0)
+      rb-fsevent (~> 0.9, >= 0.9.4)
+      rb-inotify (~> 0.9, >= 0.9.7)
+    sassc (2.0.1)
+      ffi (~> 1.9)
+      rake
+    sassc-rails (2.1.0)
+      railties (>= 4.0.0)
+      sassc (>= 2.0)
+      sprockets (> 3.0)
+      sprockets-rails
+      tilt
+    sawyer (0.8.2)
+      addressable (>= 2.3.5)
+      faraday (> 0.8, < 2.0)
+    scss_lint (0.56.0)
+      rake (>= 0.9, < 13)
+      sass (~> 3.5.3)
+    seed-fu (2.3.7)
+      activerecord (>= 3.1)
+      activesupport (>= 3.1)
+    selenium-webdriver (3.142.6)
+      childprocess (>= 0.5, < 4.0)
+      rubyzip (>= 1.2.2)
+    sentry-raven (2.9.0)
+      faraday (>= 0.7.6, < 1.0)
+    settingslogic (2.0.9)
+    sexp_processor (4.12.0)
+    shellany (0.0.1)
+    shoulda-matchers (4.0.1)
+      activesupport (>= 4.2.0)
+    sidekiq (5.2.7)
+      connection_pool (~> 2.2, >= 2.2.2)
+      rack (>= 1.5.0)
+      rack-protection (>= 1.5.0)
+      redis (>= 3.3.5, < 5)
+    sidekiq-cron (1.0.4)
+      fugit (~> 1.1)
+      sidekiq (>= 4.2.1)
+    signet (0.11.0)
+      addressable (~> 2.3)
+      faraday (~> 0.9)
+      jwt (>= 1.5, < 3.0)
+      multi_json (~> 1.10)
+    simple_po_parser (1.1.2)
+    simplecov (0.18.5)
+      docile (~> 1.1)
+      simplecov-html (~> 0.11)
+    simplecov-html (0.12.2)
+    sixarm_ruby_unaccent (1.2.0)
+    slack-messenger (2.3.3)
+    snowplow-tracker (0.6.1)
+      contracts (~> 0.7, <= 0.11)
+    spring (2.0.2)
+      activesupport (>= 4.2)
+    spring-commands-rspec (1.0.4)
+      spring (>= 0.9.1)
+    sprockets (3.7.2)
+      concurrent-ruby (~> 1.0)
+      rack (> 1, < 3)
+    sprockets-rails (3.2.1)
+      actionpack (>= 4.0)
+      activesupport (>= 4.0)
+      sprockets (>= 3.0.0)
+    sqlite3 (1.3.13)
+    sshkey (2.0.0)
+    stackprof (0.2.15)
+    state_machines (0.5.0)
+    state_machines-activemodel (0.7.1)
+      activemodel (>= 4.1)
+      state_machines (>= 0.5.0)
+    state_machines-activerecord (0.6.0)
+      activerecord (>= 4.1)
+      state_machines-activemodel (>= 0.5.0)
+    swd (1.1.2)
+      activesupport (>= 3)
+      attr_required (>= 0.0.5)
+      httpclient (>= 2.4)
+    sys-filesystem (1.1.6)
+      ffi
+    sysexits (1.2.0)
+    temple (0.8.2)
+    terminal-table (1.8.0)
+      unicode-display_width (~> 1.1, >= 1.1.1)
+    test-prof (0.10.0)
+    text (1.3.1)
+    thin (1.7.2)
+      daemons (~> 1.0, >= 1.0.9)
+      eventmachine (~> 1.0, >= 1.0.4)
+      rack (>= 1, < 3)
+    thor (0.20.3)
+    thread_safe (0.3.6)
+    thrift (0.11.0.0)
+    tilt (2.0.10)
+    timecop (0.9.1)
+    timfel-krb5-auth (0.8.3)
+    toml (0.2.0)
+      parslet (~> 1.8.0)
+    toml-rb (1.0.0)
+      citrus (~> 3.0, > 3.0)
+    truncato (0.7.11)
+      htmlentities (~> 4.3.1)
+      nokogiri (>= 1.7.0, <= 2.0)
+    tzinfo (1.2.7)
+      thread_safe (~> 0.1)
+    u2f (0.2.1)
+    uber (0.1.0)
+    uglifier (2.7.2)
+      execjs (>= 0.3.0)
+      json (>= 1.8.0)
+    unf (0.1.4)
+      unf_ext
+    unf_ext (0.0.7.5)
+    unicode-display_width (1.6.0)
+    unicode_plot (0.0.4)
+      enumerable-statistics (>= 2.0.1)
+    unicode_utils (1.4.0)
+    unicorn (5.5.5)
+      kgio (~> 2.6)
+      raindrops (~> 0.7)
+    unicorn-worker-killer (0.4.4)
+      get_process_mem (~> 0)
+      unicorn (>= 4, < 6)
+    uniform_notifier (1.13.0)
+    unleash (0.1.5)
+      murmurhash3 (~> 0.1.6)
+    unparser (0.4.7)
+      abstract_type (~> 0.0.7)
+      adamantium (~> 0.2.0)
+      concord (~> 0.1.5)
+      diff-lcs (~> 1.3)
+      equalizer (~> 0.0.9)
+      parser (>= 2.6.5)
+      procto (~> 0.0.2)
+    valid_email (0.1.3)
+      activemodel
+      mail (>= 2.6.1)
+    validate_email (0.1.6)
+      activemodel (>= 3.0)
+      mail (>= 2.2.5)
+    validate_url (1.0.8)
+      activemodel (>= 3.0.0)
+      public_suffix
+    validates_hostname (1.0.6)
+      activerecord (>= 3.0)
+      activesupport (>= 3.0)
+    version_sorter (2.2.4)
+    virtus (1.0.5)
+      axiom-types (~> 0.1)
+      coercible (~> 1.0)
+      descendants_tracker (~> 0.0, >= 0.0.3)
+      equalizer (~> 0.0, >= 0.0.9)
+    vmstat (2.3.0)
+    warden (1.2.8)
+      rack (>= 2.0.6)
+    webfinger (1.1.0)
+      activesupport
+      httpclient (>= 2.4)
+    webmock (3.5.1)
+      addressable (>= 2.3.6)
+      crack (>= 0.3.2)
+      hashdiff
+    webpack-rails (0.9.11)
+      railties (>= 3.2.0)
+    websocket-driver (0.7.1)
+      websocket-extensions (>= 0.1.0)
+    websocket-extensions (0.1.4)
+    wikicloth (0.8.1)
+      builder
+      expression_parser
+      rinku
+    with_env (1.1.0)
+    xml-simple (1.1.5)
+    xpath (3.2.0)
+      nokogiri (~> 1.8)
+    zeitwerk (2.3.0)
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  RedCloth (~> 4.3.2)
+  ace-rails-ap (~> 4.1.0)
+  acme-client (~> 2.0.5)
+  activerecord-explain-analyze (~> 0.1)
+  acts-as-taggable-on (~> 6.0)
+  addressable (~> 2.7)
+  akismet (~> 3.0)
+  apollo_upload_server (~> 2.0.0.beta3)
+  asana (~> 0.9)
+  asciidoctor (~> 2.0.10)
+  asciidoctor-include-ext (~> 0.3.1)
+  asciidoctor-plantuml (~> 0.0.12)
+  atlassian-jwt (~> 0.2.0)
+  attr_encrypted (~> 3.1.0)
+  awesome_print
+  aws-sdk
+  babosa (~> 1.0.2)
+  base32 (~> 0.3.0)
+  batch-loader (~> 1.4.0)
+  bcrypt_pbkdf (~> 1.0)
+  benchmark-ips (~> 2.3.0)
+  benchmark-memory (~> 0.1)
+  better_errors (~> 2.5.0)
+  binding_of_caller (~> 0.8.0)
+  bootsnap (~> 1.4.6)
+  bootstrap_form (~> 4.2.0)
+  brakeman (~> 4.2)
+  browser (~> 2.5)
+  bullet (~> 6.0.2)
+  bundler-audit (~> 0.6.1)
+  capybara (~> 3.22.0)
+  capybara-screenshot (~> 1.0.22)
+  carrierwave (~> 1.3)
+  charlock_holmes (~> 0.7.5)
+  commonmarker (~> 0.20)
+  concurrent-ruby (~> 1.1)
+  connection_pool (~> 2.0)
+  countries (~> 3.0)
+  creole (~> 0.5.0)
+  danger (~> 6.0)
+  database_cleaner (~> 1.7.0)
+  deckar01-task_list (= 2.3.1)
+  default_value_for (~> 3.3.0)
+  derailed_benchmarks
+  device_detector
+  devise (~> 4.6)
+  devise-two-factor (~> 3.1.0)
+  diff_match_patch (~> 0.1.0)
+  diffy (~> 3.3)
+  discordrb-webhooks-blackst0ne (~> 3.3)
+  doorkeeper (~> 5.0.3)
+  doorkeeper-openid_connect (~> 1.6.3)
+  ed25519 (~> 1.2)
+  elasticsearch-api (~> 6.8)
+  elasticsearch-model (~> 6.1)
+  elasticsearch-rails (~> 6.1)
+  email_reply_trimmer (~> 0.1)
+  email_spec (~> 2.2.0)
+  erubi (~> 1.9.0)
+  escape_utils (~> 1.1)
+  factory_bot_rails (~> 5.1.0)
+  faraday (~> 0.12)
+  faraday_middleware-aws-signers-v4
+  fast_blank
+  ffaker (~> 2.10)
+  flipper (~> 0.17.1)
+  flipper-active_record (~> 0.17.1)
+  flipper-active_support_cache_store (~> 0.17.1)
+  flowdock (~> 0.7)
+  fog-aliyun (~> 0.3)
+  fog-aws (~> 3.5)
+  fog-core (= 2.1.0)
+  fog-google (~> 1.9)
+  fog-local (~> 0.6)
+  fog-openstack (~> 1.0)
+  fog-rackspace (~> 0.1.1)
+  font-awesome-rails (~> 4.7)
+  fugit (~> 1.2.1)
+  fuubar (~> 2.2.0)
+  gemojione (~> 3.3)
+  gettext (~> 3.2.2)
+  gettext_i18n_rails (~> 1.8.0)
+  gettext_i18n_rails_js (~> 1.3)
+  gitaly (~> 13.0.0.pre.rc1)
+  github-markup (~> 1.7.0)
+  gitlab-chronic (~> 0.10.5)
+  gitlab-labkit (= 0.12.0)
+  gitlab-license (~> 1.0)
+  gitlab-mail_room (~> 0.0.4)
+  gitlab-markup (~> 1.7.1)
+  gitlab-net-dns (~> 0.9.1)
+  gitlab-puma (~> 4.3.3.gitlab.2)
+  gitlab-puma_worker_killer (~> 0.1.1.gitlab.1)
+  gitlab-sidekiq-fetcher (= 0.5.2)
+  gitlab-styles (~> 3.2.0)
+  gitlab_chronic_duration (~> 0.10.6.2)
+  gitlab_omniauth-ldap (~> 2.1.1)
+  gon (~> 6.2)
+  google-api-client (~> 0.23)
+  google-protobuf (~> 3.8.0)
+  gpgme (~> 2.0.19)
+  grape (~> 1.1.0)
+  grape-entity (~> 0.7.1)
+  grape-path-helpers (~> 1.2)
+  grape_logging (~> 1.7)
+  graphiql-rails (~> 1.4.10)
+  graphql (~> 1.10.5)
+  graphql-docs (~> 1.6.0)
+  grpc (~> 1.24.0)
+  gssapi
+  guard-rspec
+  haml_lint (~> 0.34.0)
+  hamlit (~> 2.11.0)
+  hangouts-chat (~> 0.0.5)
+  hashie-forbidden_attributes
+  health_check (~> 2.6.0)
+  hipchat (~> 1.5.0)
+  html-pipeline (~> 2.12)
+  html2text
+  httparty (~> 0.16.4)
+  icalendar
+  invisible_captcha (~> 0.12.1)
+  jira-ruby (~> 2.0.0)
+  js_regex (~> 3.1)
+  json (~> 2.3.0)
+  json-schema (~> 2.8.0)
+  jwt (~> 2.1.0)
+  kaminari (~> 1.0)
+  knapsack (~> 1.17)
+  kubeclient (~> 4.6.0)
+  letter_opener_web (~> 1.3.4)
+  license_finder (~> 5.4)
+  licensee (~> 8.9)
+  lockbox (~> 0.3.3)
+  lograge (~> 0.5)
+  loofah (~> 2.2)
+  lru_redux
+  mail (= 2.7.1)
+  marginalia (~> 1.8.0)
+  memory_profiler (~> 0.9)
+  method_source (~> 0.8)
+  mimemagic (~> 0.3.2)
+  mini_magick
+  minitest (~> 5.11.0)
+  nakayoshi_fork (~> 0.0.4)
+  net-ldap
+  net-ntp
+  net-ssh (~> 6.0)
+  nokogiri (~> 1.10.9)
+  oauth2 (~> 1.4)
+  octokit (~> 4.15)
+  omniauth (~> 1.8)
+  omniauth-auth0 (~> 2.0.0)
+  omniauth-authentiq (~> 0.3.3)
+  omniauth-azure-oauth2 (~> 0.0.9)
+  omniauth-cas3 (~> 1.1.4)
+  omniauth-facebook (~> 4.0.0)
+  omniauth-github (~> 1.4)
+  omniauth-gitlab (~> 1.0.2)
+  omniauth-google-oauth2 (~> 0.6.0)
+  omniauth-kerberos (~> 0.3.0)
+  omniauth-oauth2-generic (~> 0.2.2)
+  omniauth-salesforce (~> 1.0.5)
+  omniauth-saml (~> 1.10)
+  omniauth-shibboleth (~> 1.3.0)
+  omniauth-twitter (~> 1.4)
+  omniauth-ultraauth (~> 0.0.2)
+  omniauth_crowd (~> 2.2.0)
+  omniauth_openid_connect (~> 0.3.3)
+  org-ruby (~> 0.9.12)
+  parallel (~> 1.19)
+  peek (~> 1.1)
+  pg (~> 1.1)
+  png_quantizator (~> 0.2.1)
+  premailer-rails (~> 1.10.3)
+  prometheus-client-mmap (~> 0.10.0)
+  pry-byebug (~> 3.5.1)
+  pry-rails (~> 0.3.9)
+  rack (~> 2.0.9)
+  rack-attack (~> 6.3.0)
+  rack-cors (~> 1.0.6)
+  rack-oauth2 (~> 1.9.3)
+  rack-proxy (~> 0.6.0)
+  rack-timeout
+  rails (~> 6.0.3)
+  rails-controller-testing
+  rails-i18n (~> 6.0)
+  rainbow (~> 3.0)
+  raindrops (~> 0.18)
+  rblineprof (~> 0.3.6)
+  rbtrace (~> 0.4)
+  rdoc (~> 6.1.2)
+  re2 (~> 1.2.0)
+  recaptcha (~> 4.11)
+  redis (~> 4.0)
+  redis-namespace (~> 1.6.0)
+  redis-rails (~> 5.0.2)
+  request_store (~> 1.5)
+  responders (~> 3.0)
+  retriable (~> 3.1.2)
+  rouge (~> 3.19.0)
+  rqrcode-rails3 (~> 0.1.7)
+  rspec-parameterized
+  rspec-rails (~> 4.0.0)
+  rspec-retry (~> 0.6.1)
+  rspec_junit_formatter
+  rspec_profiling (~> 0.0.5)
+  rubocop (~> 0.74.0)
+  rubocop-performance (~> 1.4.1)
+  rubocop-rspec (~> 1.37.0)
+  ruby-fogbugz (~> 0.2.1)
+  ruby-prof (~> 1.3.0)
+  ruby-progressbar
+  ruby_parser (~> 3.8)
+  rubyzip (~> 2.0.0)
+  rugged (~> 0.28)
+  sanitize (~> 4.6)
+  sassc-rails (~> 2.1.0)
+  scss_lint (~> 0.56.0)
+  seed-fu (~> 2.3.7)
+  selenium-webdriver (~> 3.142)
+  sentry-raven (~> 2.9)
+  settingslogic (~> 2.0.9)
+  shoulda-matchers (~> 4.0.1)
+  sidekiq (~> 5.2.7)
+  sidekiq-cron (~> 1.0)
+  simple_po_parser (~> 1.1.2)
+  simplecov (~> 0.18.5)
+  slack-messenger (~> 2.3.3)
+  snowplow-tracker (~> 0.6.1)
+  spring (~> 2.0.0)
+  spring-commands-rspec (~> 1.0.4)
+  sprockets (~> 3.7.0)
+  sshkey (~> 2.0)
+  stackprof (~> 0.2.15)
+  state_machines-activerecord (~> 0.6.0)
+  sys-filesystem (~> 1.1.6)
+  test-prof (~> 0.10.0)
+  thin (~> 1.7.0)
+  timecop (~> 0.9.1)
+  toml-rb (~> 1.0.0)
+  truncato (~> 0.7.11)
+  u2f (~> 0.2.1)
+  uglifier (~> 2.7.2)
+  unf (~> 0.1.4)
+  unicorn (~> 5.5)
+  unicorn-worker-killer (~> 0.4.4)
+  unleash (~> 0.1.5)
+  valid_email (~> 0.1)
+  validates_hostname (~> 1.0.6)
+  version_sorter (~> 2.2.4)
+  vmstat (~> 2.3.0)
+  webmock (~> 3.5.1)
+  webpack-rails (~> 0.9.10)
+  wikicloth (= 0.8.1)
+
+BUNDLED WITH
+   2.1.4
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix b/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
new file mode 100644
index 000000000000..7156347be05e
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
@@ -0,0 +1,5158 @@
+{
+  abstract_type = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09330cmhrc2wmfhdj9zzg82sv6cdhm3qgdkva5ni5xfjril2pf14";
+      type = "gem";
+    };
+    version = "0.0.7";
+  };
+  ace-rails-ap = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "14wj9gsiy7rm0lvs27ffsrh92wndjksj6rlfj3n7jhv1v77w9v2h";
+      type = "gem";
+    };
+    version = "4.1.2";
+  };
+  acme-client = {
+    dependencies = ["faraday"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1k9pddds2kfw0br2c153csly4248w9rppkvslx46gncadp9gdb4n";
+      type = "gem";
+    };
+    version = "2.0.5";
+  };
+  actioncable = {
+    dependencies = ["actionpack" "nio4r" "websocket-driver"];
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lvbyv15j3g3xhywr8jdgv5rjn26mz7430886njjfrd12x812szy";
+      type = "gem";
+    };
+    version = "6.0.3";
+  };
+  actionmailbox = {
+    dependencies = ["actionpack" "activejob" "activerecord" "activestorage" "activesupport" "mail"];
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nwvx83lha87052jywaiqq284nabp3h5lfq7vrb01myh6cr3ggaq";
+      type = "gem";
+    };
+    version = "6.0.3";
+  };
+  actionmailer = {
+    dependencies = ["actionpack" "actionview" "activejob" "mail" "rails-dom-testing"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "16d40j1hcak5p9185dbb015difw12m5f3wjfbh4mw9w8agqsc8mr";
+      type = "gem";
+    };
+    version = "6.0.3";
+  };
+  actionpack = {
+    dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1v885hs35r8217py08z5k1wvgfzfml64g9wf5v3djgh8mhlf5nfn";
+      type = "gem";
+    };
+    version = "6.0.3";
+  };
+  actiontext = {
+    dependencies = ["actionpack" "activerecord" "activestorage" "activesupport" "nokogiri"];
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00w8a5vxs1rlbn0innhrwhjjavmgx0scnkz8h7k83df9l1s7f70j";
+      type = "gem";
+    };
+    version = "6.0.3";
+  };
+  actionview = {
+    dependencies = ["activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0s6fr50l714rvzr9vavg1ckgx5xjj5zz7dca42xxjp4jkr7jva7q";
+      type = "gem";
+    };
+    version = "6.0.3";
+  };
+  activejob = {
+    dependencies = ["activesupport" "globalid"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1qr5p1sijan8k2m39w602s1mn3bwwsl7jm14drsgdhvdx5ilwg7b";
+      type = "gem";
+    };
+    version = "6.0.3";
+  };
+  activemodel = {
+    dependencies = ["activesupport"];
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0pi9waxcvb8gxwp4i4wmxszyqhr28gn9jzbq1ivy84g1q658lmqz";
+      type = "gem";
+    };
+    version = "6.0.3";
+  };
+  activerecord = {
+    dependencies = ["activemodel" "activesupport"];
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1wkm8741i00l5cq88wl9nr131wh955x4cjg2q2d60m3qhpqbxirv";
+      type = "gem";
+    };
+    version = "6.0.3";
+  };
+  activerecord-explain-analyze = {
+    dependencies = ["activerecord" "pg"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yvz452ww0vn3n6197gx6zklwa591gc7f1m8accvjd9zw8gv3ssx";
+      type = "gem";
+    };
+    version = "0.1.0";
+  };
+  activestorage = {
+    dependencies = ["actionpack" "activejob" "activerecord" "marcel"];
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1yy832p0q7gxp1vbncb677y35y112d2f6mvf131n0m2w35ig9m4f";
+      type = "gem";
+    };
+    version = "6.0.3";
+  };
+  activesupport = {
+    dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo" "zeitwerk"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0shh34xx9ygxb57s8mag8l22klvjfnk1c4jbjvchk16r6z0ps326";
+      type = "gem";
+    };
+    version = "6.0.3";
+  };
+  acts-as-taggable-on = {
+    dependencies = ["activerecord"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nvhd986xa6llyjnhikq4h1nrcf5b9r9s11if25qsj8358inrpga";
+      type = "gem";
+    };
+    version = "6.5.0";
+  };
+  adamantium = {
+    dependencies = ["ice_nine" "memoizable"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0165r2ikgfwv2rm8dzyijkp74fvg0ni72hpdx8ay2v7cj08dqyak";
+      type = "gem";
+    };
+    version = "0.2.0";
+  };
+  addressable = {
+    dependencies = ["public_suffix"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fvchp2rhp2rmigx7qglf69xvjqvzq7x0g49naliw29r2bz656sy";
+      type = "gem";
+    };
+    version = "2.7.0";
+  };
+  aes_key_wrap = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0li86k0g812jkzrppb2fvqngvzp09nygywjpn81nx90s01wxqw07";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
+  akismet = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0c5jhqfgvpz84d8jai51hin018ldpfd0civbk7mfwmrj7n71p6bl";
+      type = "gem";
+    };
+    version = "3.0.0";
+  };
+  apollo_upload_server = {
+    dependencies = ["graphql" "rails"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0riijpyicbkqsr46w4mfhh3pq2yrmakkz8mmgbrfjhzbyzac25na";
+      type = "gem";
+    };
+    version = "2.0.0.beta.3";
+  };
+  asana = {
+    dependencies = ["faraday" "faraday_middleware" "faraday_middleware-multi_json" "oauth2"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "19yr6ibz481jizvx0cjfvql142v8izi474c4vmwy9qzksyq2xhdj";
+      type = "gem";
+    };
+    version = "0.9.3";
+  };
+  asciidoctor = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1b2ajs3sabl0s27r7lhwkacw0yn0zfk4jpmidg9l8lzp2qlgjgbz";
+      type = "gem";
+    };
+    version = "2.0.10";
+  };
+  asciidoctor-include-ext = {
+    dependencies = ["asciidoctor"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1alaqfh31hd98yhqq8fsc50zzqw04p3d83pc35gdx3x9p3j1ds7d";
+      type = "gem";
+    };
+    version = "0.3.1";
+  };
+  asciidoctor-plantuml = {
+    dependencies = ["asciidoctor"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "02knhmyd3h1yryn66xjfciz7jjsq676kl7ama0r0cf92vyyvm12x";
+      type = "gem";
+    };
+    version = "0.0.12";
+  };
+  ast = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "184ssy3w93nkajlz2c70ifm79jp3j737294kbc5fjw69v1w0n9x7";
+      type = "gem";
+    };
+    version = "2.4.0";
+  };
+  atlassian-jwt = {
+    dependencies = ["jwt"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ckfiiwv7dnifra7zhbggj96g0x0kzkv0x9n1is7lb86svlm7rjj";
+      type = "gem";
+    };
+    version = "0.2.0";
+  };
+  attr_encrypted = {
+    dependencies = ["encryptor"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ncv2az1zlj33bsllr6q1qdvbw42gv91lxq0ryclbv8l8xh841jg";
+      type = "gem";
+    };
+    version = "3.1.0";
+  };
+  attr_required = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1g22axmi2rhhy7w8c3x6gppsawxqavbrnxpnmphh22fk7cwi0kh2";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
+  awesome_print = {
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "14arh1ixfsd6j5md0agyzvksm5svfkvchb90fp32nn7y3avcmc2h";
+      type = "gem";
+    };
+    version = "1.8.0";
+  };
+  aws-eventstream = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "100g77a5ixg4p5zwq77f28n2pdkk0y481f7v83qrlmnj22318qq6";
+      type = "gem";
+    };
+    version = "1.0.3";
+  };
+  aws-sdk = {
+    dependencies = ["aws-sdk-resources"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1yvl9bxzaxgcyzix2yw46cgll9nl0xfg5qx1j6y3xc1i78rk7vy0";
+      type = "gem";
+    };
+    version = "2.11.374";
+  };
+  aws-sdk-core = {
+    dependencies = ["aws-sigv4" "jmespath"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1d7nw1jihv7rglcmkd3hhidjflbzq5ik63n43q27pmx8ki108rd9";
+      type = "gem";
+    };
+    version = "2.11.374";
+  };
+  aws-sdk-resources = {
+    dependencies = ["aws-sdk-core"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qx2a67vsw8rz1y0m04f97p1q4zx7miy06a5ck78hm77nvsigjj4";
+      type = "gem";
+    };
+    version = "2.11.374";
+  };
+  aws-sigv4 = {
+    dependencies = ["aws-eventstream"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1dfc8i5cxjwlvi4b665lbpbwvks8a6wfy3vfmwr3pjdmxwdmc2cs";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  axiom-types = {
+    dependencies = ["descendants_tracker" "ice_nine" "thread_safe"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10q3k04pll041mkgy0m5fn2b1lazm6ly1drdbcczl5p57lzi3zy1";
+      type = "gem";
+    };
+    version = "0.1.1";
+  };
+  babosa = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05rgxg4pz4bc4xk34w5grv0yp1j94wf571w84lf3xgqcbs42ip2f";
+      type = "gem";
+    };
+    version = "1.0.2";
+  };
+  base32 = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0b7y8sy6j9v1lvfzd4va88k5vg9yh0xcjzzn3llcw7yxqlcrnbjk";
+      type = "gem";
+    };
+    version = "0.3.2";
+  };
+  batch-loader = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09jaxxddqpgq8ynwd2gpjq5rkhw00zdjnqisk9qbpjgxzk6f8gwi";
+      type = "gem";
+    };
+    version = "1.4.0";
+  };
+  bcrypt = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ysblqxkclmnhrd0kmb5mr8p38mbar633gdsb14b7dhkhgawgzfy";
+      type = "gem";
+    };
+    version = "3.1.12";
+  };
+  bcrypt_pbkdf = {
+    groups = ["ed25519"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0cj4k13c7qvvck7y25i3xarvyqq8d27vl61jddifkc7llnnap1hv";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  benchmark-ips = {
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bh681m54qdsdyvpvflj1wpnj3ybspbpjkr4cnlrl4nk4yikli0j";
+      type = "gem";
+    };
+    version = "2.3.0";
+  };
+  benchmark-memory = {
+    dependencies = ["memory_profiler"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "11qw8k6rl79ri00njrf1x9v6vzwgv12rkcvgzvg0sk8pfrkzwyxa";
+      type = "gem";
+    };
+    version = "0.1.2";
+  };
+  better_errors = {
+    dependencies = ["coderay" "erubi" "rack"];
+    groups = ["development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pqnxxsqqs7vnqvamk5bzs84dv584g9s0qaf2vqb1v2aj5dabcg7";
+      type = "gem";
+    };
+    version = "2.5.0";
+  };
+  bindata = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0kxy917xyxckifmnawff65j7g6yb3wh2s45npjq9lqjbi1p86lsr";
+      type = "gem";
+    };
+    version = "2.4.3";
+  };
+  binding_ninja = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "17fa3sv6p2fw9g8fxpwx1kjhhs28aw41akkba0hlgvk60055b1aa";
+      type = "gem";
+    };
+    version = "0.2.3";
+  };
+  binding_of_caller = {
+    dependencies = ["debug_inspector"];
+    groups = ["development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05syqlks7463zsy1jdfbbdravdhj9hpj5pv2m74blqpv8bq4vv5g";
+      type = "gem";
+    };
+    version = "0.8.0";
+  };
+  bootsnap = {
+    dependencies = ["msgpack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bz62p9vc7lcrmzhiz4pf7myww086mq287cw3jjj7fyc7jhmamw0";
+      type = "gem";
+    };
+    version = "1.4.6";
+  };
+  bootstrap_form = {
+    dependencies = ["actionpack" "activemodel"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "044pi097jwh3z68g1zfmbcl9xchqfcsls1j1nvx1bkyj034v6y7m";
+      type = "gem";
+    };
+    version = "4.2.0";
+  };
+  brakeman = {
+    groups = ["development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "161l4ln7x1vnqrcvbvglznf46f0lvq305vq211xaxp4fv4wwv89v";
+      type = "gem";
+    };
+    version = "4.2.1";
+  };
+  browser = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0sdx0ny34i6vqxdsc7sy9g0nafdbrw8kvvb5xh9m18x1bzpqk92f";
+      type = "gem";
+    };
+    version = "2.5.3";
+  };
+  builder = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "045wzckxpwcqzrjr353cxnyaxgf0qg22jh00dcx7z38cys5g1jlr";
+      type = "gem";
+    };
+    version = "3.2.4";
+  };
+  bullet = {
+    dependencies = ["activesupport" "uniform_notifier"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1h16vrqblcdlizgbidk7bgmhcfb96a9y5jw117my5yhs07yp0i3s";
+      type = "gem";
+    };
+    version = "6.0.2";
+  };
+  bundler-audit = {
+    dependencies = ["thor"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0pm22xpn3xyymsainixnrk8v3l3xi9bzwkjkspx00cfzp84xvxbq";
+      type = "gem";
+    };
+    version = "0.6.1";
+  };
+  byebug = {
+    groups = ["default" "development" "test"];
+    platforms = [{
+      engine = "maglev";
+    } {
+      engine = "ruby";
+    }];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1vv7s88w8jb1qg4qz3jrs3x3y5d9jfyyl7wfiz78b5x95ydvx41q";
+      type = "gem";
+    };
+    version = "9.1.0";
+  };
+  capybara = {
+    dependencies = ["addressable" "mini_mime" "nokogiri" "rack" "rack-test" "regexp_parser" "xpath"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1y7ncfji4s3h3wdr2hwsrd32k0va92a6lyx2x8w6a3vkbc94kpch";
+      type = "gem";
+    };
+    version = "3.22.0";
+  };
+  capybara-screenshot = {
+    dependencies = ["capybara" "launchy"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1x90lh7nf3zi54arjf430s9xdxr3c12xjq1l28izgxqdk8s40q7q";
+      type = "gem";
+    };
+    version = "1.0.22";
+  };
+  carrierwave = {
+    dependencies = ["activemodel" "activesupport" "mime-types"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10rz94kajilffp83sb767lr62b5f8l4jzqq80cr92wqxdgbszdks";
+      type = "gem";
+    };
+    version = "1.3.1";
+  };
+  character_set = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "114npdbw1ivyx4vnid8ncnjw4wnjcipf2lvihlg3ibbh7an0m9s9";
+      type = "gem";
+    };
+    version = "1.1.2";
+  };
+  charlock_holmes = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nf1l31n10yaark2rrg5qzyzcx9w80681449s3j09qmnipsl8rl5";
+      type = "gem";
+    };
+    version = "0.7.6";
+  };
+  childprocess = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ic028k8xgm2dds9mqnvwwx3ibaz32j8455zxr9f4bcnviyahya5";
+      type = "gem";
+    };
+    version = "3.0.0";
+  };
+  chunky_png = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vf0axgrm95bs3y0x5gdb76xawfh210yxplj7jbwr6z7n88i1axn";
+      type = "gem";
+    };
+    version = "1.3.5";
+  };
+  citrus = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0l7nhk3gkm1hdchkzzhg2f70m47pc0afxfpl6mkiibc9qcpl3hjf";
+      type = "gem";
+    };
+    version = "3.0.2";
+  };
+  claide = {
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0kasxsms24fgcdsq680nz99d5lazl9rmz1qkil2y5gbbssx89g0z";
+      type = "gem";
+    };
+    version = "1.0.3";
+  };
+  claide-plugins = {
+    dependencies = ["cork" "nap" "open4"];
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bhw5j985qs48v217gnzva31rw5qvkf7qj8mhp73pcks0sy7isn7";
+      type = "gem";
+    };
+    version = "0.9.2";
+  };
+  coderay = {
+    groups = ["default" "development" "test"];
+    platforms = [{
+      engine = "maglev";
+    } {
+      engine = "ruby";
+    }];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15vav4bhcc2x3jmi3izb11l4d9f3xv8hp2fszb7iqmpsccv1pz4y";
+      type = "gem";
+    };
+    version = "1.1.2";
+  };
+  coercible = {
+    dependencies = ["descendants_tracker"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1p5azydlsz0nkxmcq0i1gzmcfq02lgxc4as7wmf47j1c6ljav0ah";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  colored2 = {
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jlbqa9q4mvrm73aw9mxh23ygzbjiqwisl32d8szfb5fxvbjng5i";
+      type = "gem";
+    };
+    version = "3.1.2";
+  };
+  commonmarker = {
+    dependencies = ["ruby-enum"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "19zd9na1g2d0zzbqhmfj8rjfzcxj34vja3i52gvv859i8fifa461";
+      type = "gem";
+    };
+    version = "0.20.1";
+  };
+  concord = {
+    dependencies = ["adamantium" "equalizer"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1b6cdn0fg4n9gzbdr7zyf4jq40y6h0c0g9cra7wk9hhmsylk91bg";
+      type = "gem";
+    };
+    version = "0.1.5";
+  };
+  concurrent-ruby = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "094387x4yasb797mv07cs3g6f08y56virc2rjcpb1k79rzaj3nhl";
+      type = "gem";
+    };
+    version = "1.1.6";
+  };
+  connection_pool = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lflx29mlznf1hn0nihkgllzbj8xp5qasn8j7h838465pi399k68";
+      type = "gem";
+    };
+    version = "2.2.2";
+  };
+  contracts = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "11kj7hdr94hxgxad9wazncvaxzaxlbvw6laq179ivhw9za746vnz";
+      type = "gem";
+    };
+    version = "0.11.0";
+  };
+  cork = {
+    dependencies = ["colored2"];
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1g6l780z1nj4s3jr11ipwcj8pjbibvli82my396m3y32w98ar850";
+      type = "gem";
+    };
+    version = "0.3.0";
+  };
+  countries = {
+    dependencies = ["i18n_data" "sixarm_ruby_unaccent" "unicode_utils"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0w278pjhwkbin7jpr7m47wac7gj5n4l2him9k2q4ngzq6rs2id7c";
+      type = "gem";
+    };
+    version = "3.0.0";
+  };
+  crack = {
+    dependencies = ["safe_yaml"];
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0abb0fvgw00akyik1zxnq7yv391va148151qxdghnzngv66bl62k";
+      type = "gem";
+    };
+    version = "0.4.3";
+  };
+  crass = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0pfl5c0pyqaparxaqxi6s4gfl21bdldwiawrc0aknyvflli60lfw";
+      type = "gem";
+    };
+    version = "1.0.6";
+  };
+  creole = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00rcscz16idp6dx0dk5yi5i0fz593i3r6anbn5bg2q07v3i025wm";
+      type = "gem";
+    };
+    version = "0.5.0";
+  };
+  css_parser = {
+    dependencies = ["addressable"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1y4vc018b5mzp7winw4pbb22jk0dpxp22pzzxq7w0rgvfxzi89pd";
+      type = "gem";
+    };
+    version = "1.7.0";
+  };
+  daemons = {
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lxqq6dgb8xhliywar2lvkwqy2ssraf9dk4b501pb4ixc2mvxbp2";
+      type = "gem";
+    };
+    version = "1.2.6";
+  };
+  danger = {
+    dependencies = ["claide" "claide-plugins" "colored2" "cork" "faraday" "faraday-http-cache" "git" "kramdown" "kramdown-parser-gfm" "no_proxy_fix" "octokit" "terminal-table"];
+    groups = ["development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0gyxfs7pkcg90llhpl2nwfqqcqi0qngqhk8gpyrffj6m0lm1m6wl";
+      type = "gem";
+    };
+    version = "6.0.9";
+  };
+  database_cleaner = {
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05i0nf2aj70m61y3fspypdkc6d1qgibf5kav05a71b5gjz0k7y5x";
+      type = "gem";
+    };
+    version = "1.7.0";
+  };
+  debug_inspector = {
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vxr0xa1mfbkfcrn71n7c4f2dj7la5hvphn904vh20j3x4j5lrx0";
+      type = "gem";
+    };
+    version = "0.0.3";
+  };
+  debugger-ruby_core_source = {
+    groups = ["default" "development"];
+    platforms = [{
+      engine = "maglev";
+    } {
+      engine = "ruby";
+    }];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1lp5dmm8a8dpwymv6r1y6yr24wxsj0gvgb2b8i7qq9rcv414snwd";
+      type = "gem";
+    };
+    version = "1.3.8";
+  };
+  deckar01-task_list = {
+    dependencies = ["html-pipeline"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18bwkvxjr7khxj95xrg1vj7va522vbm2li9wsiiw01cg5b10hni0";
+      type = "gem";
+    };
+    version = "2.3.1";
+  };
+  declarative = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0642xvwzzbgi3kp1bg467wma4g3xqrrn0sk369hjam7w579gnv5j";
+      type = "gem";
+    };
+    version = "0.0.10";
+  };
+  declarative-option = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1g4ibxq566f1frnhdymzi9hxxcm4g2gw4n21mpjk2mhwym4q6l0p";
+      type = "gem";
+    };
+    version = "0.1.0";
+  };
+  default_value_for = {
+    dependencies = ["activerecord"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08hwnnqm3bxd4n627isliq79zysdlmfkf813403v0b4mkhika5my";
+      type = "gem";
+    };
+    version = "3.3.0";
+  };
+  derailed_benchmarks = {
+    dependencies = ["benchmark-ips" "get_process_mem" "heapy" "memory_profiler" "mini_histogram" "rack" "rake" "ruby-statistics" "thor" "unicode_plot"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "03lrvzvdjy6wyrnb3nw7nqn9jbhn6lncach58pj6m4l76b2n6jpr";
+      type = "gem";
+    };
+    version = "1.7.0";
+  };
+  descendants_tracker = {
+    dependencies = ["thread_safe"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15q8g3fcqyb41qixn6cky0k3p86291y7xsh1jfd851dvrza1vi79";
+      type = "gem";
+    };
+    version = "0.0.4";
+  };
+  device_detector = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0zbsjj1bgwmsiqiw6x5fzbzp25xc10c02s37ggl2635ha0qzn05q";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  devise = {
+    dependencies = ["bcrypt" "orm_adapter" "railties" "responders" "warden"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0a64xq0dj6p0firpg4mrrfmlakpv17hky5yfrjhchs2sybmymr9i";
+      type = "gem";
+    };
+    version = "4.7.1";
+  };
+  devise-two-factor = {
+    dependencies = ["activesupport" "attr_encrypted" "devise" "railties" "rotp"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0gzk7phrryxlq4k3jrcxm8faifmbqrbfxq7jx089ncsixwd69bn4";
+      type = "gem";
+    };
+    version = "3.1.0";
+  };
+  diff-lcs = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18w22bjz424gzafv6nzv98h0aqkwz3d9xhm7cbr1wfbyas8zayza";
+      type = "gem";
+    };
+    version = "1.3";
+  };
+  diff_match_patch = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "03n4g4w2pwiygmqq5lfhqrpbs9g6kv0jhb3vrffz3vgaryzmfq5k";
+      type = "gem";
+    };
+    version = "0.1.0";
+  };
+  diffy = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qhx743lcx61r2d3925jk61c6r8clfjmpf5g93cdy5sq00ig76lh";
+      type = "gem";
+    };
+    version = "3.3.0";
+  };
+  discordrb-webhooks-blackst0ne = {
+    dependencies = ["rest-client"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1f0dw6ci5cbrxrvvqw2kqabpzyjisd4hflbi370rpb4cakkzgw39";
+      type = "gem";
+    };
+    version = "3.3.0";
+  };
+  docile = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qrwiyagxzl8zlx3dafb0ay8l14ib7imb2rsmx70i5cp420v8gif";
+      type = "gem";
+    };
+    version = "1.3.2";
+  };
+  domain_name = {
+    dependencies = ["unf"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0abdlwb64ns7ssmiqhdwgl27ly40x2l27l8hs8hn0z4kb3zd2x3v";
+      type = "gem";
+    };
+    version = "0.5.20180417";
+  };
+  doorkeeper = {
+    dependencies = ["railties"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0w554smil33j64h50w29xavgg4k7172r0c2rrygfbp5p4ap9py9c";
+      type = "gem";
+    };
+    version = "5.0.3";
+  };
+  doorkeeper-openid_connect = {
+    dependencies = ["doorkeeper" "json-jwt"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1qcl11dw9b0si45id7sqwv19g8am4i221sqkigimnvhc1cci2yfw";
+      type = "gem";
+    };
+    version = "1.6.3";
+  };
+  ed25519 = {
+    groups = ["ed25519"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1f5kr8za7hvla38fc0n9jiv55iq62k5bzclsa5kdb14l3r4w6qnw";
+      type = "gem";
+    };
+    version = "1.2.4";
+  };
+  elasticsearch = {
+    dependencies = ["elasticsearch-api" "elasticsearch-transport"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1jp7amblk18dag3w0yrzdzkhkbfap2d6xpbyv9314parxw98mgq0";
+      type = "gem";
+    };
+    version = "6.8.0";
+  };
+  elasticsearch-api = {
+    dependencies = ["multi_json"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0kq6ljssd5nd2fjaznbnyf4bhkk5q17ava5rq3bjfvjh1wyzagca";
+      type = "gem";
+    };
+    version = "6.8.0";
+  };
+  elasticsearch-model = {
+    dependencies = ["activesupport" "elasticsearch" "hashie"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ifm8vh8nr9r1wnpnfa6kjm7v54jwsgvpg060r08haydqcv5lbsy";
+      type = "gem";
+    };
+    version = "6.1.0";
+  };
+  elasticsearch-rails = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0zxqj7pgb0b32qda84jlg6kay4b9qbpjlfk2b0m23hxnkbbmf1bd";
+      type = "gem";
+    };
+    version = "6.1.0";
+  };
+  elasticsearch-transport = {
+    dependencies = ["faraday" "multi_json"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0c1scz8l4z84x7g3iwf9kmvrpgjjq0gaxaswviiy9zg3csn720mc";
+      type = "gem";
+    };
+    version = "6.8.0";
+  };
+  email_reply_trimmer = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vijywhy1acsq4187ss6w8a7ksswaf1d5np3wbj962b6rqif5vcz";
+      type = "gem";
+    };
+    version = "0.1.6";
+  };
+  email_spec = {
+    dependencies = ["htmlentities" "launchy" "mail"];
+    groups = ["test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yadaif80cf2ry0nvhir1s70xmm22xzncq6vfvvffdd8h02ridv0";
+      type = "gem";
+    };
+    version = "2.2.0";
+  };
+  encryptor = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0s8rvfl0vn8w7k1sgkc234060jh468s3zd45xa64p1jdmfa3zwmb";
+      type = "gem";
+    };
+    version = "3.0.0";
+  };
+  enumerable-statistics = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ac2f5g4m58l6bmap1ak6vgqykz2hy9n3c8r6dmlr2xjybdryc1f";
+      type = "gem";
+    };
+    version = "2.0.1";
+  };
+  equalizer = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1kjmx3fygx8njxfrwcmn7clfhjhb6bvv3scy2lyyi0wqyi3brra4";
+      type = "gem";
+    };
+    version = "0.0.11";
+  };
+  erubi = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nwzxnqhr31fn7nbqmffcysvxjdfl3bhxi0bld5qqhcnfc1xd13x";
+      type = "gem";
+    };
+    version = "1.9.0";
+  };
+  escape_utils = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qminivnyzwmqjhrh3b92halwbk0zcl9xn828p5rnap1szl2yag5";
+      type = "gem";
+    };
+    version = "1.2.1";
+  };
+  et-orbi = {
+    dependencies = ["tzinfo"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1swgjb3h2hs5xflb68837l0vd32masbz9c66b1963mxlnnxf5gsg";
+      type = "gem";
+    };
+    version = "1.2.1";
+  };
+  eventmachine = {
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wh9aqb0skz80fhfn66lbpr4f86ya2z5rx6gm5xlfhd05bj1ch4r";
+      type = "gem";
+    };
+    version = "1.2.7";
+  };
+  excon = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nn8wk7j22ly4lzdp5pnm7qsrjxbgspiyxkw70g1qf9bn6pslmxr";
+      type = "gem";
+    };
+    version = "0.71.1";
+  };
+  execjs = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0grlxwiccbnflxs30r3h7g23xnps5knav1jyqkk3anvm8363ifjw";
+      type = "gem";
+    };
+    version = "2.6.0";
+  };
+  expression_parser = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1938z3wmmdabqxlh5d5c56xfg1jc6z15p7zjyhvk7364zwydnmib";
+      type = "gem";
+    };
+    version = "0.9.0";
+  };
+  extended-markdown-filter = {
+    dependencies = ["html-pipeline"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "17mi5qayplfaa6p3mfwa36il84ixr0bimqvl0q73lw5i81blp126";
+      type = "gem";
+    };
+    version = "0.6.0";
+  };
+  factory_bot = {
+    dependencies = ["activesupport"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04mvwcdh1056r79vq969vlncrcy53fkhw0iixpqvp8gnx5ajbsv6";
+      type = "gem";
+    };
+    version = "5.1.0";
+  };
+  factory_bot_rails = {
+    dependencies = ["factory_bot" "railties"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "02q7lwfdilwahza2jz0p0kc2rragv617q9r2yy72syv6lfy923sx";
+      type = "gem";
+    };
+    version = "5.1.0";
+  };
+  faraday = {
+    dependencies = ["multipart-post"];
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0s72m05jvzc1pd6cw1i289chas399q0a14xrwg4rvkdwy7bgzrh0";
+      type = "gem";
+    };
+    version = "0.15.4";
+  };
+  faraday-http-cache = {
+    dependencies = ["faraday"];
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08j86fgcwl7z792qyijdsq680arzpfiydqd24ja405z2rbm7r2i0";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
+  faraday_middleware = {
+    dependencies = ["faraday"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1p7icfl28nvl8qqdsngryz1snqic9l8x6bk0dxd7ygn230y0k41d";
+      type = "gem";
+    };
+    version = "0.12.2";
+  };
+  faraday_middleware-aws-signers-v4 = {
+    dependencies = ["aws-sdk-resources" "faraday"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0y88xcbq8k2ijhsqdava5493p26k49agvnzca6vkl3qwfv3ambhp";
+      type = "gem";
+    };
+    version = "0.1.7";
+  };
+  faraday_middleware-multi_json = {
+    dependencies = ["faraday_middleware" "multi_json"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0651sxhzbq9xfq3hbpmrp0nbybxnm9ja3m97k386m4bqgamlvz1q";
+      type = "gem";
+    };
+    version = "0.0.6";
+  };
+  fast_blank = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "16s1ilyvwzmkcgmklbrn0c2pch5n02vf921njx0bld4crgdr6z56";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  fast_gettext = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1s42dsy3rh9h37d16pwhswf2q9cx25v5fn3q881b5iz6fvdjixv3";
+      type = "gem";
+    };
+    version = "1.6.0";
+  };
+  ffaker = {
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01z5lpssjc0n8lm4xrlja0hh8lv4ngzbybjvd4rdkc5x9ddvh8s3";
+      type = "gem";
+    };
+    version = "2.10.0";
+  };
+  ffi = {
+    groups = ["default" "development" "kerberos" "puma" "test" "unicorn"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10lfhahnnc91v63xpvk65apn61pib086zha3z5sp1xk9acfx12h4";
+      type = "gem";
+    };
+    version = "1.12.2";
+  };
+  ffi-compiler = {
+    dependencies = ["ffi" "rake"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0c2caqm9wqnbidcb8dj4wd3s902z15qmgxplwyfyqbwa0ydki7q1";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
+  flipper = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01gbn1qmcvn49gjcbvd5fga57qc8l3915kb04ikkffvb6n09q7f7";
+      type = "gem";
+    };
+    version = "0.17.1";
+  };
+  flipper-active_record = {
+    dependencies = ["activerecord" "flipper"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "154q9xajqs64gxa9fv4hwpad44x3rmwgpldrb941i8wi37dpzskg";
+      type = "gem";
+    };
+    version = "0.17.1";
+  };
+  flipper-active_support_cache_store = {
+    dependencies = ["activesupport" "flipper"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0mkbyn3mx3f411x4z1l1djc9vix3wrfzd5rhrmxb83iqp60r42hg";
+      type = "gem";
+    };
+    version = "0.17.1";
+  };
+  flowdock = {
+    dependencies = ["httparty" "multi_json"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04nrvg4gzgabf5mnnhccl8bwrkvn3y4pm7a1dqzqhpvfr4m5pafg";
+      type = "gem";
+    };
+    version = "0.7.1";
+  };
+  fog-aliyun = {
+    dependencies = ["fog-core" "fog-json" "ipaddress" "xml-simple"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1vl5zf9wr6qwm1awxscyifvrrfqnyacidxgzhkba2wqlgizk3anh";
+      type = "gem";
+    };
+    version = "0.3.3";
+  };
+  fog-aws = {
+    dependencies = ["fog-core" "fog-json" "fog-xml" "ipaddress"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "086kyvdhf1k8nk7f4gmybjc3k0m88f9pw99frddcy1w96pj5kyg4";
+      type = "gem";
+    };
+    version = "3.5.2";
+  };
+  fog-core = {
+    dependencies = ["builder" "excon" "formatador" "mime-types"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1agd6xgzk0rxrsjdpn94v4hy89s0nm2cs4zg2p880w2dan9xgrak";
+      type = "gem";
+    };
+    version = "2.1.0";
+  };
+  fog-google = {
+    dependencies = ["fog-core" "fog-json" "fog-xml" "google-api-client"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1784xynmgvj1x9phy42nbd3fcgj040zps6wn7msi6vnj1sg4wpfy";
+      type = "gem";
+    };
+    version = "1.9.1";
+  };
+  fog-json = {
+    dependencies = ["fog-core" "multi_json"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1zj8llzc119zafbmfa4ai3z5s7c4vp9akfs0f9l2piyvcarmlkyx";
+      type = "gem";
+    };
+    version = "1.2.0";
+  };
+  fog-local = {
+    dependencies = ["fog-core"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ba4lln35nryi6dcbz68vxg9ml6v8cc8s8c82f7syfd84bz76x21";
+      type = "gem";
+    };
+    version = "0.6.0";
+  };
+  fog-openstack = {
+    dependencies = ["fog-core" "fog-json" "ipaddress"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "171xnsl6w0j7yi6sp26dcqahx4r4gb2cf359gmy11g5iwnsll5wg";
+      type = "gem";
+    };
+    version = "1.0.8";
+  };
+  fog-rackspace = {
+    dependencies = ["fog-core" "fog-json" "fog-xml" "ipaddress"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0y2bli061g37l9p4w0ljqbmg830rp2qz6sf8b0ck4cnx68j7m32a";
+      type = "gem";
+    };
+    version = "0.1.1";
+  };
+  fog-xml = {
+    dependencies = ["fog-core" "nokogiri"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "043lwdw2wsi6d55ifk0w3izi5l1d1h0alwyr3fixic7b94kc812n";
+      type = "gem";
+    };
+    version = "0.1.3";
+  };
+  font-awesome-rails = {
+    dependencies = ["railties"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0a32q69rdsdw9zhmf2cflvvnikg20amidhn40sv2afw2qk91fcrz";
+      type = "gem";
+    };
+    version = "4.7.0.5";
+  };
+  formatador = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1gc26phrwlmlqrmz4bagq1wd5b7g64avpx0ghxr9xdxcvmlii0l0";
+      type = "gem";
+    };
+    version = "0.2.5";
+  };
+  fugit = {
+    dependencies = ["et-orbi" "raabro"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1x5h31hl75x0p5s36hinywg18ijlxjhnlb5p02aqcjjkx777rcav";
+      type = "gem";
+    };
+    version = "1.2.1";
+  };
+  fuubar = {
+    dependencies = ["rspec-core" "ruby-progressbar"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jlv2wisgnim29h47shvqhipbz1wgndfdr7i6y5wcfag0z2660lv";
+      type = "gem";
+    };
+    version = "2.2.0";
+  };
+  gemoji = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vgklpmhdz98xayln5hhqv4ffdyrglzwdixkn5gsk9rj94pkymc0";
+      type = "gem";
+    };
+    version = "3.0.1";
+  };
+  gemojione = {
+    dependencies = ["json"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ayk8r147k1s38nj18pwk76npx1p7jhi86silk800nj913pjvrhj";
+      type = "gem";
+    };
+    version = "3.3.0";
+  };
+  get_process_mem = {
+    dependencies = ["ffi"];
+    groups = ["default" "puma" "unicorn"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1q7pivp9z9pdxc2ha32q7x9zgqy8m9jf87g6n5mvi5l6knxya8sh";
+      type = "gem";
+    };
+    version = "0.2.5";
+  };
+  gettext = {
+    dependencies = ["locale" "text"];
+    groups = ["development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0764vj7gacn0aypm2bf6m46dzjzwzrjlmbyx6qwwwzbmi94r40wr";
+      type = "gem";
+    };
+    version = "3.2.9";
+  };
+  gettext_i18n_rails = {
+    dependencies = ["fast_gettext"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vs918a03mqvx9aczaqdg9d2q9s3c6swqavzn82qgq5i822czrcm";
+      type = "gem";
+    };
+    version = "1.8.0";
+  };
+  gettext_i18n_rails_js = {
+    dependencies = ["gettext" "gettext_i18n_rails" "po_to_json" "rails"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "11yn5cf92wsmlj5c1065mg6swf8gq9l6g9ahikvvyf9npvjay42x";
+      type = "gem";
+    };
+    version = "1.3.0";
+  };
+  git = {
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bf83icwypi3p3pd97vlqbnp3hvf31ncd440m9kh9y7x6yk74wyh";
+      type = "gem";
+    };
+    version = "1.5.0";
+  };
+  gitaly = {
+    dependencies = ["grpc"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01ki2isvqyhfw503z3ahksbfb0s0m3psi4din9azdpgcqyv1pxlh";
+      type = "gem";
+    };
+    version = "13.0.0.pre.rc1";
+  };
+  github-markup = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "17g6g18gdjg63k75sfwiskjzl9i0hfcnrkcpb4fwrnb20v3jgswp";
+      type = "gem";
+    };
+    version = "1.7.0";
+  };
+  gitlab-chronic = {
+    dependencies = ["numerizer"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xf857vj55r1jafbkdpdzq6c22r964rj9186m1q8hw4vd7f1h3zq";
+      type = "gem";
+    };
+    version = "0.10.5";
+  };
+  gitlab-labkit = {
+    dependencies = ["actionpack" "activesupport" "grpc" "jaeger-client" "opentracing" "redis"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0a63zgjll83b25hiq8m4sk75jci2rj8z46lss0j3bc6zi3pxnzax";
+      type = "gem";
+    };
+    version = "0.12.0";
+  };
+  gitlab-license = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1q26cgp3ln3b36n3sc69r6hxafkxjwdr3m0d7jlch5j7vyib9bih";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  gitlab-mail_room = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10ajr3l8vasy4zkc0p481m806g7k7idnw7mi6rlkmx4gkgb0z46j";
+      type = "gem";
+    };
+    version = "0.0.4";
+  };
+  gitlab-markup = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xnlra517pfj3hx07kasbqlcw51ix4xajr6bsd3mwg8bc92dlwy7";
+      type = "gem";
+    };
+    version = "1.7.1";
+  };
+  gitlab-net-dns = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1jylfc47477imjmzc4jq7zsxklhrws6q4bb0zzl33drirf6s1ldw";
+      type = "gem";
+    };
+    version = "0.9.1";
+  };
+  gitlab-puma = {
+    dependencies = ["nio4r"];
+    groups = ["puma"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0i1gv7mgjpa46v6jr97rjk0zv3jny3gc3q3bq8wd6rv59lv5s4wi";
+      type = "gem";
+    };
+    version = "4.3.3.gitlab.2";
+  };
+  gitlab-puma_worker_killer = {
+    dependencies = ["get_process_mem" "gitlab-puma"];
+    groups = ["puma"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0iagbqh4djbxfd18srvfg9qcxn845ibs3kf0q1sd57k27lxj0har";
+      type = "gem";
+    };
+    version = "0.1.1.gitlab.1";
+  };
+  gitlab-sidekiq-fetcher = {
+    dependencies = ["sidekiq"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0dvx2klf1a1xyf15q34fn59291v6jwx3z315rxb2dmkvcr9873m1";
+      type = "gem";
+    };
+    version = "0.5.2";
+  };
+  gitlab-styles = {
+    dependencies = ["rubocop" "rubocop-gitlab-security" "rubocop-performance" "rubocop-rails" "rubocop-rspec"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1il4jqvz7b2l6pcxw6pfjvljpngn92mghfm47g0mfickih1i2r55";
+      type = "gem";
+    };
+    version = "3.2.0";
+  };
+  gitlab_chronic_duration = {
+    dependencies = ["numerizer"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1yq5a4vs96xz5yxqkfwcvzw0riww7mf87j1s2s7rb6yagpz4rnkd";
+      type = "gem";
+    };
+    version = "0.10.6.2";
+  };
+  gitlab_omniauth-ldap = {
+    dependencies = ["net-ldap" "omniauth" "pyu-ruby-sasl" "rubyntlm"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1f8cjbzlhckarmm59l380jjy33a3hlljg69b3zkh8rhy1xd3xr90";
+      type = "gem";
+    };
+    version = "2.1.1";
+  };
+  globalid = {
+    dependencies = ["activesupport"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1zkxndvck72bfw235bd9nl2ii0lvs5z88q14706cmn702ww2mxv1";
+      type = "gem";
+    };
+    version = "0.4.2";
+  };
+  gon = {
+    dependencies = ["actionpack" "multi_json" "request_store"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0q9nvnw98mbb40h7mlzn1zk40r2l29yybhinmiqhrq8a6adsv806";
+      type = "gem";
+    };
+    version = "6.2.0";
+  };
+  google-api-client = {
+    dependencies = ["addressable" "googleauth" "httpclient" "mime-types" "representable" "retriable"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05h2lca9b334ayabgs3h0mzc2wg3csvkqv1lv3iirpgf90ypbk1k";
+      type = "gem";
+    };
+    version = "0.23.4";
+  };
+  google-protobuf = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0by3289irdklb9gjqw41fq6mg6yja3iyzh99dj8p8z9l4brllqn4";
+      type = "gem";
+    };
+    version = "3.8.0";
+  };
+  googleapis-common-protos-types = {
+    dependencies = ["google-protobuf"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hyr94cafiqj0k8q19hnl658pmbz2b404akikzfv4hdb1j1bwsg1";
+      type = "gem";
+    };
+    version = "1.0.4";
+  };
+  googleauth = {
+    dependencies = ["faraday" "jwt" "memoist" "multi_json" "os" "signet"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1747p1dhpvz76i98xnjrvaj785y1232svm0nc8g9by6pz835gp2l";
+      type = "gem";
+    };
+    version = "0.6.6";
+  };
+  gpgme = {
+    dependencies = ["mini_portile2"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xbgh9d8nbvsvyzqnd0mzhz0nr9hx4qn025kmz6d837lry4lc6gw";
+      type = "gem";
+    };
+    version = "2.0.20";
+  };
+  grape = {
+    dependencies = ["activesupport" "builder" "mustermann-grape" "rack" "rack-accept" "virtus"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04bam0iq9sad1df361317zz4knwci905yig502khl8gm1lp1168c";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  grape-entity = {
+    dependencies = ["activesupport" "multi_json"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1w78wylkhdkc0s6n6d20hggbb3pl3ladzzd5lx6ack2iswybx7b9";
+      type = "gem";
+    };
+    version = "0.7.1";
+  };
+  grape-path-helpers = {
+    dependencies = ["activesupport" "grape" "rake"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "170aw6yvr8l5srlfjz1yqpxr7klr8jypr4i0gj41gn6v4iamyl79";
+      type = "gem";
+    };
+    version = "1.2.0";
+  };
+  grape_logging = {
+    dependencies = ["grape" "rack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0x6cmmj0wi1m689r8d4yhyhpl8dwj5skn8b29igm4xvw3swkg94x";
+      type = "gem";
+    };
+    version = "1.8.3";
+  };
+  graphiql-rails = {
+    dependencies = ["railties" "sprockets-rails"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10q5zipwgjgaan9lfqakdkm5ry8afgkq79bkimgksn6jyyvpz6w8";
+      type = "gem";
+    };
+    version = "1.4.10";
+  };
+  graphql = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0zj729kxig2klhm4naqsgrfi4xgba4vh2pazvvi7iaikaa3vfh48";
+      type = "gem";
+    };
+    version = "1.10.5";
+  };
+  graphql-docs = {
+    dependencies = ["commonmarker" "escape_utils" "extended-markdown-filter" "gemoji" "graphql" "html-pipeline" "sass"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "12wzsikbn54b2hcv100hz7isq5gdjm5w5b8xya64ra5sw6sabq8d";
+      type = "gem";
+    };
+    version = "1.6.0";
+  };
+  grpc = {
+    dependencies = ["google-protobuf" "googleapis-common-protos-types"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18wikj9qd4jb4lks55cs2cf3q7fifnanm9z9ywnxhpj57vbnilpf";
+      type = "gem";
+    };
+    version = "1.24.0";
+  };
+  gssapi = {
+    dependencies = ["ffi"];
+    groups = ["kerberos"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0j93nsf9j57p7x4aafalvjg8hia2mmqv3aky7fmw2ck5yci343ix";
+      type = "gem";
+    };
+    version = "1.2.0";
+  };
+  guard = {
+    dependencies = ["formatador" "listen" "lumberjack" "nenv" "notiffany" "pry" "shellany" "thor"];
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "000hn5cdqz3wl99b245q958c5byi2dlsqi814q5gmyljv7i47zwf";
+      type = "gem";
+    };
+    version = "2.15.1";
+  };
+  guard-compat = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1zj6sr1k8w59mmi27rsii0v8xyy2rnsi09nqvwpgj1q10yq1mlis";
+      type = "gem";
+    };
+    version = "1.2.1";
+  };
+  guard-rspec = {
+    dependencies = ["guard" "guard-compat" "rspec"];
+    groups = ["test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1jkm5xp90gm4c5s51pmf92i9hc10gslwwic6mvk72g0yplya0yx4";
+      type = "gem";
+    };
+    version = "4.7.3";
+  };
+  haml = {
+    dependencies = ["temple" "tilt"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0dwarfbc04bblljs4xg9fy57b5y8xrck6slhssa6bd7x58bh222c";
+      type = "gem";
+    };
+    version = "5.1.2";
+  };
+  haml_lint = {
+    dependencies = ["haml" "rainbow" "rubocop" "sysexits"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1iaaa5as4nlblnbvy6pxj8z9k3jqspbh4f43il519f28lgi0llsn";
+      type = "gem";
+    };
+    version = "0.34.0";
+  };
+  hamlit = {
+    dependencies = ["temple" "thor" "tilt"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "13wkrvyldk21xlc9illam495fpgf7w7bksaj8y6n00y036wmbg60";
+      type = "gem";
+    };
+    version = "2.11.0";
+  };
+  hangouts-chat = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1dmnv3723c22683bzys8walkl6wi74xzawxjbhwqzjdbwk3bdgmx";
+      type = "gem";
+    };
+    version = "0.0.5";
+  };
+  hashdiff = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "19ykg5pax8798nh1yv71adkx0zzs7gn2rxjj86v7nsw0jba5lask";
+      type = "gem";
+    };
+    version = "0.3.8";
+  };
+  hashie = {
+    groups = ["default" "kerberos"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "13bdzfp25c8k51ayzxqkbzag3wj5gc1jd8h7d985nsq6pn57g5xh";
+      type = "gem";
+    };
+    version = "3.6.0";
+  };
+  hashie-forbidden_attributes = {
+    dependencies = ["hashie"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1chgg5d2iddja6ww02x34g8avg11fzmzcb8yvnqlykii79zx6vis";
+      type = "gem";
+    };
+    version = "0.1.1";
+  };
+  health_check = {
+    dependencies = ["rails"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mfa180nyzz1j0abfihm5nm3lmzq99362ibcphky6rh5vwhckvm8";
+      type = "gem";
+    };
+    version = "2.6.0";
+  };
+  heapy = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1r9f38fpgjgaxskkwvsliijj6vfmgsff9pnranvvvzkdl67hk1hw";
+      type = "gem";
+    };
+    version = "0.1.4";
+  };
+  hipchat = {
+    dependencies = ["httparty" "mimemagic"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hgy5jav479vbzzk53lazhpjj094dcsqw6w1d6zjn52p72bwq60k";
+      type = "gem";
+    };
+    version = "1.5.2";
+  };
+  html-pipeline = {
+    dependencies = ["activesupport" "nokogiri"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "19hc7njr029pzqljpfhzhdi0p2rgn8ihn3bdnai2apy6nj1g1sg2";
+      type = "gem";
+    };
+    version = "2.12.2";
+  };
+  html2text = {
+    dependencies = ["nokogiri"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0kxdj8pf9pss9xgs8aac0alj5g1fi225yzdhh33lzampkazg1hii";
+      type = "gem";
+    };
+    version = "0.2.0";
+  };
+  htmlentities = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nkklqsn8ir8wizzlakncfv42i32wc0w9hxp00hvdlgjr7376nhj";
+      type = "gem";
+    };
+    version = "4.3.4";
+  };
+  http = {
+    dependencies = ["addressable" "http-cookie" "http-form_data" "http-parser"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1gsn0jmri7cavw1pv3pbynq6nldsff0r5dr6pa0mxz0rkpjsgjwl";
+      type = "gem";
+    };
+    version = "4.2.0";
+  };
+  http-cookie = {
+    dependencies = ["domain_name"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "004cgs4xg5n6byjs7qld0xhsjq3n6ydfh897myr2mibvh6fjc49g";
+      type = "gem";
+    };
+    version = "1.0.3";
+  };
+  http-form_data = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15lpn604byf7cyxnw949xz4rvpcknqp7a48q73nm630gqxsa76f3";
+      type = "gem";
+    };
+    version = "2.1.1";
+  };
+  http-parser = {
+    dependencies = ["ffi-compiler"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10wz818i7dq5zkcll0yf7pbjz1zqvs7mgh3xg3x6www2f2ccwxqj";
+      type = "gem";
+    };
+    version = "1.2.1";
+  };
+  httparty = {
+    dependencies = ["mime-types" "multi_xml"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "109xvhl35dsk9zp65n5pdkhiijhqxdyvajbs74nkp4z8yl09vj32";
+      type = "gem";
+    };
+    version = "0.16.4";
+  };
+  httpclient = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "19mxmvghp7ki3klsxwrlwr431li7hm1lczhhj8z4qihl2acy8l99";
+      type = "gem";
+    };
+    version = "2.8.3";
+  };
+  i18n = {
+    dependencies = ["concurrent-ruby"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jwrd1l4mxz06iyx6053lr6hz2zy7ah2k3ranfzisvych5q19kwm";
+      type = "gem";
+    };
+    version = "1.8.2";
+  };
+  i18n_data = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0v0cdwxiaqdwhaljd7z0fbx29q3r5kjl93xnjm5abi1x37645ncj";
+      type = "gem";
+    };
+    version = "0.8.0";
+  };
+  icalendar = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1xsydpp2xph00awi25axv2mwjd5p2rlgd4qb3kh05lvq795kirxd";
+      type = "gem";
+    };
+    version = "2.4.1";
+  };
+  ice_nine = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nv35qg1rps9fsis28hz2cq2fx1i96795f91q4nmkm934xynll2x";
+      type = "gem";
+    };
+    version = "0.11.2";
+  };
+  invisible_captcha = {
+    dependencies = ["rails"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15510dh1vh7l2xs2a4956nhxpnf10168r62i497nmcbyqpp1df88";
+      type = "gem";
+    };
+    version = "0.12.1";
+  };
+  ipaddress = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1x86s0s11w202j6ka40jbmywkrx8fhq8xiy8mwvnkhllj57hqr45";
+      type = "gem";
+    };
+    version = "0.8.3";
+  };
+  jaeger-client = {
+    dependencies = ["opentracing" "thrift"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "198m72c9w3wfwr1mq22dcjjm7d4jd0bci4lrq6zq2zvlzhi04n8l";
+      type = "gem";
+    };
+    version = "0.10.0";
+  };
+  jaro_winkler = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1y8l6k34svmdyqxya3iahpwbpvmn3fswhwsvrz0nk1wyb8yfihsh";
+      type = "gem";
+    };
+    version = "1.5.4";
+  };
+  jira-ruby = {
+    dependencies = ["activesupport" "atlassian-jwt" "multipart-post" "oauth"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1bfqb5qkgbcjrspspa2lha2is0anjnby20x9gp7bfjr5j5j9my32";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
+  jmespath = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1d4wac0dcd1jf6kc57891glih9w57552zgqswgy74d1xhgnk0ngf";
+      type = "gem";
+    };
+    version = "1.4.0";
+  };
+  js_regex = {
+    dependencies = ["character_set" "regexp_parser" "regexp_property_values"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wi4h4f3knb0yp4zq2spks3dpmdzz9wa54d6xk88md0h4v2x33cq";
+      type = "gem";
+    };
+    version = "3.1.1";
+  };
+  json = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nrmw2r4nfxlfgprfgki3hjifgrcrs3l5zvm3ca3gb4743yr25mn";
+      type = "gem";
+    };
+    version = "2.3.0";
+  };
+  json-jwt = {
+    dependencies = ["activesupport" "aes_key_wrap" "bindata"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18rf9v20i0dk5dblr7m22di959xpch2h7gsx0cl585cryr7apwp3";
+      type = "gem";
+    };
+    version = "1.11.0";
+  };
+  json-schema = {
+    dependencies = ["addressable"];
+    groups = ["test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "11di8qyam6bmqn0fvvvf3crgaqy4sil0d406ymx0jacn3ff98ymz";
+      type = "gem";
+    };
+    version = "2.8.0";
+  };
+  jwt = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1w0kaqrbl71cq9sbnixc20x5lqah3hs2i93xmhlfdg2y3by7yzky";
+      type = "gem";
+    };
+    version = "2.1.0";
+  };
+  kaminari = {
+    dependencies = ["activesupport" "kaminari-actionview" "kaminari-activerecord" "kaminari-core"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1vxkqciny5v4jgmjxl8qrgbmig2cij2iskqbwh4bfcmpxf467ch3";
+      type = "gem";
+    };
+    version = "1.2.1";
+  };
+  kaminari-actionview = {
+    dependencies = ["actionview" "kaminari-core"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0w0p1hyv6lgf6h036cmn2kbkdv4x7g0g9q9kc5gzkpz7amlxr8ri";
+      type = "gem";
+    };
+    version = "1.2.1";
+  };
+  kaminari-activerecord = {
+    dependencies = ["activerecord" "kaminari-core"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "02n5xxv6ilh39q2m6vcz7qrdai7ghk3s178dw6f0b3lavwyq49w3";
+      type = "gem";
+    };
+    version = "1.2.1";
+  };
+  kaminari-core = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0h04cr4y1jfn81gxy439vmczifghc2cvsyw47aa32is5bbxg1wlz";
+      type = "gem";
+    };
+    version = "1.2.1";
+  };
+  kgio = {
+    groups = ["default" "unicorn"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ai6bzlvxbzpdl466p1qi4dlhx8ri2wcrp6x1l19y3yfs3a29rng";
+      type = "gem";
+    };
+    version = "2.11.3";
+  };
+  knapsack = {
+    dependencies = ["rake"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1c69rcwfrdrnx8ddl6k1qxhw9f2dj5x5bbddz435isl2hfr5zh92";
+      type = "gem";
+    };
+    version = "1.17.0";
+  };
+  kramdown = {
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1dl840bvx8d9nq6lg3mxqyvbiqnr6lk3jfsm6r8zhz7p5srmd688";
+      type = "gem";
+    };
+    version = "2.1.0";
+  };
+  kramdown-parser-gfm = {
+    dependencies = ["kramdown"];
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0a8pb3v951f4x7h968rqfsa19c8arz21zw1vaj42jza22rap8fgv";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  kubeclient = {
+    dependencies = ["http" "recursive-open-struct" "rest-client"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1djf4zll2alrwv7wg4wk9v504wbri717wqaq773i1azg7cbisbw6";
+      type = "gem";
+    };
+    version = "4.6.0";
+  };
+  launchy = {
+    dependencies = ["addressable"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "190lfbiy1vwxhbgn4nl4dcbzxvm049jwc158r2x7kq3g5khjrxa2";
+      type = "gem";
+    };
+    version = "2.4.3";
+  };
+  letter_opener = {
+    dependencies = ["launchy"];
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09a7kgsmr10a0hrc9bwxglgqvppjxij9w8bxx91mnvh0ivaw0nq9";
+      type = "gem";
+    };
+    version = "1.7.0";
+  };
+  letter_opener_web = {
+    dependencies = ["actionmailer" "letter_opener" "railties"];
+    groups = ["development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "17qhwrkncrrp1bi2f7fbkm5lpnkdsiwy8jcvgr2wa97ck8y4x2bb";
+      type = "gem";
+    };
+    version = "1.3.4";
+  };
+  license_finder = {
+    dependencies = ["rubyzip" "thor" "toml" "with_env" "xml-simple"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01rhqm5m3m22gq6q9f1x9fh3x3wrf9khnnsycblj0xg5frdjv77v";
+      type = "gem";
+    };
+    version = "5.4.0";
+  };
+  licensee = {
+    dependencies = ["rugged"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0w6d2smhg3kzcx4m2ii06akakypwhiglansk51bpx290hhc8h3pc";
+      type = "gem";
+    };
+    version = "8.9.2";
+  };
+  listen = {
+    dependencies = ["rb-fsevent" "rb-inotify" "ruby_dep"];
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01v5mrnfqm6sgm8xn2v5swxsn1wlmq7rzh2i48d4jzjsc7qvb6mx";
+      type = "gem";
+    };
+    version = "3.1.5";
+  };
+  locale = {
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1sls9bq4krx0fmnzmlbn64dw23c4d6pz46ynjzrn9k8zyassdd0x";
+      type = "gem";
+    };
+    version = "2.1.2";
+  };
+  lockbox = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0sgbs0frk601yc7bb33pz5z9cyadvj077vwy9k5zapsbn2rxf5aj";
+      type = "gem";
+    };
+    version = "0.3.3";
+  };
+  lograge = {
+    dependencies = ["actionpack" "activesupport" "railties" "request_store"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00lcn7s3slfn32di4qwlx2yj5f9r2pcnd0naxrvqqwypcg1z2sdd";
+      type = "gem";
+    };
+    version = "0.10.0";
+  };
+  loofah = {
+    dependencies = ["crass" "nokogiri"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jk9fgn5ayzbqvzqm11gbkqvas77zdbpkvynlylyiwynclgrn040";
+      type = "gem";
+    };
+    version = "2.5.0";
+  };
+  lru_redux = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1yxghzg7476sivz8yyr9nkak2dlbls0b89vc2kg52k0nmg6d0wgf";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  lumberjack = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "06im7gcg42x77yhz2w5da2ly9xz0n0c36y5ks7xs53v0l9g0vf5n";
+      type = "gem";
+    };
+    version = "1.0.13";
+  };
+  mail = {
+    dependencies = ["mini_mime"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00wwz6ys0502dpk8xprwcqfwyf3hmnx6lgxaiq6vj43mkx43sapc";
+      type = "gem";
+    };
+    version = "2.7.1";
+  };
+  marcel = {
+    dependencies = ["mimemagic"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nxbjmcyg8vlw6zwagf17l9y2mwkagmmkg95xybpn4bmf3rfnksx";
+      type = "gem";
+    };
+    version = "0.3.3";
+  };
+  marginalia = {
+    dependencies = ["actionpack" "activerecord"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1akbiibmg64liw8ya6xzf9lavh2n2707hxsnf9sfslsk36iwx0yn";
+      type = "gem";
+    };
+    version = "1.8.0";
+  };
+  memoist = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0pq8fhqh8w25qcw9v3vzfb0i6jp0k3949ahxc3wrwz2791dpbgbh";
+      type = "gem";
+    };
+    version = "0.16.0";
+  };
+  memoizable = {
+    dependencies = ["thread_safe"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0v42bvghsvfpzybfazl14qhkrjvx0xlmxz0wwqc960ga1wld5x5c";
+      type = "gem";
+    };
+    version = "0.4.2";
+  };
+  memory_profiler = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04ivhv1bilwqm33jv28gar2vwzsichb5nipaq395d3axabv8qmfy";
+      type = "gem";
+    };
+    version = "0.9.14";
+  };
+  method_source = {
+    groups = ["default" "development" "metrics" "test"];
+    platforms = [{
+      engine = "maglev";
+    } {
+      engine = "ruby";
+    }];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pviwzvdqd90gn6y7illcdd9adapw8fczml933p5vl739dkvl3lq";
+      type = "gem";
+    };
+    version = "0.9.2";
+  };
+  mime-types = {
+    dependencies = ["mime-types-data"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0fjxy1jm52ixpnv3vg9ld9pr9f35gy0jp66i1njhqjvmnvq0iwwk";
+      type = "gem";
+    };
+    version = "3.2.2";
+  };
+  mime-types-data = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1m00pg19cm47n1qlcxgl91ajh2yq0fszvn1vy8fy0s1jkrp9fw4a";
+      type = "gem";
+    };
+    version = "3.2019.0331";
+  };
+  mimemagic = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1qfqb9w76kmpb48frbzbyvjc0dfxh5qiw1kxdbv2y2kp6fxpa1kf";
+      type = "gem";
+    };
+    version = "0.3.5";
+  };
+  mini_histogram = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "127vmd85kwi85qjbb1431bi4j5gdy0pp6wrq1f88ja1pf3mlb50y";
+      type = "gem";
+    };
+    version = "0.1.3";
+  };
+  mini_magick = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qy09qrd5bwh8mkbj514n5vcw9ni73218h9s3zmvbpmdwrnzi8j4";
+      type = "gem";
+    };
+    version = "4.9.5";
+  };
+  mini_mime = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1axm0rxyx3ss93wbmfkm78a6x03l8y4qy60rhkkiq0aza0vwq3ha";
+      type = "gem";
+    };
+    version = "1.0.2";
+  };
+  mini_portile2 = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15zplpfw3knqifj9bpf604rb3wc1vhq6363pd6lvhayng8wql5vy";
+      type = "gem";
+    };
+    version = "2.4.0";
+  };
+  minitest = {
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0icglrhghgwdlnzzp4jf76b0mbc71s80njn5afyfjn4wqji8mqbq";
+      type = "gem";
+    };
+    version = "5.11.3";
+  };
+  msgpack = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1qr2mkm2i3m76zarvy7qgjl9596hmvjrg7x6w42vx8cfsbf5p0y1";
+      type = "gem";
+    };
+    version = "1.3.1";
+  };
+  multi_json = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xy54mjf7xg41l8qrg1bqri75agdqmxap9z466fjismc1rn2jwfr";
+      type = "gem";
+    };
+    version = "1.14.1";
+  };
+  multi_xml = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lmd4f401mvravi1i1yq7b2qjjli0yq7dfc4p1nj5nwajp7r6hyj";
+      type = "gem";
+    };
+    version = "0.6.0";
+  };
+  multipart-post = {
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1zgw9zlwh2a6i1yvhhc4a84ry1hv824d6g2iw2chs3k5aylpmpfj";
+      type = "gem";
+    };
+    version = "2.1.1";
+  };
+  murmurhash3 = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1szwcm44z5jg1l4dq73zyjw4rjin23ihkhrw5cpcjrb6cg8hd3y7";
+      type = "gem";
+    };
+    version = "0.1.6";
+  };
+  mustermann = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lycgkmnyy0bf29nnd2zql5a6pcf8sp69g9v4xw0gcfcxgpwp7i1";
+      type = "gem";
+    };
+    version = "1.0.3";
+  };
+  mustermann-grape = {
+    dependencies = ["mustermann"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10xdggddjl8nraq7pbli31lwgrzxzz8gp558i811lsv71fqbmhzr";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  nakayoshi_fork = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mj5czi7rxxmfq4v9qjz74lcqypvnjxhxqfs71zhb2rsfa97a6jg";
+      type = "gem";
+    };
+    version = "0.0.4";
+  };
+  nap = {
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xm5xssxk5s03wjarpipfm39qmgxsalb46v1prsis14x1xk935ll";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  nenv = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0r97jzknll9bhd8yyg2bngnnkj8rjhal667n7d32h8h7ny7nvpnr";
+      type = "gem";
+    };
+    version = "0.3.0";
+  };
+  net-ldap = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1vzfhivjfr9q65hkln7xig3qcba6fw9y4kb4384fpm7d7ww0b7xg";
+      type = "gem";
+    };
+    version = "0.16.2";
+  };
+  net-ntp = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0z96m7nnb9f634cz4i6p0x89z7g9i9h97cnk5f3x3q5x090kzisv";
+      type = "gem";
+    };
+    version = "2.1.3";
+  };
+  net-ssh = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1l0kgd7w08fx2522aw8grlfzwmrgw4jgjakpkgkwm0134g5xv432";
+      type = "gem";
+    };
+    version = "6.0.0";
+  };
+  netrc = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0gzfmcywp1da8nzfqsql2zqi648mfnx6qwkig3cv36n9m0yy676y";
+      type = "gem";
+    };
+    version = "0.11.0";
+  };
+  nio4r = {
+    groups = ["default" "puma" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0gnmvbryr521r135yz5bv8354m7xn6miiapfgpg1bnwsvxz8xj6c";
+      type = "gem";
+    };
+    version = "2.5.2";
+  };
+  no_proxy_fix = {
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "006dmdb640v1kq0sll3dnlwj1b0kpf3i1p27ygyffv8lpcqlr6sf";
+      type = "gem";
+    };
+    version = "0.1.2";
+  };
+  nokogiri = {
+    dependencies = ["mini_portile2"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "12j76d0bp608932xkzmfi638c7aqah57l437q8494znzbj610qnm";
+      type = "gem";
+    };
+    version = "1.10.9";
+  };
+  nokogumbo = {
+    dependencies = ["nokogiri"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09qc1c7acv9qm48vk2kzvnrq4ij8jrql1cv33nmv2nwmlggy0jyj";
+      type = "gem";
+    };
+    version = "1.5.0";
+  };
+  notiffany = {
+    dependencies = ["nenv" "shellany"];
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0f47h3bmg1apr4x51szqfv3rh2vq58z3grh4w02cp3bzbdh6jxnk";
+      type = "gem";
+    };
+    version = "0.1.3";
+  };
+  numerizer = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ysxf30qcybh131r98frp38sqqkdhcjwpnajgrxl2w2kxvapd075";
+      type = "gem";
+    };
+    version = "0.2.0";
+  };
+  oauth = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1zszdg8q1b135z7l7crjj234k4j0m347hywp5kj6zsq7q78pw09y";
+      type = "gem";
+    };
+    version = "0.5.4";
+  };
+  oauth2 = {
+    dependencies = ["faraday" "jwt" "multi_json" "multi_xml" "rack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0av6nlb5y2sm6m8fx669ywrqa9858yqaqfqzny75nqp3anag89qh";
+      type = "gem";
+    };
+    version = "1.4.1";
+  };
+  octokit = {
+    dependencies = ["faraday" "sawyer"];
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yg6dhd028j74sm8hpw9w7bwfwlkml9wiis7nq20ivfsbcz4g8ac";
+      type = "gem";
+    };
+    version = "4.15.0";
+  };
+  omniauth = {
+    dependencies = ["hashie" "rack"];
+    groups = ["default" "kerberos"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1p16h1rp8by05k8gfw17xjhgwp60dk8qmj1xalv1n23kmxfsxb1x";
+      type = "gem";
+    };
+    version = "1.9.0";
+  };
+  omniauth-auth0 = {
+    dependencies = ["omniauth-oauth2"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0id5gn14av81kh41cq4q6c9knyvzl7vc4rs3m4pmpd43g2z6jdw2";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
+  omniauth-authentiq = {
+    dependencies = ["jwt" "omniauth-oauth2"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0k7vajxwplsp188xfj4mi9iqbc7f7djqh02by4mphc51hl87kcqi";
+      type = "gem";
+    };
+    version = "0.3.3";
+  };
+  omniauth-azure-oauth2 = {
+    dependencies = ["jwt" "omniauth" "omniauth-oauth2"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1a3iqy63l1jd6na4y0bj4a8mlp7gcn3a0awnz9g79fa8n4v2g8n4";
+      type = "gem";
+    };
+    version = "0.0.10";
+  };
+  omniauth-cas3 = {
+    dependencies = ["addressable" "nokogiri" "omniauth"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "191b4jm4djmmy54yxfxj3c889r2wn3g6sfsdj6l1rjy0kw1m2qgx";
+      type = "gem";
+    };
+    version = "1.1.4";
+  };
+  omniauth-facebook = {
+    dependencies = ["omniauth-oauth2"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "03zjla9i446fk1jkw7arh67c39jfhp5bhkmhvbw8vczxr1jkbbh5";
+      type = "gem";
+    };
+    version = "4.0.0";
+  };
+  omniauth-github = {
+    dependencies = ["omniauth" "omniauth-oauth2"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xbk0dbxqfpyfb33ghz6vrlz3m6442rp18ryf13gwzlnifcawhlb";
+      type = "gem";
+    };
+    version = "1.4.0";
+  };
+  omniauth-gitlab = {
+    dependencies = ["omniauth" "omniauth-oauth2"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "19ydk2zd2mz8zi80z3l03pajpm9357sg3lrankrcb3pirkkdb9fp";
+      type = "gem";
+    };
+    version = "1.0.3";
+  };
+  omniauth-google-oauth2 = {
+    dependencies = ["jwt" "omniauth" "omniauth-oauth2"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "03v2gqpsbdhkqaxhvzr83za885awm6pgskv3mkyfvang7mr321df";
+      type = "gem";
+    };
+    version = "0.6.0";
+  };
+  omniauth-kerberos = {
+    dependencies = ["omniauth-multipassword" "timfel-krb5-auth"];
+    groups = ["kerberos"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05xsv76qjxcxzrvabaar2bchv7435y8l2j0wk4zgchh3yv85kiq7";
+      type = "gem";
+    };
+    version = "0.3.0";
+  };
+  omniauth-multipassword = {
+    dependencies = ["omniauth"];
+    groups = ["default" "kerberos"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qykp76hw80lkgb39hyzrv68hkbivc8cv0vbvrnycjh9fwfp1lv8";
+      type = "gem";
+    };
+    version = "0.4.2";
+  };
+  omniauth-oauth = {
+    dependencies = ["oauth" "omniauth"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1n5vk4by7hkyc09d9blrw2argry5awpw4gbw1l4n2s9b3j4qz037";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  omniauth-oauth2 = {
+    dependencies = ["oauth2" "omniauth"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "11mi36l9d97r77q99jnafdc1yaa0a9wahhpp7dj7ank8q52g7g79";
+      type = "gem";
+    };
+    version = "1.6.0";
+  };
+  omniauth-oauth2-generic = {
+    dependencies = ["omniauth-oauth2"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1m6vpip3rm1spx1x9y1kjczzailsph1xqgaakqylzq3jqkv18273";
+      type = "gem";
+    };
+    version = "0.2.2";
+  };
+  omniauth-salesforce = {
+    dependencies = ["omniauth" "omniauth-oauth2"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0sr7xmffx6dbsrvnh6spka5ljyzf69iac754xw5r1736py41qhpj";
+      type = "gem";
+    };
+    version = "1.0.5";
+  };
+  omniauth-saml = {
+    dependencies = ["omniauth" "ruby-saml"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "17lji8i4q9k3yi8lmjwlw8rfpp2sc74jv8d6flgq85lg5brfqq1p";
+      type = "gem";
+    };
+    version = "1.10.0";
+  };
+  omniauth-shibboleth = {
+    dependencies = ["omniauth"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04yin7j8xpr8llvank3ivzahqkc6ss5bppc7q6znzdswxmf75fxh";
+      type = "gem";
+    };
+    version = "1.3.0";
+  };
+  omniauth-twitter = {
+    dependencies = ["omniauth-oauth" "rack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0r5j65hkpgzhvvbs90id3nfsjgsad6ymzggbm7zlaxvnrmvnrk65";
+      type = "gem";
+    };
+    version = "1.4.0";
+  };
+  omniauth-ultraauth = {
+    dependencies = ["omniauth_openid_connect"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1z8gz8ql4vb8y5n4lr67afnjmp23bpqi18dmda5psigvd2jddyn8";
+      type = "gem";
+    };
+    version = "0.0.2";
+  };
+  omniauth_crowd = {
+    dependencies = ["activesupport" "nokogiri" "omniauth"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "12g5ck05h6kr9mnp870x8pkxsadg81ca70hg8n3k8xx007lfw2q7";
+      type = "gem";
+    };
+    version = "2.2.3";
+  };
+  omniauth_openid_connect = {
+    dependencies = ["addressable" "omniauth" "openid_connect"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0awybp2jnai0w2qfgqnr3f478g3nbg5r0vcm6pa5g8k5f4rs19qr";
+      type = "gem";
+    };
+    version = "0.3.3";
+  };
+  open4 = {
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1cgls3f9dlrpil846q0w7h66vsc33jqn84nql4gcqkk221rh7px1";
+      type = "gem";
+    };
+    version = "1.3.4";
+  };
+  openid_connect = {
+    dependencies = ["activemodel" "attr_required" "json-jwt" "rack-oauth2" "swd" "tzinfo" "validate_email" "validate_url" "webfinger"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0r50vwf9hsf6r8gx5mwqs3w3w92l864ikiz9d0fcibqsr1489pbg";
+      type = "gem";
+    };
+    version = "1.1.8";
+  };
+  opentracing = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "11lj1d8vq0hkb5hjz8q4lm82cddrggpbb33dhqfn7rxhwsmxgdfy";
+      type = "gem";
+    };
+    version = "0.5.0";
+  };
+  optimist = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05jxrp3nbn5iilc1k7ir90mfnwc5abc9h78s5rpm3qafwqxvcj4j";
+      type = "gem";
+    };
+    version = "3.0.0";
+  };
+  org-ruby = {
+    dependencies = ["rubypants"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0x69s7aysfiwlcpd9hkvksfyld34d8kxr62adb59vjvh8hxfrjwk";
+      type = "gem";
+    };
+    version = "0.9.12";
+  };
+  orm_adapter = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fg9jpjlzf5y49qs9mlpdrgs5rpcyihq1s4k79nv9js0spjhnpda";
+      type = "gem";
+    };
+    version = "0.5.0";
+  };
+  os = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1s401gvhqgs2r8hh43ia205mxsy1wc0ib4k76wzkdpspfcnfr1rk";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  parallel = {
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "12jijkap4akzdv11lm08dglsc8jmc87xcgq6947i1s3qb69f4zn2";
+      type = "gem";
+    };
+    version = "1.19.1";
+  };
+  parser = {
+    dependencies = ["ast"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "19nxgcl6fbnr6da958hyvnycv441ryp2dw4ccmldah5bm8885z39";
+      type = "gem";
+    };
+    version = "2.7.0.4";
+  };
+  parslet = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "12nrzfwjphjlakb9pmpj70hgjwgzvnr8i1zfzddifgyd44vspl88";
+      type = "gem";
+    };
+    version = "1.8.2";
+  };
+  peek = {
+    dependencies = ["railties"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1k1yggixrcj72jlc98hi3jjd04x71dpynn8dxpcdhinyijniwl6n";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  pg = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1r01bqqhnk272dsyhg3cqx6j0aiwbcdnrwp7vxzc969mb5dgnnrl";
+      type = "gem";
+    };
+    version = "1.2.2";
+  };
+  png_quantizator = {
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0sqhydp5g9ly1kgfiya1fc6srmhf6avrb74j09z3lp0jck8d88v0";
+      type = "gem";
+    };
+    version = "0.2.1";
+  };
+  po_to_json = {
+    dependencies = ["json"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1xvanl437305mry1gd57yvcg7xrfhri91czr32bjr8j2djm8hwba";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
+  premailer = {
+    dependencies = ["addressable" "css_parser" "htmlentities"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1xrhmialxn5vlp1nmf40a4db9gji4h2wbzd7f43sz64z8lvrjj6h";
+      type = "gem";
+    };
+    version = "1.11.1";
+  };
+  premailer-rails = {
+    dependencies = ["actionmailer" "premailer"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bqi7d4f15vy3f1g0xb3bxmncfbzv9dd3ilhqj0plvw64xqbkp3w";
+      type = "gem";
+    };
+    version = "1.10.3";
+  };
+  proc_to_ast = {
+    dependencies = ["coderay" "parser" "unparser"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "14c65w48bbzp5lh1cngqd1y25kqvfnq1iy49hlzshl12dsk3z9wj";
+      type = "gem";
+    };
+    version = "0.1.0";
+  };
+  procto = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "13imvg1x50rz3r0yyfbhxwv72lbf7q28qx9l9nfbb91h2n9ch58c";
+      type = "gem";
+    };
+    version = "0.0.3";
+  };
+  prometheus-client-mmap = {
+    groups = ["metrics"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00d2c79xhz5k3fcclarjr1ffxbrvc6236f4rrvriad9kwqr7c1mp";
+      type = "gem";
+    };
+    version = "0.10.0";
+  };
+  pry = {
+    dependencies = ["coderay" "method_source"];
+    groups = ["default" "development" "test"];
+    platforms = [{
+      engine = "maglev";
+    } {
+      engine = "ruby";
+    }];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mh312k3y94sj0pi160wpia0ps8f4kmzvm505i6bvwynfdh7v30g";
+      type = "gem";
+    };
+    version = "0.11.3";
+  };
+  pry-byebug = {
+    dependencies = ["byebug" "pry"];
+    groups = ["development" "test"];
+    platforms = [{
+      engine = "maglev";
+    } {
+      engine = "ruby";
+    }];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1f9kj1qp14qb8crg2rdzf22pr6ngxvy4n6ipymla8q1yjr842625";
+      type = "gem";
+    };
+    version = "3.5.1";
+  };
+  pry-rails = {
+    dependencies = ["pry"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1cf4ii53w2hdh7fn8vhqpzkymmchjbwij4l3m7s6fsxvb9bn51j6";
+      type = "gem";
+    };
+    version = "0.3.9";
+  };
+  public_suffix = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1c6kq6s13idl2036b5lch8r7390f8w82cal8hcp4ml76fm2vdac7";
+      type = "gem";
+    };
+    version = "4.0.3";
+  };
+  pyu-ruby-sasl = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1rcpjiz9lrvyb3rd8k8qni0v4ps08psympffyldmmnrqayyad0sn";
+      type = "gem";
+    };
+    version = "0.0.3.3";
+  };
+  raabro = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xzdmbn48753f6k0ckirp8ja5p0xn1a92wbwxfyggyhj0hza9ylq";
+      type = "gem";
+    };
+    version = "1.1.6";
+  };
+  rack = {
+    groups = ["default" "development" "kerberos" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mxzk12xylrz6d4n9jj5jasfscbf1pbk4idrb0nlf327lx9rwfkk";
+      type = "gem";
+    };
+    version = "2.0.9";
+  };
+  rack-accept = {
+    dependencies = ["rack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18jdipx17b4ki33cfqvliapd31sbfvs4mv727awynr6v95a7n936";
+      type = "gem";
+    };
+    version = "0.4.5";
+  };
+  rack-attack = {
+    dependencies = ["rack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15b8lk54j2abqhpn588b1wvbzwmxwa7iql6241kxpjc0gyb51p0z";
+      type = "gem";
+    };
+    version = "6.3.0";
+  };
+  rack-cors = {
+    dependencies = ["rack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "07dppmm1ah1gs31sb5byrkkady9vqzwjmpd92c8425nc6yzwknik";
+      type = "gem";
+    };
+    version = "1.0.6";
+  };
+  rack-oauth2 = {
+    dependencies = ["activesupport" "attr_required" "httpclient" "json-jwt" "rack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0kmxj9hbjhhcs3yyb433s82hkpmzb536m0mwfadjiaisganx1cii";
+      type = "gem";
+    };
+    version = "1.9.3";
+  };
+  rack-protection = {
+    dependencies = ["rack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15167q25rmxipqwi6hjqj3i1byi9iwl3xq9b7mdar7qiz39pmjsk";
+      type = "gem";
+    };
+    version = "2.0.5";
+  };
+  rack-proxy = {
+    dependencies = ["rack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1bpbcb9ch94ha2q7gdri88ry7ch0z6ian289kah9ayxyqg19j6f4";
+      type = "gem";
+    };
+    version = "0.6.0";
+  };
+  rack-test = {
+    dependencies = ["rack"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rh8h376mx71ci5yklnpqqn118z3bl67nnv5k801qaqn1zs62h8m";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  rack-timeout = {
+    groups = ["puma"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15xph8h6v0lvq9pxm3bc9i9pnk2k68rgdr1mp0dw4l7v1xvhs78a";
+      type = "gem";
+    };
+    version = "0.5.1";
+  };
+  rails = {
+    dependencies = ["actioncable" "actionmailbox" "actionmailer" "actionpack" "actiontext" "actionview" "activejob" "activemodel" "activerecord" "activestorage" "activesupport" "railties" "sprockets-rails"];
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1rvkzj2hn1rlxc0ndn742mgbdpq0l38i6pjhhwgpaq519jpkk41r";
+      type = "gem";
+    };
+    version = "6.0.3";
+  };
+  rails-controller-testing = {
+    dependencies = ["actionpack" "actionview" "activesupport"];
+    groups = ["test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1m1rklj6pvzi4fydxcmcv4q0xd7913hhhw1hw530nfz1wkl7vjlf";
+      type = "gem";
+    };
+    version = "1.0.4";
+  };
+  rails-dom-testing = {
+    dependencies = ["activesupport" "nokogiri"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1lfq2a7kp2x64dzzi5p4cjcbiv62vxh9lyqk2f0rqq3fkzrw8h5i";
+      type = "gem";
+    };
+    version = "2.0.3";
+  };
+  rails-html-sanitizer = {
+    dependencies = ["loofah"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1icpqmxbppl4ynzmn6dx7wdil5hhq6fz707m9ya6d86c7ys8sd4f";
+      type = "gem";
+    };
+    version = "1.3.0";
+  };
+  rails-i18n = {
+    dependencies = ["i18n" "railties"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05mcgv748vppnm3fnml37wjy3dw61wj8vfw14ldaj1yx1bmkhb07";
+      type = "gem";
+    };
+    version = "6.0.0";
+  };
+  railties = {
+    dependencies = ["actionpack" "activesupport" "method_source" "rake" "thor"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01h2ifvvmlzmq8dmpqkhrrmj704v79r1vkcrnvmrqhf4a9bbyqsi";
+      type = "gem";
+    };
+    version = "6.0.3";
+  };
+  rainbow = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bb2fpjspydr6x0s8pn1pqkzmxszvkfapv0p4627mywl7ky4zkhk";
+      type = "gem";
+    };
+    version = "3.0.0";
+  };
+  raindrops = {
+    groups = ["metrics" "unicorn"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0zjja00mzgx2lddb7qrn14k7qrnwhf4bpmnlqj78m1pfxh7svync";
+      type = "gem";
+    };
+    version = "0.19.1";
+  };
+  rake = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1cvaqarr1m84mhc006g3l1vw7sa5qpkcw0138lsxlf769zdllsgp";
+      type = "gem";
+    };
+    version = "12.3.3";
+  };
+  rb-fsevent = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fbpmjypwxkb8r7y1kmhmyp6gawa4byw0yb3jc3dn9ly4ld9lizf";
+      type = "gem";
+    };
+    version = "0.10.2";
+  };
+  rb-inotify = {
+    dependencies = ["ffi"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yfsgw5n7pkpyky6a9wkf1g9jafxb0ja7gz0qw0y14fd2jnzfh71";
+      type = "gem";
+    };
+    version = "0.9.10";
+  };
+  rblineprof = {
+    dependencies = ["debugger-ruby_core_source"];
+    groups = ["development"];
+    platforms = [{
+      engine = "maglev";
+    } {
+      engine = "ruby";
+    }];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0m58kdjgncwf0h1qry3qk5h4bg8sj0idykqqijqcrr09mxfd9yc6";
+      type = "gem";
+    };
+    version = "0.3.6";
+  };
+  rbtrace = {
+    dependencies = ["ffi" "msgpack" "optimist"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1lwsq08i0aj8na5q5ba3gg02sx3wl58fi6m52svl5p7cy56ycdwi";
+      type = "gem";
+    };
+    version = "0.4.11";
+  };
+  rdoc = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0zh39dpsqlhhi4aba1sbrk504d88p38djk8cansjq0fwndq7w4zb";
+      type = "gem";
+    };
+    version = "6.1.2";
+  };
+  re2 = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "16q71cc9wx342c697q18pkz19ym4ncjd97hcw4v6f1mgflkdv400";
+      type = "gem";
+    };
+    version = "1.2.0";
+  };
+  recaptcha = {
+    dependencies = ["json"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "121pkq8kwqjh4l751xzx15bjp5vmf5pirfmpb11h71zsiavjqv6w";
+      type = "gem";
+    };
+    version = "4.13.1";
+  };
+  recursive-open-struct = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0acrxff186sn6sxdfiy7nacjgwak5cqd7jha9v3kshpf3sfr7qd1";
+      type = "gem";
+    };
+    version = "1.1.1";
+  };
+  RedCloth = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0m9dv7ya9q93r8x1pg2gi15rxlbck8m178j1fz7r5v6wr1avrrqy";
+      type = "gem";
+    };
+    version = "4.3.2";
+  };
+  redis = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08v2y91q1pmv12g9zsvwj66w3s8j9d82yrmxgyv4y4gz380j3wyh";
+      type = "gem";
+    };
+    version = "4.1.3";
+  };
+  redis-actionpack = {
+    dependencies = ["actionpack" "redis-rack" "redis-store"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0c2276zzc0044zh37a8frx1v7hnra7z7k126154ps7njbqngfdv3";
+      type = "gem";
+    };
+    version = "5.2.0";
+  };
+  redis-activesupport = {
+    dependencies = ["activesupport" "redis-store"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "14a3z8810j02ysvg53f3mvcfb4rw34m91yfd19zy9y5lb3yv2g59";
+      type = "gem";
+    };
+    version = "5.2.0";
+  };
+  redis-namespace = {
+    dependencies = ["redis"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0r7daagrjjribn098dxwbv9zivrbq2rsffbkj2ccxyn9lmjjbgah";
+      type = "gem";
+    };
+    version = "1.6.0";
+  };
+  redis-rack = {
+    dependencies = ["rack" "redis-store"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ldw5sxyd80pv0gr89kvn6ziszlbs8lv1a573fkm6d0f11fps413";
+      type = "gem";
+    };
+    version = "2.1.2";
+  };
+  redis-rails = {
+    dependencies = ["redis-actionpack" "redis-activesupport" "redis-store"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hjvkyaw5hgz7v6fgwdk8pb966z44h1gv8jarmb0gwhkqmjnsh40";
+      type = "gem";
+    };
+    version = "5.0.2";
+  };
+  redis-store = {
+    dependencies = ["redis"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1isqzzds9kszc2nn8jiy8ikry01qspn7637ba9z2k6sk7vky46d9";
+      type = "gem";
+    };
+    version = "1.8.1";
+  };
+  regexp_parser = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0dsgjb3kszk6a82s6gl0h6a8vncjrxmcbk0r4mcxcdcad2b7vb2d";
+      type = "gem";
+    };
+    version = "1.5.1";
+  };
+  regexp_property_values = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05ka0bkhghs9b9pv6q443k8y1c5xalmm0vylj9zd450ksncxj1yr";
+      type = "gem";
+    };
+    version = "0.3.4";
+  };
+  representable = {
+    dependencies = ["declarative" "declarative-option" "uber"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qm9rgi1j5a6nv726ka4mmixivlxfsg91h8rpp72wwd4vqbkkm07";
+      type = "gem";
+    };
+    version = "3.0.4";
+  };
+  request_store = {
+    dependencies = ["rack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0cx74kispmnw3ljwb239j65a2j14n8jlsygy372hrsa8mxc71hxi";
+      type = "gem";
+    };
+    version = "1.5.0";
+  };
+  responders = {
+    dependencies = ["actionpack" "railties"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1p7pqcfq33q1z4xlp4qm94w4h3fzc1yvr3cny16d00i8b20v4rx2";
+      type = "gem";
+    };
+    version = "3.0.0";
+  };
+  rest-client = {
+    dependencies = ["http-cookie" "mime-types" "netrc"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1hzcs2r7b5bjkf2x2z3n8z6082maz0j8vqjiciwgg3hzb63f958j";
+      type = "gem";
+    };
+    version = "2.0.2";
+  };
+  retriable = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1q48hqws2dy1vws9schc0kmina40gy7sn5qsndpsfqdslh65snha";
+      type = "gem";
+    };
+    version = "3.1.2";
+  };
+  rinku = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "11cakxzp7qi04d41hbqkh92n52mm4z2ba8sqyhxbmfi4kypmls9y";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
+  rotp = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1w8d6svhq3y9y952r8cqirxvdx12zlkb7zxjb44bcbidb2sisy4d";
+      type = "gem";
+    };
+    version = "2.1.2";
+  };
+  rouge = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "102rc07d78k5bkl0s9nd1gw6wz0w0zcvg4g5sl7z9xxi4r793c35";
+      type = "gem";
+    };
+    version = "3.19.0";
+  };
+  rqrcode = {
+    dependencies = ["chunky_png"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "188n1mvc7klrlw30bai16sdg4yannmy7cz0sg0nvm6f1kjx5qflb";
+      type = "gem";
+    };
+    version = "0.7.0";
+  };
+  rqrcode-rails3 = {
+    dependencies = ["rqrcode"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1i28rwmj24ssk91chn0g7qsnvn003y3s5a7jsrg3w4l5ckr841bg";
+      type = "gem";
+    };
+    version = "0.1.7";
+  };
+  rspec = {
+    dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1hzsig4pi9ybr0xl5540m1swiyxa74c8h09225y5sdh2rjkkg84h";
+      type = "gem";
+    };
+    version = "3.9.0";
+  };
+  rspec-core = {
+    dependencies = ["rspec-support"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1qzc1wdjb1qnbimjl8i1q1r1z5hdv2lmcw7ysz7jawj4d1cvpqvd";
+      type = "gem";
+    };
+    version = "3.9.1";
+  };
+  rspec-expectations = {
+    dependencies = ["diff-lcs" "rspec-support"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0fjbwvq7qaz6h3sh1bs9q2qiy4zwcrc8f7xwv82dx2bc09dmqzhd";
+      type = "gem";
+    };
+    version = "3.9.1";
+  };
+  rspec-mocks = {
+    dependencies = ["diff-lcs" "rspec-support"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "19vmdqym1v2g1zbdnq37zwmyj87y9yc9ijwc8js55igvbb9hx0mr";
+      type = "gem";
+    };
+    version = "3.9.1";
+  };
+  rspec-parameterized = {
+    dependencies = ["binding_ninja" "parser" "proc_to_ast" "rspec" "unparser"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1c0892jbaznnldk1wi24qxm70g4zhw2idqx516rhgdzgd7yh5j31";
+      type = "gem";
+    };
+    version = "0.4.2";
+  };
+  rspec-rails = {
+    dependencies = ["actionpack" "activesupport" "railties" "rspec-core" "rspec-expectations" "rspec-mocks" "rspec-support"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01cyd449g4lsgrlck7nn3ynn8c8vwfhjb913y05wil56y77wsfkl";
+      type = "gem";
+    };
+    version = "4.0.0";
+  };
+  rspec-retry = {
+    dependencies = ["rspec-core"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nnqcg2yd3nn187zbvh4cgx8xsvdk56lz1985qy7232v7i8yidw6";
+      type = "gem";
+    };
+    version = "0.6.1";
+  };
+  rspec-support = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1zwpyq1na23pvgacpxs2v9nwfbjbw6x3arca5j3l1xagigqmzhc3";
+      type = "gem";
+    };
+    version = "3.9.2";
+  };
+  rspec_junit_formatter = {
+    dependencies = ["rspec-core"];
+    groups = ["test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1aynmrgnv26pkprrajvp7advb8nbh0x4pkwk6jwq8qmwzarzk21p";
+      type = "gem";
+    };
+    version = "0.4.1";
+  };
+  rspec_profiling = {
+    dependencies = ["activerecord" "pg" "rails" "sqlite3"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1g7q7gav26bpiprx4dhlvdh4zdrhwiky9jbmsp14gyfiabqdz4sz";
+      type = "gem";
+    };
+    version = "0.0.5";
+  };
+  rubocop = {
+    dependencies = ["jaro_winkler" "parallel" "parser" "rainbow" "ruby-progressbar" "unicode-display_width"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wpyass9qb2wvq8zsc7wdzix5xy2ldiv66wnx8mwwprz2dcvzayk";
+      type = "gem";
+    };
+    version = "0.74.0";
+  };
+  rubocop-gitlab-security = {
+    dependencies = ["rubocop"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0v0040kpx46fxz3p7dsdjgvsx89qjhwy17n8vxnqg9a7g1rfvxln";
+      type = "gem";
+    };
+    version = "0.1.1";
+  };
+  rubocop-performance = {
+    dependencies = ["rubocop"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ssizdnyai2hxdp6nd4b9hqyrc4gwhjlznhrdliz8wj4p8cvas44";
+      type = "gem";
+    };
+    version = "1.4.1";
+  };
+  rubocop-rails = {
+    dependencies = ["rack" "rubocop"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vvrwcxzbqiqdjxakxmjg4c3dcrlpb00i1d3i0s1gdk0ch79byag";
+      type = "gem";
+    };
+    version = "2.4.0";
+  };
+  rubocop-rspec = {
+    dependencies = ["rubocop"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1dypzxzrm8lh1gip9pn93p1nwamzkqsljy6mcv2ngw9zqsial233";
+      type = "gem";
+    };
+    version = "1.37.0";
+  };
+  ruby-enum = {
+    dependencies = ["i18n"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0h62avini866kxpjzqxlqnajma3yvj0y25l6hn9h2mv5pp6fcrhx";
+      type = "gem";
+    };
+    version = "0.7.2";
+  };
+  ruby-fogbugz = {
+    dependencies = ["crack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1jj0gpkycbrivkh2q3429vj6mbgx6axxisg69slj3c4mgvzfgchm";
+      type = "gem";
+    };
+    version = "0.2.1";
+  };
+  ruby-prof = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0g1j37fy53ly6351asfcnik033gwkp4kjma7lji1yklmj86d4dg7";
+      type = "gem";
+    };
+    version = "1.3.1";
+  };
+  ruby-progressbar = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1k77i0d4wsn23ggdd2msrcwfy0i376cglfqypkk2q77r2l3408zf";
+      type = "gem";
+    };
+    version = "1.10.1";
+  };
+  ruby-saml = {
+    dependencies = ["nokogiri"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0k9d88fa8bp5szivbwq0qi960y3r2kp6jhnkmsp3n2rvwpn936i3";
+      type = "gem";
+    };
+    version = "1.7.2";
+  };
+  ruby-statistics = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xmd9dk1fcmii38apwn3py00qfqxd5yzylafm49n24plzwv913nh";
+      type = "gem";
+    };
+    version = "2.1.2";
+  };
+  ruby_dep = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1c1bkl97i9mkcvkn1jks346ksnvnnp84cs22gwl0vd7radybrgy5";
+      type = "gem";
+    };
+    version = "1.5.0";
+  };
+  ruby_parser = {
+    dependencies = ["sexp_processor"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0s3hsccsmrirc2hy3r51kl8g9cfmcn7jxaa0asadg1kn78h1sgr7";
+      type = "gem";
+    };
+    version = "3.13.1";
+  };
+  rubyntlm = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1p6bxsklkbcqni4bcq6jajc2n57g0w5rzn4r49c3lb04wz5xg0dy";
+      type = "gem";
+    };
+    version = "0.6.2";
+  };
+  rubypants = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1vpdkrc4c8qhrxph41wqwswl28q5h5h994gy4c1mlrckqzm3hzph";
+      type = "gem";
+    };
+    version = "0.2.0";
+  };
+  rubyzip = {
+    groups = ["default" "development" "omnibus" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1gz0ri0pa2xr7b6bf66yjc2wfvk51f4gi6yk7bklwl1nr65zc4gz";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
+  rugged = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rdidxgpk1b6y1jq9v77lcx5khq0s9q0s253lr8x57d3hk43iskx";
+      type = "gem";
+    };
+    version = "0.28.4.1";
+  };
+  safe_yaml = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094";
+      type = "gem";
+    };
+    version = "1.0.4";
+  };
+  sanitize = {
+    dependencies = ["crass" "nokogiri" "nokogumbo"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0j4j2a2mkk1a70vbx959pvx0gvr1zb9snjwvsppwj28bp0p0b2bv";
+      type = "gem";
+    };
+    version = "4.6.6";
+  };
+  sass = {
+    dependencies = ["sass-listen"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10401m2xlv6vaxfwzy4xxmk51ddcnkvwi918cw3jkki0qqdl7d8v";
+      type = "gem";
+    };
+    version = "3.5.5";
+  };
+  sass-listen = {
+    dependencies = ["rb-fsevent" "rb-inotify"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xw3q46cmahkgyldid5hwyiwacp590zj2vmswlll68ryvmvcp7df";
+      type = "gem";
+    };
+    version = "4.0.0";
+  };
+  sassc = {
+    dependencies = ["ffi" "rake"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1sr4825rlwsrl7xrsm0sgalcpf5zgp4i56dbi3qxfa9lhs8r6zh4";
+      type = "gem";
+    };
+    version = "2.0.1";
+  };
+  sassc-rails = {
+    dependencies = ["railties" "sassc" "sprockets" "sprockets-rails" "tilt"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18mgdjxdzpbw92zrllynxw7jn7yihi85j3dg7i4f6c39w1scqkbn";
+      type = "gem";
+    };
+    version = "2.1.0";
+  };
+  sawyer = {
+    dependencies = ["addressable" "faraday"];
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yrdchs3psh583rjapkv33mljdivggqn99wkydkjdckcjn43j3cz";
+      type = "gem";
+    };
+    version = "0.8.2";
+  };
+  scss_lint = {
+    dependencies = ["rake" "sass"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01bfkrjn1i0hfg1ifwn1rs7vqwdbdw158krwr5fm6iasd9zgl10g";
+      type = "gem";
+    };
+    version = "0.56.0";
+  };
+  seed-fu = {
+    dependencies = ["activerecord" "activesupport"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0x6gclryl0hds3zms095d2iyafcvm2kfrm7362vrkxws7r2775pi";
+      type = "gem";
+    };
+    version = "2.3.7";
+  };
+  selenium-webdriver = {
+    dependencies = ["childprocess" "rubyzip"];
+    groups = ["test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "11abil34dr8p1kw7hlaqd6kr430v4srmhzf72zzqvhcimlfvm4yb";
+      type = "gem";
+    };
+    version = "3.142.6";
+  };
+  sentry-raven = {
+    dependencies = ["faraday"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1j9rwbig24ry0smgvmkzdjrzyszniaswipinvflzxzzaz52v7483";
+      type = "gem";
+    };
+    version = "2.9.0";
+  };
+  settingslogic = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ria5zcrk1nf0b9yia15mdpzw0dqr6wjpbj8dsdbbps81lfsj9ar";
+      type = "gem";
+    };
+    version = "2.0.9";
+  };
+  sexp_processor = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0w24rgmyjf7yz0xr2qhbr8z48h4m6gvbggr8nc1pldwn9rbi04b7";
+      type = "gem";
+    };
+    version = "4.12.0";
+  };
+  shellany = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ryyzrj1kxmnpdzhlv4ys3dnl2r5r3d2rs2jwzbnd1v96a8pl4hf";
+      type = "gem";
+    };
+    version = "0.0.1";
+  };
+  shoulda-matchers = {
+    dependencies = ["activesupport"];
+    groups = ["test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1s6a2i39lsqq8rrkk2pddqcb10bsihxy3v5gpnc2gk8xakj1brdq";
+      type = "gem";
+    };
+    version = "4.0.1";
+  };
+  sidekiq = {
+    dependencies = ["connection_pool" "rack" "rack-protection" "redis"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "131zv8i341bkacxx7n1id2cmblkbs379farnibqg8c7bycd1iajq";
+      type = "gem";
+    };
+    version = "5.2.7";
+  };
+  sidekiq-cron = {
+    dependencies = ["fugit" "sidekiq"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1aliswahmpxn1ib2brn4126gk97ac3zdnwr71mn8vzbr3vdd7fl0";
+      type = "gem";
+    };
+    version = "1.0.4";
+  };
+  signet = {
+    dependencies = ["addressable" "faraday" "jwt" "multi_json"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1f5d3bz5bjc4b0r2jmqd15qf07lgsqkgd25f0h46jihrf9l5fsi4";
+      type = "gem";
+    };
+    version = "0.11.0";
+  };
+  simple_po_parser = {
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08wkp4gcrd89k5yari9j94if9ffkj3rka4llcwrhdgsi3l15p5f3";
+      type = "gem";
+    };
+    version = "1.1.2";
+  };
+  simplecov = {
+    dependencies = ["docile" "simplecov-html"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ycx5q699ycbjhp28sjbkrd62vwxlrb7fh4v2m7sjsp2qhi6cf6r";
+      type = "gem";
+    };
+    version = "0.18.5";
+  };
+  simplecov-html = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1v7b4mf7njw8kv4ghl4q7mwz3q0flbld7v8blp4m4m3n3aq11bn9";
+      type = "gem";
+    };
+    version = "0.12.2";
+  };
+  sixarm_ruby_unaccent = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "11237b8r8p7fc0cpn04v9wa7ggzq0xm6flh10h1lnb6zgc3schq0";
+      type = "gem";
+    };
+    version = "1.2.0";
+  };
+  slack-messenger = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1s2bff13nd21r28528vfb2ly5718r812izww2g0vxksjq7xgr2c7";
+      type = "gem";
+    };
+    version = "2.3.3";
+  };
+  snowplow-tracker = {
+    dependencies = ["contracts"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05136477ifa567aym9k8nqqmwv3plbczgh9x9fbz86860vym5v4w";
+      type = "gem";
+    };
+    version = "0.6.1";
+  };
+  spring = {
+    dependencies = ["activesupport"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "168yz9c1fv21wc5i8q7n43b9nk33ivg3ws1fn6x0afgryz3ssx75";
+      type = "gem";
+    };
+    version = "2.0.2";
+  };
+  spring-commands-rspec = {
+    dependencies = ["spring"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0b0svpq3md1pjz5drpa5pxwg8nk48wrshq8lckim4x3nli7ya0k2";
+      type = "gem";
+    };
+    version = "1.0.4";
+  };
+  sprockets = {
+    dependencies = ["concurrent-ruby" "rack"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "182jw5a0fbqah5w9jancvfmjbk88h8bxdbwnl4d3q809rpxdg8ay";
+      type = "gem";
+    };
+    version = "3.7.2";
+  };
+  sprockets-rails = {
+    dependencies = ["actionpack" "activesupport" "sprockets"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ab42pm8p5zxpv3sfraq45b9lj39cz9mrpdirm30vywzrwwkm5p1";
+      type = "gem";
+    };
+    version = "3.2.1";
+  };
+  sqlite3 = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01ifzp8nwzqppda419c9wcvr8n82ysmisrs0hph9pdmv1lpa4f5i";
+      type = "gem";
+    };
+    version = "1.3.13";
+  };
+  sshkey = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "03bkn55qsng484iqwz2lmm6rkimj01vsvhwk661s3lnmpkl65lbp";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
+  stackprof = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1g2zzasjdr1qnwmpmn28ddv2z9jsnv4w5raiz26y9h1jh03sagqd";
+      type = "gem";
+    };
+    version = "0.2.15";
+  };
+  state_machines = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00mi16hg3rhkxz4y58s173cbnjlba41y9bfcim90p4ja6yfj9ri3";
+      type = "gem";
+    };
+    version = "0.5.0";
+  };
+  state_machines-activemodel = {
+    dependencies = ["activemodel" "state_machines"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05c2dw3115zj3pmyyqh2iypc7afj8ibhrghisg0d61z7gzmir1rd";
+      type = "gem";
+    };
+    version = "0.7.1";
+  };
+  state_machines-activerecord = {
+    dependencies = ["activerecord" "state_machines-activemodel"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "12g7yqy11fpfiprzc86pwa9jjky1h3haxj37kg47467fgg43p511";
+      type = "gem";
+    };
+    version = "0.6.0";
+  };
+  swd = {
+    dependencies = ["activesupport" "attr_required" "httpclient"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1s2vjb6f13za7p1iycl2p73d3p202xa6xny9fjrp8ynwsqix7lyd";
+      type = "gem";
+    };
+    version = "1.1.2";
+  };
+  sys-filesystem = {
+    dependencies = ["ffi"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "092wj7936i5inzafi09wqh5c8dbak588q21k652dsrdjf5qi10zq";
+      type = "gem";
+    };
+    version = "1.1.6";
+  };
+  sysexits = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qjng6pllznmprzx8vb0zg0c86hdrkyjs615q41s9fjpmv2430jr";
+      type = "gem";
+    };
+    version = "1.2.0";
+  };
+  temple = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "060zzj7c2kicdfk6cpnn40n9yjnhfrr13d0rsbdhdij68chp2861";
+      type = "gem";
+    };
+    version = "0.8.2";
+  };
+  terminal-table = {
+    dependencies = ["unicode-display_width"];
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1512cngw35hsmhvw4c05rscihc59mnj09m249sm9p3pik831ydqk";
+      type = "gem";
+    };
+    version = "1.8.0";
+  };
+  test-prof = {
+    groups = ["test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ag33hv8ky8nxpsra9jkam9npi1jjwb7f7zmvi2najci5mdr10nr";
+      type = "gem";
+    };
+    version = "0.10.0";
+  };
+  text = {
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1x6kkmsr49y3rnrin91rv8mpc3dhrf3ql08kbccw8yffq61brfrg";
+      type = "gem";
+    };
+    version = "1.3.1";
+  };
+  thin = {
+    dependencies = ["daemons" "eventmachine" "rack"];
+    groups = ["development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nagbf9pwy1vg09k6j4xqhbjjzrg5dwzvkn4ffvlj76fsn6vv61f";
+      type = "gem";
+    };
+    version = "1.7.2";
+  };
+  thor = {
+    groups = ["default" "development" "omnibus" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1yhrnp9x8qcy5vc7g438amd5j9sw83ih7c30dr6g6slgw9zj3g29";
+      type = "gem";
+    };
+    version = "0.20.3";
+  };
+  thread_safe = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy";
+      type = "gem";
+    };
+    version = "0.3.6";
+  };
+  thrift = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "02p107kwx7jnkh6fpdgvaji0xdg6xkaarngkqjml6s4zny4m8slv";
+      type = "gem";
+    };
+    version = "0.11.0.0";
+  };
+  tilt = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rn8z8hda4h41a64l0zhkiwz2vxw9b1nb70gl37h1dg2k874yrlv";
+      type = "gem";
+    };
+    version = "2.0.10";
+  };
+  timecop = {
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0d7mm786180v4kzvn1f77rhfppsg5n0sq2bdx63x9nv114zm8jrp";
+      type = "gem";
+    };
+    version = "0.9.1";
+  };
+  timfel-krb5-auth = {
+    groups = ["default" "kerberos"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "105vajc0jkqgcx1wbp0ad262sdry4l1irk7jpaawv8vzfjfqqf5b";
+      type = "gem";
+    };
+    version = "0.8.3";
+  };
+  toml = {
+    dependencies = ["parslet"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xj460rkyqvg74xc8kivmbvgc46c6mm7r8mbjs5m2gq8khf8sbki";
+      type = "gem";
+    };
+    version = "0.2.0";
+  };
+  toml-rb = {
+    dependencies = ["citrus"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0pz6z1mc7rnv4chkbx3mdn4q1lpp0j596dq57kbq39jv0wn0wi4d";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  truncato = {
+    dependencies = ["htmlentities" "nokogiri"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0z36dprfj9l4jwgwb2wv4v3cilm53v7i1ywfmm5f1dl352id3ak4";
+      type = "gem";
+    };
+    version = "0.7.11";
+  };
+  tzinfo = {
+    dependencies = ["thread_safe"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1i3jh086w1kbdj3k5l60lc3nwbanmzdf8yjj3mlrx9b2gjjxhi9r";
+      type = "gem";
+    };
+    version = "1.2.7";
+  };
+  u2f = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lsm1hvwcaa9sq13ab1l1zjk0fgcy951ay11v2acx0h6q1iv21vr";
+      type = "gem";
+    };
+    version = "0.2.1";
+  };
+  uber = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1p1mm7mngg40x05z52md3mbamkng0zpajbzqjjwmsyw0zw3v9vjv";
+      type = "gem";
+    };
+    version = "0.1.0";
+  };
+  uglifier = {
+    dependencies = ["execjs" "json"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0mzs64z3m1b98rh6ssxpqfz9sc87f6ml6906b0m57vydzfgrh1cz";
+      type = "gem";
+    };
+    version = "2.7.2";
+  };
+  unf = {
+    dependencies = ["unf_ext"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bh2cf73i2ffh4fcpdn9ir4mhq8zi50ik0zqa1braahzadx536a9";
+      type = "gem";
+    };
+    version = "0.1.4";
+  };
+  unf_ext = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "06p1i6qhy34bpb8q8ms88y6f2kz86azwm098yvcc0nyqk9y729j1";
+      type = "gem";
+    };
+    version = "0.0.7.5";
+  };
+  unicode-display_width = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08kfiniak1pvg3gn5k6snpigzvhvhyg7slmm0s2qx5zkj62c1z2w";
+      type = "gem";
+    };
+    version = "1.6.0";
+  };
+  unicode_plot = {
+    dependencies = ["enumerable-statistics"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09cv90pi414ns1knbi0zjbn59071qjgym974jpsgj7yjh70dpj0g";
+      type = "gem";
+    };
+    version = "0.0.4";
+  };
+  unicode_utils = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0h1a5yvrxzlf0lxxa1ya31jcizslf774arnsd89vgdhk4g7x08mr";
+      type = "gem";
+    };
+    version = "1.4.0";
+  };
+  unicorn = {
+    dependencies = ["kgio" "raindrops"];
+    groups = ["unicorn"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1cznkq0agsm7s66nbqbalmq5nlc5cdpd2h88r8jdzsc7wsi5a098";
+      type = "gem";
+    };
+    version = "5.5.5";
+  };
+  unicorn-worker-killer = {
+    dependencies = ["get_process_mem" "unicorn"];
+    groups = ["unicorn"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rrdxpwdsapx47axjin8ymxb4f685qlpx8a26bql4ay1559c3gva";
+      type = "gem";
+    };
+    version = "0.4.4";
+  };
+  uniform_notifier = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vm4aix8jmv42s1x58m3lj3xwkbxyn9qn6lzhhig0d1j8fv6j30c";
+      type = "gem";
+    };
+    version = "1.13.0";
+  };
+  unleash = {
+    dependencies = ["murmurhash3"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xs2ml9cwskddsxick3a9wnasy7q6wmc0dbydfcaspfl2cjmp1rk";
+      type = "gem";
+    };
+    version = "0.1.5";
+  };
+  unparser = {
+    dependencies = ["abstract_type" "adamantium" "concord" "diff-lcs" "equalizer" "parser" "procto"];
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qg1apxlnf4kxfj9jpm6hhv73jsncbs4zpsgyan32p5r331q1gmx";
+      type = "gem";
+    };
+    version = "0.4.7";
+  };
+  valid_email = {
+    dependencies = ["activemodel" "mail"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0w3587sa7d1a51djyla57pbv9v105jsqvxhkg6vbxi343fsm455q";
+      type = "gem";
+    };
+    version = "0.1.3";
+  };
+  validate_email = {
+    dependencies = ["activemodel" "mail"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1r1fz29l699arka177c9xw7409d1a3ff95bf7a6pmc97slb91zlx";
+      type = "gem";
+    };
+    version = "0.1.6";
+  };
+  validate_url = {
+    dependencies = ["activemodel" "public_suffix"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1k0bfxzvdcf1nrqhvnyhijc4mwab9wn4qvqb0ynq6p8dj0f866zi";
+      type = "gem";
+    };
+    version = "1.0.8";
+  };
+  validates_hostname = {
+    dependencies = ["activerecord" "activesupport"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04p1l0v98j4ffvaks1ig9mygx5grpbpdgz7haq3mygva9iy8ykja";
+      type = "gem";
+    };
+    version = "1.0.6";
+  };
+  version_sorter = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hbdw3vh856f5yg5mbj4498l6vh90cd3pn22ikr3ranzkrh73l3s";
+      type = "gem";
+    };
+    version = "2.2.4";
+  };
+  virtus = {
+    dependencies = ["axiom-types" "coercible" "descendants_tracker" "equalizer"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "06iphwi3c4f7y9i2rvhvaizfswqbaflilziz4dxqngrdysgkn1fk";
+      type = "gem";
+    };
+    version = "1.0.5";
+  };
+  vmstat = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vb5mwc71p8rlm30hnll3lb4z70ipl5rmilskpdrq2mxwfilcm5b";
+      type = "gem";
+    };
+    version = "2.3.0";
+  };
+  warden = {
+    dependencies = ["rack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fr9n9i9r82xb6i61fdw4xgc7zjv7fsdrr4k0njchy87iw9fl454";
+      type = "gem";
+    };
+    version = "1.2.8";
+  };
+  webfinger = {
+    dependencies = ["activesupport" "httpclient"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0m0jh8k7c0ifh2jhbn7ihqrmn5fi754wflva97zgy70hpdvxyjar";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  webmock = {
+    dependencies = ["addressable" "crack" "hashdiff"];
+    groups = ["test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0gg0c2sxq7rni0b93w47h7p7cn590xdhf5va7ska48inpipwlgxp";
+      type = "gem";
+    };
+    version = "3.5.1";
+  };
+  webpack-rails = {
+    dependencies = ["railties"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0fsjxw730bh4k1dfnbjm645fgjyqrh830l1z7brqbsm6306ig1rr";
+      type = "gem";
+    };
+    version = "0.9.11";
+  };
+  websocket-driver = {
+    dependencies = ["websocket-extensions"];
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1bxamwqldmy98hxs5pqby3andws14hl36ch78g0s81gaz9b91nj2";
+      type = "gem";
+    };
+    version = "0.7.1";
+  };
+  websocket-extensions = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00i624ng1nvkz1yckj3f8yxxp6hi7xaqf40qh9q3hj2n1l9i8g6m";
+      type = "gem";
+    };
+    version = "0.1.4";
+  };
+  wikicloth = {
+    dependencies = ["builder" "expression_parser" "rinku"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1jp6c2yzyqbap8jdiw8yz6l08sradky1llhyhmrg934l1b5akj3s";
+      type = "gem";
+    };
+    version = "0.8.1";
+  };
+  with_env = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1r5ns064mbb99hf1dyxsk9183hznc5i7mn3bi86zka6dlvqf9csh";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  xml-simple = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xlqplda3fix5pcykzsyzwgnbamb3qrqkgbrhhfz2a2fxhrkvhw8";
+      type = "gem";
+    };
+    version = "1.1.5";
+  };
+  xpath = {
+    dependencies = ["nokogiri"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bh8lk9hvlpn7vmi6h4hkcwjzvs2y0cmkk3yjjdr8fxvj6fsgzbd";
+      type = "gem";
+    };
+    version = "3.2.0";
+  };
+  zeitwerk = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1akpm3pwvyiack2zk6giv9yn3cqb8pw6g40p4394pdc3xmy3s4k0";
+      type = "gem";
+    };
+    version = "2.3.0";
+  };
+}
\ No newline at end of file
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/update.py b/nixpkgs/pkgs/applications/version-management/gitlab/update.py
new file mode 100755
index 000000000000..3db5099598a7
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/update.py
@@ -0,0 +1,243 @@
+#!/usr/bin/env nix-shell
+#! nix-shell -i python3 -p bundix bundler common-updater-scripts nix nix-prefetch-git python3 python3Packages.requests python3Packages.click python3Packages.click-log vgo2nix yarn2nix
+
+import click
+import click_log
+import os
+import re
+import logging
+import subprocess
+import json
+import pathlib
+from distutils.version import LooseVersion
+from typing import Iterable
+
+import requests
+
+logger = logging.getLogger(__name__)
+
+
+class GitLabRepo:
+    version_regex = re.compile(r"^v\d+\.\d+\.\d+(\-rc\d+)?(\-ee)?")
+    def __init__(self, owner: str = 'gitlab-org', repo: str = 'gitlab'):
+        self.owner = owner
+        self.repo = repo
+
+    @property
+    def url(self):
+        return f"https://gitlab.com/{self.owner}/{self.repo}"
+
+    @property
+    def tags(self) -> Iterable[str]:
+        r = requests.get(self.url + "/refs?sort=updated_desc&ref=master").json()
+        tags = r.get("Tags", [])
+
+        # filter out versions not matching version_regex
+        versions = list(filter(self.version_regex.match, tags))
+
+        # sort, but ignore v and -ee for sorting comparisons
+        versions.sort(key=lambda x: LooseVersion(x.replace("v", "").replace("-ee", "")), reverse=True)
+        return versions
+
+    def get_git_hash(self, rev: str):
+        out = subprocess.check_output(['nix-prefetch-git', self.url, rev])
+        j = json.loads(out)
+        return j['sha256']
+
+    @staticmethod
+    def rev2version(tag: str) -> str:
+        """
+        normalize a tag to a version number.
+        This obviously isn't very smart if we don't pass something that looks like a tag
+        :param tag: the tag to normalize
+        :return: a normalized version number
+        """
+        # strip v prefix
+        version = re.sub(r"^v", '', tag)
+        # strip -ee suffix
+        return re.sub(r"-ee$", '', version)
+
+    def get_file(self, filepath, rev):
+        """
+        returns file contents at a given rev
+        :param filepath: the path to the file, relative to the repo root
+        :param rev: the rev to fetch at
+        :return:
+        """
+        return requests.get(self.url + f"/raw/{rev}/{filepath}").text
+
+    def get_data(self, rev):
+        version = self.rev2version(rev)
+
+        passthru = {v: self.get_file(v, rev).strip() for v in ['GITALY_SERVER_VERSION', 'GITLAB_PAGES_VERSION',
+                                                               'GITLAB_SHELL_VERSION', 'GITLAB_WORKHORSE_VERSION']}
+        return dict(version=self.rev2version(rev),
+                    repo_hash=self.get_git_hash(rev),
+                    owner=self.owner,
+                    repo=self.repo,
+                    rev=rev,
+                    passthru=passthru)
+
+
+def _get_data_json():
+    data_file_path = pathlib.Path(__file__).parent / 'data.json'
+    with open(data_file_path, 'r') as f:
+        return json.load(f)
+
+
+def _call_update_source_version(pkg, version):
+    """calls update-source-version from nixpkgs root dir"""
+    nixpkgs_path = pathlib.Path(__file__).parent / '../../../../'
+    return subprocess.check_output(['update-source-version', pkg, version], cwd=nixpkgs_path)
+
+
+@click_log.simple_verbosity_option(logger)
+@click.group()
+def cli():
+    pass
+
+
+@cli.command('update-data')
+@click.option('--rev', default='latest', help='The rev to use (vX.Y.Z-ee), or \'latest\'')
+def update_data(rev: str):
+    """Update data.nix"""
+    repo = GitLabRepo()
+
+    if rev == 'latest':
+        # filter out pre and re releases
+        rev = next(filter(lambda x: not ('rc' in x or x.endswith('pre')), repo.tags))
+    logger.debug(f"Using rev {rev}")
+
+    version = repo.rev2version(rev)
+    logger.debug(f"Using version {version}")
+
+    data_file_path = pathlib.Path(__file__).parent / 'data.json'
+
+    data = repo.get_data(rev)
+
+    with open(data_file_path.as_posix(), 'w') as f:
+        json.dump(data, f, indent=2)
+
+
+@cli.command('update-rubyenv')
+def update_rubyenv():
+    """Update rubyEnv"""
+    repo = GitLabRepo()
+    rubyenv_dir = pathlib.Path(__file__).parent / f"rubyEnv"
+
+    # load rev from data.json
+    data = _get_data_json()
+    rev = data['rev']
+
+    for fn in ['Gemfile.lock', 'Gemfile']:
+        with open(rubyenv_dir / fn, 'w') as f:
+            f.write(repo.get_file(fn, rev))
+
+    subprocess.check_output(['bundle', 'lock'], cwd=rubyenv_dir)
+    subprocess.check_output(['bundix'], cwd=rubyenv_dir)
+
+
+@cli.command('update-yarnpkgs')
+def update_yarnpkgs():
+    """Update yarnPkgs"""
+
+    repo = GitLabRepo()
+    yarnpkgs_dir = pathlib.Path(__file__).parent
+
+    # load rev from data.json
+    data = _get_data_json()
+    rev = data['rev']
+
+    with open(yarnpkgs_dir / 'yarn.lock', 'w') as f:
+        f.write(repo.get_file('yarn.lock', rev))
+
+    with open(yarnpkgs_dir / 'yarnPkgs.nix', 'w') as f:
+        subprocess.run(['yarn2nix'], cwd=yarnpkgs_dir, check=True, stdout=f)
+
+    os.unlink(yarnpkgs_dir / 'yarn.lock')
+
+
+@cli.command('update-gitaly')
+def update_gitaly():
+    """Update gitaly"""
+    data = _get_data_json()
+    gitaly_server_version = data['passthru']['GITALY_SERVER_VERSION']
+    repo = GitLabRepo(repo='gitaly')
+    gitaly_dir = pathlib.Path(__file__).parent / 'gitaly'
+
+    for fn in ['Gemfile.lock', 'Gemfile']:
+        with open(gitaly_dir / fn, 'w') as f:
+            f.write(repo.get_file(f"ruby/{fn}", f"v{gitaly_server_version}"))
+
+    for fn in ['go.mod', 'go.sum']:
+        with open(gitaly_dir / fn, 'w') as f:
+            f.write(repo.get_file(fn, f"v{gitaly_server_version}"))
+
+    subprocess.check_output(['bundle', 'lock'], cwd=gitaly_dir)
+    subprocess.check_output(['bundix'], cwd=gitaly_dir)
+
+    os.environ['GOROOT'] = ""
+    subprocess.check_output(['vgo2nix', '--keep-going'], cwd=gitaly_dir)
+
+    for fn in ['go.mod', 'go.sum']:
+        os.unlink(gitaly_dir / fn)
+
+    _call_update_source_version('gitaly', gitaly_server_version)
+
+
+@cli.command('update-gitlab-shell')
+def update_gitlab_shell():
+    """Update gitlab-shell"""
+    data = _get_data_json()
+    gitlab_shell_version = data['passthru']['GITLAB_SHELL_VERSION']
+    _call_update_source_version('gitlab-shell', gitlab_shell_version)
+
+    repo = GitLabRepo(repo='gitlab-shell')
+    gitlab_shell_dir = pathlib.Path(__file__).parent / 'gitlab-shell'
+
+    for fn in ['go.mod', 'go.sum']:
+        with open(gitlab_shell_dir / fn, 'w') as f:
+            f.write(repo.get_file(fn, f"v{gitlab_shell_version}"))
+
+    os.environ['GOROOT'] = ""
+    subprocess.check_output(['vgo2nix', '--keep-going'], cwd=gitlab_shell_dir)
+
+    for fn in ['go.mod', 'go.sum']:
+        os.unlink(gitlab_shell_dir / fn)
+
+
+@cli.command('update-gitlab-workhorse')
+def update_gitlab_workhorse():
+    """Update gitlab-workhorse"""
+    data = _get_data_json()
+    gitlab_workhorse_version = data['passthru']['GITLAB_WORKHORSE_VERSION']
+    _call_update_source_version('gitlab-workhorse', gitlab_workhorse_version)
+
+    repo = GitLabRepo('gitlab-org', 'gitlab-workhorse')
+    gitlab_workhorse_dir = pathlib.Path(__file__).parent / 'gitlab-workhorse'
+
+    for fn in ['go.mod', 'go.sum']:
+        with open(gitlab_workhorse_dir / fn, 'w') as f:
+            f.write(repo.get_file(fn, f"v{gitlab_workhorse_version}"))
+
+    os.environ['GOROOT'] = ""
+    subprocess.check_output(['vgo2nix', '--keep-going'], cwd=gitlab_workhorse_dir)
+
+    for fn in ['go.mod', 'go.sum']:
+        os.unlink(gitlab_workhorse_dir / fn)
+
+@cli.command('update-all')
+@click.option('--rev', default='latest', help='The rev to use (vX.Y.Z-ee), or \'latest\'')
+@click.pass_context
+def update_all(ctx, rev: str):
+    """Update all gitlab components to the latest stable release"""
+    ctx.invoke(update_data, rev=rev)
+    ctx.invoke(update_rubyenv)
+    ctx.invoke(update_yarnpkgs)
+    ctx.invoke(update_gitaly)
+    ctx.invoke(update_gitlab_shell)
+    ctx.invoke(update_gitlab_workhorse)
+
+
+if __name__ == '__main__':
+    cli()
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/yarnPkgs.nix b/nixpkgs/pkgs/applications/version-management/gitlab/yarnPkgs.nix
new file mode 100644
index 000000000000..797329c613e4
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/yarnPkgs.nix
@@ -0,0 +1,13381 @@
+{ fetchurl, fetchgit, linkFarm, runCommandNoCC, gnutar }: rec {
+  offline_cache = linkFarm "offline" packages;
+  packages = [
+    {
+      name = "_babel_code_frame___code_frame_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_code_frame___code_frame_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.8.3.tgz";
+        sha1 = "33e25903d7481181534e12ec0a25f16b6fcf419e";
+      };
+    }
+    {
+      name = "_babel_compat_data___compat_data_7.8.5.tgz";
+      path = fetchurl {
+        name = "_babel_compat_data___compat_data_7.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.8.5.tgz";
+        sha1 = "d28ce872778c23551cbb9432fc68d28495b613b9";
+      };
+    }
+    {
+      name = "_babel_core___core_7.8.4.tgz";
+      path = fetchurl {
+        name = "_babel_core___core_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/core/-/core-7.8.4.tgz";
+        sha1 = "d496799e5c12195b3602d0fddd77294e3e38e80e";
+      };
+    }
+    {
+      name = "_babel_generator___generator_7.8.4.tgz";
+      path = fetchurl {
+        name = "_babel_generator___generator_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/generator/-/generator-7.8.4.tgz";
+        sha1 = "35bbc74486956fe4251829f9f6c48330e8d0985e";
+      };
+    }
+    {
+      name = "_babel_helper_annotate_as_pure___helper_annotate_as_pure_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_annotate_as_pure___helper_annotate_as_pure_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz";
+        sha1 = "60bc0bc657f63a0924ff9a4b4a0b24a13cf4deee";
+      };
+    }
+    {
+      name = "_babel_helper_builder_binary_assignment_operator_visitor___helper_builder_binary_assignment_operator_visitor_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_builder_binary_assignment_operator_visitor___helper_builder_binary_assignment_operator_visitor_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.8.3.tgz";
+        sha1 = "c84097a427a061ac56a1c30ebf54b7b22d241503";
+      };
+    }
+    {
+      name = "_babel_helper_call_delegate___helper_call_delegate_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_call_delegate___helper_call_delegate_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.8.3.tgz";
+        sha1 = "de82619898aa605d409c42be6ffb8d7204579692";
+      };
+    }
+    {
+      name = "_babel_helper_compilation_targets___helper_compilation_targets_7.8.4.tgz";
+      path = fetchurl {
+        name = "_babel_helper_compilation_targets___helper_compilation_targets_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.8.4.tgz";
+        sha1 = "03d7ecd454b7ebe19a254f76617e61770aed2c88";
+      };
+    }
+    {
+      name = "_babel_helper_create_class_features_plugin___helper_create_class_features_plugin_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_create_class_features_plugin___helper_create_class_features_plugin_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.8.3.tgz";
+        sha1 = "5b94be88c255f140fd2c10dd151e7f98f4bff397";
+      };
+    }
+    {
+      name = "_babel_helper_create_regexp_features_plugin___helper_create_regexp_features_plugin_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_create_regexp_features_plugin___helper_create_regexp_features_plugin_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.3.tgz";
+        sha1 = "c774268c95ec07ee92476a3862b75cc2839beb79";
+      };
+    }
+    {
+      name = "_babel_helper_define_map___helper_define_map_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_define_map___helper_define_map_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.8.3.tgz";
+        sha1 = "a0655cad5451c3760b726eba875f1cd8faa02c15";
+      };
+    }
+    {
+      name = "_babel_helper_explode_assignable_expression___helper_explode_assignable_expression_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_explode_assignable_expression___helper_explode_assignable_expression_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.8.3.tgz";
+        sha1 = "a728dc5b4e89e30fc2dfc7d04fa28a930653f982";
+      };
+    }
+    {
+      name = "_babel_helper_function_name___helper_function_name_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_function_name___helper_function_name_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz";
+        sha1 = "eeeb665a01b1f11068e9fb86ad56a1cb1a824cca";
+      };
+    }
+    {
+      name = "_babel_helper_get_function_arity___helper_get_function_arity_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_get_function_arity___helper_get_function_arity_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz";
+        sha1 = "b894b947bd004381ce63ea1db9f08547e920abd5";
+      };
+    }
+    {
+      name = "_babel_helper_hoist_variables___helper_hoist_variables_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_hoist_variables___helper_hoist_variables_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.8.3.tgz";
+        sha1 = "1dbe9b6b55d78c9b4183fc8cdc6e30ceb83b7134";
+      };
+    }
+    {
+      name = "_babel_helper_member_expression_to_functions___helper_member_expression_to_functions_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_member_expression_to_functions___helper_member_expression_to_functions_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.8.3.tgz";
+        sha1 = "659b710498ea6c1d9907e0c73f206eee7dadc24c";
+      };
+    }
+    {
+      name = "_babel_helper_module_imports___helper_module_imports_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_module_imports___helper_module_imports_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz";
+        sha1 = "7fe39589b39c016331b6b8c3f441e8f0b1419498";
+      };
+    }
+    {
+      name = "_babel_helper_module_transforms___helper_module_transforms_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_module_transforms___helper_module_transforms_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.8.3.tgz";
+        sha1 = "d305e35d02bee720fbc2c3c3623aa0c316c01590";
+      };
+    }
+    {
+      name = "_babel_helper_optimise_call_expression___helper_optimise_call_expression_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_optimise_call_expression___helper_optimise_call_expression_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.8.3.tgz";
+        sha1 = "7ed071813d09c75298ef4f208956006b6111ecb9";
+      };
+    }
+    {
+      name = "_babel_helper_plugin_utils___helper_plugin_utils_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_plugin_utils___helper_plugin_utils_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz";
+        sha1 = "9ea293be19babc0f52ff8ca88b34c3611b208670";
+      };
+    }
+    {
+      name = "_babel_helper_regex___helper_regex_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_regex___helper_regex_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.8.3.tgz";
+        sha1 = "139772607d51b93f23effe72105b319d2a4c6965";
+      };
+    }
+    {
+      name = "_babel_helper_remap_async_to_generator___helper_remap_async_to_generator_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_remap_async_to_generator___helper_remap_async_to_generator_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.8.3.tgz";
+        sha1 = "273c600d8b9bf5006142c1e35887d555c12edd86";
+      };
+    }
+    {
+      name = "_babel_helper_replace_supers___helper_replace_supers_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_replace_supers___helper_replace_supers_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.8.3.tgz";
+        sha1 = "91192d25f6abbcd41da8a989d4492574fb1530bc";
+      };
+    }
+    {
+      name = "_babel_helper_simple_access___helper_simple_access_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_simple_access___helper_simple_access_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.8.3.tgz";
+        sha1 = "7f8109928b4dab4654076986af575231deb639ae";
+      };
+    }
+    {
+      name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz";
+        sha1 = "31a9f30070f91368a7182cf05f831781065fc7a9";
+      };
+    }
+    {
+      name = "_babel_helper_wrap_function___helper_wrap_function_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_helper_wrap_function___helper_wrap_function_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.8.3.tgz";
+        sha1 = "9dbdb2bb55ef14aaa01fe8c99b629bd5352d8610";
+      };
+    }
+    {
+      name = "_babel_helpers___helpers_7.8.4.tgz";
+      path = fetchurl {
+        name = "_babel_helpers___helpers_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.8.4.tgz";
+        sha1 = "754eb3ee727c165e0a240d6c207de7c455f36f73";
+      };
+    }
+    {
+      name = "_babel_highlight___highlight_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_highlight___highlight_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.8.3.tgz";
+        sha1 = "28f173d04223eaaa59bc1d439a3836e6d1265797";
+      };
+    }
+    {
+      name = "_babel_parser___parser_7.8.4.tgz";
+      path = fetchurl {
+        name = "_babel_parser___parser_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/parser/-/parser-7.8.4.tgz";
+        sha1 = "d1dbe64691d60358a974295fa53da074dd2ce8e8";
+      };
+    }
+    {
+      name = "_babel_plugin_proposal_async_generator_functions___plugin_proposal_async_generator_functions_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_proposal_async_generator_functions___plugin_proposal_async_generator_functions_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.8.3.tgz";
+        sha1 = "bad329c670b382589721b27540c7d288601c6e6f";
+      };
+    }
+    {
+      name = "_babel_plugin_proposal_class_properties___plugin_proposal_class_properties_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_proposal_class_properties___plugin_proposal_class_properties_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.8.3.tgz";
+        sha1 = "5e06654af5cd04b608915aada9b2a6788004464e";
+      };
+    }
+    {
+      name = "_babel_plugin_proposal_dynamic_import___plugin_proposal_dynamic_import_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_proposal_dynamic_import___plugin_proposal_dynamic_import_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.8.3.tgz";
+        sha1 = "38c4fe555744826e97e2ae930b0fb4cc07e66054";
+      };
+    }
+    {
+      name = "_babel_plugin_proposal_json_strings___plugin_proposal_json_strings_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_proposal_json_strings___plugin_proposal_json_strings_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.8.3.tgz";
+        sha1 = "da5216b238a98b58a1e05d6852104b10f9a70d6b";
+      };
+    }
+    {
+      name = "_babel_plugin_proposal_nullish_coalescing_operator___plugin_proposal_nullish_coalescing_operator_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_proposal_nullish_coalescing_operator___plugin_proposal_nullish_coalescing_operator_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.8.3.tgz";
+        sha1 = "e4572253fdeed65cddeecfdab3f928afeb2fd5d2";
+      };
+    }
+    {
+      name = "_babel_plugin_proposal_object_rest_spread___plugin_proposal_object_rest_spread_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_proposal_object_rest_spread___plugin_proposal_object_rest_spread_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.8.3.tgz";
+        sha1 = "eb5ae366118ddca67bed583b53d7554cad9951bb";
+      };
+    }
+    {
+      name = "_babel_plugin_proposal_optional_catch_binding___plugin_proposal_optional_catch_binding_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_proposal_optional_catch_binding___plugin_proposal_optional_catch_binding_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.8.3.tgz";
+        sha1 = "9dee96ab1650eed88646ae9734ca167ac4a9c5c9";
+      };
+    }
+    {
+      name = "_babel_plugin_proposal_optional_chaining___plugin_proposal_optional_chaining_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_proposal_optional_chaining___plugin_proposal_optional_chaining_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.8.3.tgz";
+        sha1 = "ae10b3214cb25f7adb1f3bc87ba42ca10b7e2543";
+      };
+    }
+    {
+      name = "_babel_plugin_proposal_private_methods___plugin_proposal_private_methods_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_proposal_private_methods___plugin_proposal_private_methods_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.8.3.tgz";
+        sha1 = "01248c6c8dc292116b3b4ebd746150f4f0728bab";
+      };
+    }
+    {
+      name = "_babel_plugin_proposal_unicode_property_regex___plugin_proposal_unicode_property_regex_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_proposal_unicode_property_regex___plugin_proposal_unicode_property_regex_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.8.3.tgz";
+        sha1 = "b646c3adea5f98800c9ab45105ac34d06cd4a47f";
+      };
+    }
+    {
+      name = "_babel_plugin_syntax_async_generators___plugin_syntax_async_generators_7.8.4.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_syntax_async_generators___plugin_syntax_async_generators_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz";
+        sha1 = "a983fb1aeb2ec3f6ed042a210f640e90e786fe0d";
+      };
+    }
+    {
+      name = "_babel_plugin_syntax_dynamic_import___plugin_syntax_dynamic_import_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_syntax_dynamic_import___plugin_syntax_dynamic_import_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz";
+        sha1 = "62bf98b2da3cd21d626154fc96ee5b3cb68eacb3";
+      };
+    }
+    {
+      name = "_babel_plugin_syntax_import_meta___plugin_syntax_import_meta_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_syntax_import_meta___plugin_syntax_import_meta_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.8.3.tgz";
+        sha1 = "230afff79d3ccc215b5944b438e4e266daf3d84d";
+      };
+    }
+    {
+      name = "_babel_plugin_syntax_json_strings___plugin_syntax_json_strings_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_syntax_json_strings___plugin_syntax_json_strings_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz";
+        sha1 = "01ca21b668cd8218c9e640cb6dd88c5412b2c96a";
+      };
+    }
+    {
+      name = "_babel_plugin_syntax_nullish_coalescing_operator___plugin_syntax_nullish_coalescing_operator_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_syntax_nullish_coalescing_operator___plugin_syntax_nullish_coalescing_operator_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz";
+        sha1 = "167ed70368886081f74b5c36c65a88c03b66d1a9";
+      };
+    }
+    {
+      name = "_babel_plugin_syntax_object_rest_spread___plugin_syntax_object_rest_spread_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_syntax_object_rest_spread___plugin_syntax_object_rest_spread_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz";
+        sha1 = "60e225edcbd98a640332a2e72dd3e66f1af55871";
+      };
+    }
+    {
+      name = "_babel_plugin_syntax_optional_catch_binding___plugin_syntax_optional_catch_binding_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_syntax_optional_catch_binding___plugin_syntax_optional_catch_binding_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz";
+        sha1 = "6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1";
+      };
+    }
+    {
+      name = "_babel_plugin_syntax_optional_chaining___plugin_syntax_optional_chaining_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_syntax_optional_chaining___plugin_syntax_optional_chaining_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz";
+        sha1 = "4f69c2ab95167e0180cd5336613f8c5788f7d48a";
+      };
+    }
+    {
+      name = "_babel_plugin_syntax_top_level_await___plugin_syntax_top_level_await_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_syntax_top_level_await___plugin_syntax_top_level_await_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.8.3.tgz";
+        sha1 = "3acdece695e6b13aaf57fc291d1a800950c71391";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_arrow_functions___plugin_transform_arrow_functions_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_arrow_functions___plugin_transform_arrow_functions_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.8.3.tgz";
+        sha1 = "82776c2ed0cd9e1a49956daeb896024c9473b8b6";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_async_to_generator___plugin_transform_async_to_generator_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_async_to_generator___plugin_transform_async_to_generator_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.8.3.tgz";
+        sha1 = "4308fad0d9409d71eafb9b1a6ee35f9d64b64086";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_block_scoped_functions___plugin_transform_block_scoped_functions_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_block_scoped_functions___plugin_transform_block_scoped_functions_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.8.3.tgz";
+        sha1 = "437eec5b799b5852072084b3ae5ef66e8349e8a3";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_block_scoping___plugin_transform_block_scoping_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_block_scoping___plugin_transform_block_scoping_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.8.3.tgz";
+        sha1 = "97d35dab66857a437c166358b91d09050c868f3a";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_classes___plugin_transform_classes_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_classes___plugin_transform_classes_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.8.3.tgz";
+        sha1 = "46fd7a9d2bb9ea89ce88720477979fe0d71b21b8";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_computed_properties___plugin_transform_computed_properties_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_computed_properties___plugin_transform_computed_properties_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.8.3.tgz";
+        sha1 = "96d0d28b7f7ce4eb5b120bb2e0e943343c86f81b";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_destructuring___plugin_transform_destructuring_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_destructuring___plugin_transform_destructuring_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.8.3.tgz";
+        sha1 = "20ddfbd9e4676906b1056ee60af88590cc7aaa0b";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_dotall_regex___plugin_transform_dotall_regex_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_dotall_regex___plugin_transform_dotall_regex_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.8.3.tgz";
+        sha1 = "c3c6ec5ee6125c6993c5cbca20dc8621a9ea7a6e";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_duplicate_keys___plugin_transform_duplicate_keys_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_duplicate_keys___plugin_transform_duplicate_keys_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.8.3.tgz";
+        sha1 = "8d12df309aa537f272899c565ea1768e286e21f1";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_exponentiation_operator___plugin_transform_exponentiation_operator_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_exponentiation_operator___plugin_transform_exponentiation_operator_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.8.3.tgz";
+        sha1 = "581a6d7f56970e06bf51560cd64f5e947b70d7b7";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_for_of___plugin_transform_for_of_7.8.4.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_for_of___plugin_transform_for_of_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.8.4.tgz";
+        sha1 = "6fe8eae5d6875086ee185dd0b098a8513783b47d";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_function_name___plugin_transform_function_name_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_function_name___plugin_transform_function_name_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.8.3.tgz";
+        sha1 = "279373cb27322aaad67c2683e776dfc47196ed8b";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_literals___plugin_transform_literals_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_literals___plugin_transform_literals_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.8.3.tgz";
+        sha1 = "aef239823d91994ec7b68e55193525d76dbd5dc1";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_member_expression_literals___plugin_transform_member_expression_literals_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_member_expression_literals___plugin_transform_member_expression_literals_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.8.3.tgz";
+        sha1 = "963fed4b620ac7cbf6029c755424029fa3a40410";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_modules_amd___plugin_transform_modules_amd_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_modules_amd___plugin_transform_modules_amd_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.8.3.tgz";
+        sha1 = "65606d44616b50225e76f5578f33c568a0b876a5";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_modules_commonjs___plugin_transform_modules_commonjs_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_modules_commonjs___plugin_transform_modules_commonjs_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.8.3.tgz";
+        sha1 = "df251706ec331bd058a34bdd72613915f82928a5";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_modules_systemjs___plugin_transform_modules_systemjs_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_modules_systemjs___plugin_transform_modules_systemjs_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.8.3.tgz";
+        sha1 = "d8bbf222c1dbe3661f440f2f00c16e9bb7d0d420";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_modules_umd___plugin_transform_modules_umd_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_modules_umd___plugin_transform_modules_umd_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.8.3.tgz";
+        sha1 = "592d578ce06c52f5b98b02f913d653ffe972661a";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_named_capturing_groups_regex___plugin_transform_named_capturing_groups_regex_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_named_capturing_groups_regex___plugin_transform_named_capturing_groups_regex_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.8.3.tgz";
+        sha1 = "a2a72bffa202ac0e2d0506afd0939c5ecbc48c6c";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_new_target___plugin_transform_new_target_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_new_target___plugin_transform_new_target_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.8.3.tgz";
+        sha1 = "60cc2ae66d85c95ab540eb34babb6434d4c70c43";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_object_super___plugin_transform_object_super_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_object_super___plugin_transform_object_super_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.8.3.tgz";
+        sha1 = "ebb6a1e7a86ffa96858bd6ac0102d65944261725";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_parameters___plugin_transform_parameters_7.8.4.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_parameters___plugin_transform_parameters_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.8.4.tgz";
+        sha1 = "1d5155de0b65db0ccf9971165745d3bb990d77d3";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_property_literals___plugin_transform_property_literals_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_property_literals___plugin_transform_property_literals_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.8.3.tgz";
+        sha1 = "33194300d8539c1ed28c62ad5087ba3807b98263";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_regenerator___plugin_transform_regenerator_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_regenerator___plugin_transform_regenerator_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.8.3.tgz";
+        sha1 = "b31031e8059c07495bf23614c97f3d9698bc6ec8";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_reserved_words___plugin_transform_reserved_words_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_reserved_words___plugin_transform_reserved_words_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.8.3.tgz";
+        sha1 = "9a0635ac4e665d29b162837dd3cc50745dfdf1f5";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_shorthand_properties___plugin_transform_shorthand_properties_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_shorthand_properties___plugin_transform_shorthand_properties_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.8.3.tgz";
+        sha1 = "28545216e023a832d4d3a1185ed492bcfeac08c8";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_spread___plugin_transform_spread_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_spread___plugin_transform_spread_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.8.3.tgz";
+        sha1 = "9c8ffe8170fdfb88b114ecb920b82fb6e95fe5e8";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_sticky_regex___plugin_transform_sticky_regex_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_sticky_regex___plugin_transform_sticky_regex_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.8.3.tgz";
+        sha1 = "be7a1290f81dae767475452199e1f76d6175b100";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_template_literals___plugin_transform_template_literals_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_template_literals___plugin_transform_template_literals_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.8.3.tgz";
+        sha1 = "7bfa4732b455ea6a43130adc0ba767ec0e402a80";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_typeof_symbol___plugin_transform_typeof_symbol_7.8.4.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_typeof_symbol___plugin_transform_typeof_symbol_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.8.4.tgz";
+        sha1 = "ede4062315ce0aaf8a657a920858f1a2f35fc412";
+      };
+    }
+    {
+      name = "_babel_plugin_transform_unicode_regex___plugin_transform_unicode_regex_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_plugin_transform_unicode_regex___plugin_transform_unicode_regex_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.8.3.tgz";
+        sha1 = "0cef36e3ba73e5c57273effb182f46b91a1ecaad";
+      };
+    }
+    {
+      name = "_babel_preset_env___preset_env_7.8.4.tgz";
+      path = fetchurl {
+        name = "_babel_preset_env___preset_env_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.8.4.tgz";
+        sha1 = "9dac6df5f423015d3d49b6e9e5fa3413e4a72c4e";
+      };
+    }
+    {
+      name = "_babel_standalone___standalone_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_standalone___standalone_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/standalone/-/standalone-7.8.3.tgz";
+        sha1 = "0674730a8c5fbb9352de5342bf0c0c040d658380";
+      };
+    }
+    {
+      name = "_babel_template___template_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_template___template_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/template/-/template-7.8.3.tgz";
+        sha1 = "e02ad04fe262a657809327f578056ca15fd4d1b8";
+      };
+    }
+    {
+      name = "_babel_traverse___traverse_7.8.4.tgz";
+      path = fetchurl {
+        name = "_babel_traverse___traverse_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.8.4.tgz";
+        sha1 = "f0845822365f9d5b0e312ed3959d3f827f869e3c";
+      };
+    }
+    {
+      name = "_babel_types___types_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_types___types_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/types/-/types-7.8.3.tgz";
+        sha1 = "5a383dffa5416db1b73dedffd311ffd0788fb31c";
+      };
+    }
+    {
+      name = "_braintree_sanitize_url___sanitize_url_3.1.0.tgz";
+      path = fetchurl {
+        name = "_braintree_sanitize_url___sanitize_url_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/@braintree/sanitize-url/-/sanitize-url-3.1.0.tgz";
+        sha1 = "8ff71d51053cd5ee4981e5a501d80a536244f7fd";
+      };
+    }
+    {
+      name = "_cnakazawa_watch___watch_1.0.3.tgz";
+      path = fetchurl {
+        name = "_cnakazawa_watch___watch_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.3.tgz";
+        sha1 = "099139eaec7ebf07a27c1786a3ff64f39464d2ef";
+      };
+    }
+    {
+      name = "_gitlab_at.js___at.js_1.5.5.tgz";
+      path = fetchurl {
+        name = "_gitlab_at.js___at.js_1.5.5.tgz";
+        url  = "https://registry.yarnpkg.com/@gitlab/at.js/-/at.js-1.5.5.tgz";
+        sha1 = "5f6bfe6baaef360daa9b038fa78798d7a6a916b4";
+      };
+    }
+    {
+      name = "_gitlab_eslint_plugin___eslint_plugin_3.1.0.tgz";
+      path = fetchurl {
+        name = "_gitlab_eslint_plugin___eslint_plugin_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/@gitlab/eslint-plugin/-/eslint-plugin-3.1.0.tgz";
+        sha1 = "18e03630d10788defbb4c2d746620aec09517295";
+      };
+    }
+    {
+      name = "_gitlab_svgs___svgs_1.127.0.tgz";
+      path = fetchurl {
+        name = "_gitlab_svgs___svgs_1.127.0.tgz";
+        url  = "https://registry.yarnpkg.com/@gitlab/svgs/-/svgs-1.127.0.tgz";
+        sha1 = "1f7ffdffe44d6a82b372535f93d78f3a895d1960";
+      };
+    }
+    {
+      name = "_gitlab_ui___ui_14.10.0.tgz";
+      path = fetchurl {
+        name = "_gitlab_ui___ui_14.10.0.tgz";
+        url  = "https://registry.yarnpkg.com/@gitlab/ui/-/ui-14.10.0.tgz";
+        sha1 = "39c04d62c914fcefe96c7ec32fdf31b1f98f1119";
+      };
+    }
+    {
+      name = "_gitlab_visual_review_tools___visual_review_tools_1.6.1.tgz";
+      path = fetchurl {
+        name = "_gitlab_visual_review_tools___visual_review_tools_1.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/@gitlab/visual-review-tools/-/visual-review-tools-1.6.1.tgz";
+        sha1 = "0d8f3ff9f51b05f7c80b9a107727703d48997e4e";
+      };
+    }
+    {
+      name = "_gitlab_vue_toasted___vue_toasted_1.3.0.tgz";
+      path = fetchurl {
+        name = "_gitlab_vue_toasted___vue_toasted_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/@gitlab/vue-toasted/-/vue-toasted-1.3.0.tgz";
+        sha1 = "f21550d4ce406ee5f99447a02abf36250ecc922d";
+      };
+    }
+    {
+      name = "_jest_console___console_24.7.1.tgz";
+      path = fetchurl {
+        name = "_jest_console___console_24.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/console/-/console-24.7.1.tgz";
+        sha1 = "32a9e42535a97aedfe037e725bd67e954b459545";
+      };
+    }
+    {
+      name = "_jest_core___core_24.8.0.tgz";
+      path = fetchurl {
+        name = "_jest_core___core_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/core/-/core-24.8.0.tgz";
+        sha1 = "fbbdcd42a41d0d39cddbc9f520c8bab0c33eed5b";
+      };
+    }
+    {
+      name = "_jest_environment___environment_24.8.0.tgz";
+      path = fetchurl {
+        name = "_jest_environment___environment_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/environment/-/environment-24.8.0.tgz";
+        sha1 = "0342261383c776bdd652168f68065ef144af0eac";
+      };
+    }
+    {
+      name = "_jest_fake_timers___fake_timers_24.8.0.tgz";
+      path = fetchurl {
+        name = "_jest_fake_timers___fake_timers_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-24.8.0.tgz";
+        sha1 = "2e5b80a4f78f284bcb4bd5714b8e10dd36a8d3d1";
+      };
+    }
+    {
+      name = "_jest_reporters___reporters_24.8.0.tgz";
+      path = fetchurl {
+        name = "_jest_reporters___reporters_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/reporters/-/reporters-24.8.0.tgz";
+        sha1 = "075169cd029bddec54b8f2c0fc489fd0b9e05729";
+      };
+    }
+    {
+      name = "_jest_source_map___source_map_24.3.0.tgz";
+      path = fetchurl {
+        name = "_jest_source_map___source_map_24.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/source-map/-/source-map-24.3.0.tgz";
+        sha1 = "563be3aa4d224caf65ff77edc95cd1ca4da67f28";
+      };
+    }
+    {
+      name = "_jest_test_result___test_result_24.8.0.tgz";
+      path = fetchurl {
+        name = "_jest_test_result___test_result_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/test-result/-/test-result-24.8.0.tgz";
+        sha1 = "7675d0aaf9d2484caa65e048d9b467d160f8e9d3";
+      };
+    }
+    {
+      name = "_jest_test_sequencer___test_sequencer_24.8.0.tgz";
+      path = fetchurl {
+        name = "_jest_test_sequencer___test_sequencer_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-24.8.0.tgz";
+        sha1 = "2f993bcf6ef5eb4e65e8233a95a3320248cf994b";
+      };
+    }
+    {
+      name = "_jest_transform___transform_24.8.0.tgz";
+      path = fetchurl {
+        name = "_jest_transform___transform_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/transform/-/transform-24.8.0.tgz";
+        sha1 = "628fb99dce4f9d254c6fd9341e3eea262e06fef5";
+      };
+    }
+    {
+      name = "_jest_types___types_24.8.0.tgz";
+      path = fetchurl {
+        name = "_jest_types___types_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/types/-/types-24.8.0.tgz";
+        sha1 = "f31e25948c58f0abd8c845ae26fcea1491dea7ad";
+      };
+    }
+    {
+      name = "_mrmlnc_readdir_enhanced___readdir_enhanced_2.2.1.tgz";
+      path = fetchurl {
+        name = "_mrmlnc_readdir_enhanced___readdir_enhanced_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz";
+        sha1 = "524af240d1a360527b730475ecfa1344aa540dde";
+      };
+    }
+    {
+      name = "_nodelib_fs.stat___fs.stat_1.1.3.tgz";
+      path = fetchurl {
+        name = "_nodelib_fs.stat___fs.stat_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz";
+        sha1 = "2b5a3ab3f918cca48a8c754c08168e3f03eba61b";
+      };
+    }
+    {
+      name = "_nuxt_opencollective___opencollective_0.3.0.tgz";
+      path = fetchurl {
+        name = "_nuxt_opencollective___opencollective_0.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/@nuxt/opencollective/-/opencollective-0.3.0.tgz";
+        sha1 = "11d8944dcf2d526e31660bb69570be03f8fb72b7";
+      };
+    }
+    {
+      name = "_rails_actioncable___actioncable_6.0.3.tgz";
+      path = fetchurl {
+        name = "_rails_actioncable___actioncable_6.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/@rails/actioncable/-/actioncable-6.0.3.tgz";
+        sha1 = "722b4b639936129307ddbab3a390f6bcacf3e7bc";
+      };
+    }
+    {
+      name = "_sentry_browser___browser_5.10.2.tgz";
+      path = fetchurl {
+        name = "_sentry_browser___browser_5.10.2.tgz";
+        url  = "https://registry.yarnpkg.com/@sentry/browser/-/browser-5.10.2.tgz";
+        sha1 = "0bbb05505c58ea998c833cffec3f922fe4b4fa58";
+      };
+    }
+    {
+      name = "_sentry_core___core_5.10.2.tgz";
+      path = fetchurl {
+        name = "_sentry_core___core_5.10.2.tgz";
+        url  = "https://registry.yarnpkg.com/@sentry/core/-/core-5.10.2.tgz";
+        sha1 = "1cb64489e6f8363c3249415b49d3f1289814825f";
+      };
+    }
+    {
+      name = "_sentry_hub___hub_5.10.2.tgz";
+      path = fetchurl {
+        name = "_sentry_hub___hub_5.10.2.tgz";
+        url  = "https://registry.yarnpkg.com/@sentry/hub/-/hub-5.10.2.tgz";
+        sha1 = "25d9f36b8f7c5cb65cf486737fa61dc9bf69b7e3";
+      };
+    }
+    {
+      name = "_sentry_minimal___minimal_5.10.2.tgz";
+      path = fetchurl {
+        name = "_sentry_minimal___minimal_5.10.2.tgz";
+        url  = "https://registry.yarnpkg.com/@sentry/minimal/-/minimal-5.10.2.tgz";
+        sha1 = "267c2f3aa6877a0fe7a86971942e83f3ee616580";
+      };
+    }
+    {
+      name = "_sentry_types___types_5.10.0.tgz";
+      path = fetchurl {
+        name = "_sentry_types___types_5.10.0.tgz";
+        url  = "https://registry.yarnpkg.com/@sentry/types/-/types-5.10.0.tgz";
+        sha1 = "4f0ba31b6e4d5371112c38279f11f66c73b43746";
+      };
+    }
+    {
+      name = "_sentry_utils___utils_5.10.2.tgz";
+      path = fetchurl {
+        name = "_sentry_utils___utils_5.10.2.tgz";
+        url  = "https://registry.yarnpkg.com/@sentry/utils/-/utils-5.10.2.tgz";
+        sha1 = "261f575079d30aaf604e59f5f4de0aa21db22252";
+      };
+    }
+    {
+      name = "_sourcegraph_code_host_integration___code_host_integration_0.0.46.tgz";
+      path = fetchurl {
+        name = "_sourcegraph_code_host_integration___code_host_integration_0.0.46.tgz";
+        url  = "https://registry.yarnpkg.com/@sourcegraph/code-host-integration/-/code-host-integration-0.0.46.tgz";
+        sha1 = "05e4cda671ed00450be12461e6a3caff473675aa";
+      };
+    }
+    {
+      name = "_toast_ui_editor___editor_2.0.1.tgz";
+      path = fetchurl {
+        name = "_toast_ui_editor___editor_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/@toast-ui/editor/-/editor-2.0.1.tgz";
+        sha1 = "749e5be1f02f42ded51488d1575ab1c19ca59952";
+      };
+    }
+    {
+      name = "_toast_ui_vue_editor___vue_editor_2.0.1.tgz";
+      path = fetchurl {
+        name = "_toast_ui_vue_editor___vue_editor_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/@toast-ui/vue-editor/-/vue-editor-2.0.1.tgz";
+        sha1 = "c9c8c8da4c0a67b9fbc4240464388c67d72a0c22";
+      };
+    }
+    {
+      name = "_types_anymatch___anymatch_1.3.0.tgz";
+      path = fetchurl {
+        name = "_types_anymatch___anymatch_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/anymatch/-/anymatch-1.3.0.tgz";
+        sha1 = "d1d55958d1fccc5527d4aba29fc9c4b942f563ff";
+      };
+    }
+    {
+      name = "_types_babel__core___babel__core_7.1.2.tgz";
+      path = fetchurl {
+        name = "_types_babel__core___babel__core_7.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.2.tgz";
+        sha1 = "608c74f55928033fce18b99b213c16be4b3d114f";
+      };
+    }
+    {
+      name = "_types_babel__generator___babel__generator_7.0.2.tgz";
+      path = fetchurl {
+        name = "_types_babel__generator___babel__generator_7.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.0.2.tgz";
+        sha1 = "d2112a6b21fad600d7674274293c85dce0cb47fc";
+      };
+    }
+    {
+      name = "_types_babel__template___babel__template_7.0.2.tgz";
+      path = fetchurl {
+        name = "_types_babel__template___babel__template_7.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.2.tgz";
+        sha1 = "4ff63d6b52eddac1de7b975a5223ed32ecea9307";
+      };
+    }
+    {
+      name = "_types_babel__traverse___babel__traverse_7.0.6.tgz";
+      path = fetchurl {
+        name = "_types_babel__traverse___babel__traverse_7.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.6.tgz";
+        sha1 = "328dd1a8fc4cfe3c8458be9477b219ea158fd7b2";
+      };
+    }
+    {
+      name = "_types_codemirror___codemirror_0.0.71.tgz";
+      path = fetchurl {
+        name = "_types_codemirror___codemirror_0.0.71.tgz";
+        url  = "https://registry.yarnpkg.com/@types/codemirror/-/codemirror-0.0.71.tgz";
+        sha1 = "861f1bcb3100c0a064567c5400f2981cf4ae8ca7";
+      };
+    }
+    {
+      name = "_types_estree___estree_0.0.44.tgz";
+      path = fetchurl {
+        name = "_types_estree___estree_0.0.44.tgz";
+        url  = "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.44.tgz";
+        sha1 = "980cc5a29a3ef3bea6ff1f7d021047d7ea575e21";
+      };
+    }
+    {
+      name = "_types_events___events_1.2.0.tgz";
+      path = fetchurl {
+        name = "_types_events___events_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/events/-/events-1.2.0.tgz";
+        sha1 = "81a6731ce4df43619e5c8c945383b3e62a89ea86";
+      };
+    }
+    {
+      name = "_types_glob___glob_7.1.1.tgz";
+      path = fetchurl {
+        name = "_types_glob___glob_7.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.1.tgz";
+        sha1 = "aa59a1c6e3fbc421e07ccd31a944c30eba521575";
+      };
+    }
+    {
+      name = "_types_istanbul_lib_coverage___istanbul_lib_coverage_2.0.1.tgz";
+      path = fetchurl {
+        name = "_types_istanbul_lib_coverage___istanbul_lib_coverage_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz";
+        sha1 = "42995b446db9a48a11a07ec083499a860e9138ff";
+      };
+    }
+    {
+      name = "_types_istanbul_lib_report___istanbul_lib_report_1.1.1.tgz";
+      path = fetchurl {
+        name = "_types_istanbul_lib_report___istanbul_lib_report_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-1.1.1.tgz";
+        sha1 = "e5471e7fa33c61358dd38426189c037a58433b8c";
+      };
+    }
+    {
+      name = "_types_istanbul_reports___istanbul_reports_1.1.1.tgz";
+      path = fetchurl {
+        name = "_types_istanbul_reports___istanbul_reports_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-1.1.1.tgz";
+        sha1 = "7a8cbf6a406f36c8add871625b278eaf0b0d255a";
+      };
+    }
+    {
+      name = "_types_json_schema___json_schema_7.0.4.tgz";
+      path = fetchurl {
+        name = "_types_json_schema___json_schema_7.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.4.tgz";
+        sha1 = "38fd73ddfd9b55abb1e1b2ed578cb55bd7b7d339";
+      };
+    }
+    {
+      name = "_types_minimatch___minimatch_3.0.3.tgz";
+      path = fetchurl {
+        name = "_types_minimatch___minimatch_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz";
+        sha1 = "3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d";
+      };
+    }
+    {
+      name = "_types_node___node_10.12.9.tgz";
+      path = fetchurl {
+        name = "_types_node___node_10.12.9.tgz";
+        url  = "https://registry.yarnpkg.com/@types/node/-/node-10.12.9.tgz";
+        sha1 = "a07bfa74331471e1dc22a47eb72026843f7b95c8";
+      };
+    }
+    {
+      name = "_types_parse5___parse5_5.0.0.tgz";
+      path = fetchurl {
+        name = "_types_parse5___parse5_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/parse5/-/parse5-5.0.0.tgz";
+        sha1 = "9ae2106efc443d7c1e26570aa8247828c9c80f11";
+      };
+    }
+    {
+      name = "_types_stack_utils___stack_utils_1.0.1.tgz";
+      path = fetchurl {
+        name = "_types_stack_utils___stack_utils_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-1.0.1.tgz";
+        sha1 = "0a851d3bd96498fa25c33ab7278ed3bd65f06c3e";
+      };
+    }
+    {
+      name = "_types_tapable___tapable_1.0.4.tgz";
+      path = fetchurl {
+        name = "_types_tapable___tapable_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.4.tgz";
+        sha1 = "b4ffc7dc97b498c969b360a41eee247f82616370";
+      };
+    }
+    {
+      name = "_types_tern___tern_0.23.3.tgz";
+      path = fetchurl {
+        name = "_types_tern___tern_0.23.3.tgz";
+        url  = "https://registry.yarnpkg.com/@types/tern/-/tern-0.23.3.tgz";
+        sha1 = "4b54538f04a88c9ff79de1f6f94f575a7f339460";
+      };
+    }
+    {
+      name = "_types_uglify_js___uglify_js_3.0.4.tgz";
+      path = fetchurl {
+        name = "_types_uglify_js___uglify_js_3.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.0.4.tgz";
+        sha1 = "96beae23df6f561862a830b4288a49e86baac082";
+      };
+    }
+    {
+      name = "_types_unist___unist_2.0.3.tgz";
+      path = fetchurl {
+        name = "_types_unist___unist_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.3.tgz";
+        sha1 = "9c088679876f374eb5983f150d4787aa6fb32d7e";
+      };
+    }
+    {
+      name = "_types_vfile_message___vfile_message_1.0.1.tgz";
+      path = fetchurl {
+        name = "_types_vfile_message___vfile_message_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/vfile-message/-/vfile-message-1.0.1.tgz";
+        sha1 = "e1e9895cc6b36c462d4244e64e6d0b6eaf65355a";
+      };
+    }
+    {
+      name = "_types_vfile___vfile_3.0.2.tgz";
+      path = fetchurl {
+        name = "_types_vfile___vfile_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/@types/vfile/-/vfile-3.0.2.tgz";
+        sha1 = "19c18cd232df11ce6fa6ad80259bc86c366b09b9";
+      };
+    }
+    {
+      name = "_types_webpack___webpack_4.4.23.tgz";
+      path = fetchurl {
+        name = "_types_webpack___webpack_4.4.23.tgz";
+        url  = "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.4.23.tgz";
+        sha1 = "059d6f4598cfd65ddee0e2db38317ef989696712";
+      };
+    }
+    {
+      name = "_types_yargs___yargs_12.0.12.tgz";
+      path = fetchurl {
+        name = "_types_yargs___yargs_12.0.12.tgz";
+        url  = "https://registry.yarnpkg.com/@types/yargs/-/yargs-12.0.12.tgz";
+        sha1 = "45dd1d0638e8c8f153e87d296907659296873916";
+      };
+    }
+    {
+      name = "_types_zen_observable___zen_observable_0.8.0.tgz";
+      path = fetchurl {
+        name = "_types_zen_observable___zen_observable_0.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/zen-observable/-/zen-observable-0.8.0.tgz";
+        sha1 = "8b63ab7f1aa5321248aad5ac890a485656dcea4d";
+      };
+    }
+    {
+      name = "_typescript_eslint_experimental_utils___experimental_utils_2.30.0.tgz";
+      path = fetchurl {
+        name = "_typescript_eslint_experimental_utils___experimental_utils_2.30.0.tgz";
+        url  = "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-2.30.0.tgz";
+        sha1 = "9845e868c01f3aed66472c561d4b6bac44809dd0";
+      };
+    }
+    {
+      name = "_typescript_eslint_typescript_estree___typescript_estree_2.30.0.tgz";
+      path = fetchurl {
+        name = "_typescript_eslint_typescript_estree___typescript_estree_2.30.0.tgz";
+        url  = "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.30.0.tgz";
+        sha1 = "1b8e848b55144270255ffbfe4c63291f8f766615";
+      };
+    }
+    {
+      name = "_vue_component_compiler_utils___component_compiler_utils_2.6.0.tgz";
+      path = fetchurl {
+        name = "_vue_component_compiler_utils___component_compiler_utils_2.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/@vue/component-compiler-utils/-/component-compiler-utils-2.6.0.tgz";
+        sha1 = "aa46d2a6f7647440b0b8932434d22f12371e543b";
+      };
+    }
+    {
+      name = "_vue_component_compiler_utils___component_compiler_utils_3.1.1.tgz";
+      path = fetchurl {
+        name = "_vue_component_compiler_utils___component_compiler_utils_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/@vue/component-compiler-utils/-/component-compiler-utils-3.1.1.tgz";
+        sha1 = "d4ef8f80292674044ad6211e336a302e4d2a6575";
+      };
+    }
+    {
+      name = "_vue_test_utils___test_utils_1.0.0_beta.30.tgz";
+      path = fetchurl {
+        name = "_vue_test_utils___test_utils_1.0.0_beta.30.tgz";
+        url  = "https://registry.yarnpkg.com/@vue/test-utils/-/test-utils-1.0.0-beta.30.tgz";
+        sha1 = "d5f26d1e2411fdb7fa7fdedb61b4b4ea4194c49d";
+      };
+    }
+    {
+      name = "_webassemblyjs_ast___ast_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_ast___ast_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.8.5.tgz";
+        sha1 = "51b1c5fe6576a34953bf4b253df9f0d490d9e359";
+      };
+    }
+    {
+      name = "_webassemblyjs_floating_point_hex_parser___floating_point_hex_parser_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_floating_point_hex_parser___floating_point_hex_parser_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz";
+        sha1 = "1ba926a2923613edce496fd5b02e8ce8a5f49721";
+      };
+    }
+    {
+      name = "_webassemblyjs_helper_api_error___helper_api_error_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_helper_api_error___helper_api_error_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz";
+        sha1 = "c49dad22f645227c5edb610bdb9697f1aab721f7";
+      };
+    }
+    {
+      name = "_webassemblyjs_helper_buffer___helper_buffer_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_helper_buffer___helper_buffer_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz";
+        sha1 = "fea93e429863dd5e4338555f42292385a653f204";
+      };
+    }
+    {
+      name = "_webassemblyjs_helper_code_frame___helper_code_frame_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_helper_code_frame___helper_code_frame_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz";
+        sha1 = "9a740ff48e3faa3022b1dff54423df9aa293c25e";
+      };
+    }
+    {
+      name = "_webassemblyjs_helper_fsm___helper_fsm_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_helper_fsm___helper_fsm_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz";
+        sha1 = "ba0b7d3b3f7e4733da6059c9332275d860702452";
+      };
+    }
+    {
+      name = "_webassemblyjs_helper_module_context___helper_module_context_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_helper_module_context___helper_module_context_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz";
+        sha1 = "def4b9927b0101dc8cbbd8d1edb5b7b9c82eb245";
+      };
+    }
+    {
+      name = "_webassemblyjs_helper_wasm_bytecode___helper_wasm_bytecode_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_helper_wasm_bytecode___helper_wasm_bytecode_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz";
+        sha1 = "537a750eddf5c1e932f3744206551c91c1b93e61";
+      };
+    }
+    {
+      name = "_webassemblyjs_helper_wasm_section___helper_wasm_section_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_helper_wasm_section___helper_wasm_section_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz";
+        sha1 = "74ca6a6bcbe19e50a3b6b462847e69503e6bfcbf";
+      };
+    }
+    {
+      name = "_webassemblyjs_ieee754___ieee754_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_ieee754___ieee754_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz";
+        sha1 = "712329dbef240f36bf57bd2f7b8fb9bf4154421e";
+      };
+    }
+    {
+      name = "_webassemblyjs_leb128___leb128_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_leb128___leb128_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.8.5.tgz";
+        sha1 = "044edeb34ea679f3e04cd4fd9824d5e35767ae10";
+      };
+    }
+    {
+      name = "_webassemblyjs_utf8___utf8_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_utf8___utf8_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.8.5.tgz";
+        sha1 = "a8bf3b5d8ffe986c7c1e373ccbdc2a0915f0cedc";
+      };
+    }
+    {
+      name = "_webassemblyjs_wasm_edit___wasm_edit_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_wasm_edit___wasm_edit_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz";
+        sha1 = "962da12aa5acc1c131c81c4232991c82ce56e01a";
+      };
+    }
+    {
+      name = "_webassemblyjs_wasm_gen___wasm_gen_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_wasm_gen___wasm_gen_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz";
+        sha1 = "54840766c2c1002eb64ed1abe720aded714f98bc";
+      };
+    }
+    {
+      name = "_webassemblyjs_wasm_opt___wasm_opt_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_wasm_opt___wasm_opt_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz";
+        sha1 = "b24d9f6ba50394af1349f510afa8ffcb8a63d264";
+      };
+    }
+    {
+      name = "_webassemblyjs_wasm_parser___wasm_parser_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_wasm_parser___wasm_parser_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz";
+        sha1 = "21576f0ec88b91427357b8536383668ef7c66b8d";
+      };
+    }
+    {
+      name = "_webassemblyjs_wast_parser___wast_parser_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_wast_parser___wast_parser_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz";
+        sha1 = "e10eecd542d0e7bd394f6827c49f3df6d4eefb8c";
+      };
+    }
+    {
+      name = "_webassemblyjs_wast_printer___wast_printer_1.8.5.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_wast_printer___wast_printer_1.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz";
+        sha1 = "114bbc481fd10ca0e23b3560fa812748b0bae5bc";
+      };
+    }
+    {
+      name = "_wry_context___context_0.4.4.tgz";
+      path = fetchurl {
+        name = "_wry_context___context_0.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/@wry/context/-/context-0.4.4.tgz";
+        sha1 = "e50f5fa1d6cfaabf2977d1fda5ae91717f8815f8";
+      };
+    }
+    {
+      name = "_wry_equality___equality_0.1.9.tgz";
+      path = fetchurl {
+        name = "_wry_equality___equality_0.1.9.tgz";
+        url  = "https://registry.yarnpkg.com/@wry/equality/-/equality-0.1.9.tgz";
+        sha1 = "b13e18b7a8053c6858aa6c85b54911fb31e3a909";
+      };
+    }
+    {
+      name = "_xtuc_ieee754___ieee754_1.2.0.tgz";
+      path = fetchurl {
+        name = "_xtuc_ieee754___ieee754_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz";
+        sha1 = "eef014a3145ae477a1cbc00cd1e552336dceb790";
+      };
+    }
+    {
+      name = "_xtuc_long___long_4.2.2.tgz";
+      path = fetchurl {
+        name = "_xtuc_long___long_4.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz";
+        sha1 = "d291c6a4e97989b5c61d9acf396ae4fe133a718d";
+      };
+    }
+    {
+      name = "_yarnpkg_lockfile___lockfile_1.1.0.tgz";
+      path = fetchurl {
+        name = "_yarnpkg_lockfile___lockfile_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz";
+        sha1 = "e77a97fbd345b76d83245edcd17d393b1b41fb31";
+      };
+    }
+    {
+      name = "abab___abab_2.0.0.tgz";
+      path = fetchurl {
+        name = "abab___abab_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/abab/-/abab-2.0.0.tgz";
+        sha1 = "aba0ab4c5eee2d4c79d3487d85450fb2376ebb0f";
+      };
+    }
+    {
+      name = "abbrev___abbrev_1.0.9.tgz";
+      path = fetchurl {
+        name = "abbrev___abbrev_1.0.9.tgz";
+        url  = "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz";
+        sha1 = "91b4792588a7738c25f35dd6f63752a2f8776135";
+      };
+    }
+    {
+      name = "accepts___accepts_1.3.7.tgz";
+      path = fetchurl {
+        name = "accepts___accepts_1.3.7.tgz";
+        url  = "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz";
+        sha1 = "531bc726517a3b2b41f850021c6cc15eaab507cd";
+      };
+    }
+    {
+      name = "acorn_globals___acorn_globals_4.3.0.tgz";
+      path = fetchurl {
+        name = "acorn_globals___acorn_globals_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.3.0.tgz";
+        sha1 = "e3b6f8da3c1552a95ae627571f7dd6923bb54103";
+      };
+    }
+    {
+      name = "acorn_jsx___acorn_jsx_5.1.0.tgz";
+      path = fetchurl {
+        name = "acorn_jsx___acorn_jsx_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.1.0.tgz";
+        sha1 = "294adb71b57398b0680015f0a38c563ee1db5384";
+      };
+    }
+    {
+      name = "acorn_walk___acorn_walk_6.2.0.tgz";
+      path = fetchurl {
+        name = "acorn_walk___acorn_walk_6.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.2.0.tgz";
+        sha1 = "123cb8f3b84c2171f1f7fb252615b1c78a6b1a8c";
+      };
+    }
+    {
+      name = "acorn___acorn_5.7.3.tgz";
+      path = fetchurl {
+        name = "acorn___acorn_5.7.3.tgz";
+        url  = "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz";
+        sha1 = "67aa231bf8812974b85235a96771eb6bd07ea279";
+      };
+    }
+    {
+      name = "acorn___acorn_6.3.0.tgz";
+      path = fetchurl {
+        name = "acorn___acorn_6.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/acorn/-/acorn-6.3.0.tgz";
+        sha1 = "0087509119ffa4fc0a0041d1e93a417e68cb856e";
+      };
+    }
+    {
+      name = "acorn___acorn_7.1.0.tgz";
+      path = fetchurl {
+        name = "acorn___acorn_7.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/acorn/-/acorn-7.1.0.tgz";
+        sha1 = "949d36f2c292535da602283586c2477c57eb2d6c";
+      };
+    }
+    {
+      name = "after___after_0.8.2.tgz";
+      path = fetchurl {
+        name = "after___after_0.8.2.tgz";
+        url  = "https://registry.yarnpkg.com/after/-/after-0.8.2.tgz";
+        sha1 = "fedb394f9f0e02aa9768e702bda23b505fae7e1f";
+      };
+    }
+    {
+      name = "aggregate_error___aggregate_error_3.0.1.tgz";
+      path = fetchurl {
+        name = "aggregate_error___aggregate_error_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.0.1.tgz";
+        sha1 = "db2fe7246e536f40d9b5442a39e117d7dd6a24e0";
+      };
+    }
+    {
+      name = "ajv_errors___ajv_errors_1.0.0.tgz";
+      path = fetchurl {
+        name = "ajv_errors___ajv_errors_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.0.tgz";
+        sha1 = "ecf021fa108fd17dfb5e6b383f2dd233e31ffc59";
+      };
+    }
+    {
+      name = "ajv_keywords___ajv_keywords_3.4.1.tgz";
+      path = fetchurl {
+        name = "ajv_keywords___ajv_keywords_3.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.4.1.tgz";
+        sha1 = "ef916e271c64ac12171fd8384eaae6b2345854da";
+      };
+    }
+    {
+      name = "ajv___ajv_6.11.0.tgz";
+      path = fetchurl {
+        name = "ajv___ajv_6.11.0.tgz";
+        url  = "https://registry.yarnpkg.com/ajv/-/ajv-6.11.0.tgz";
+        sha1 = "c3607cbc8ae392d8a5a536f25b21f8e5f3f87fe9";
+      };
+    }
+    {
+      name = "amdefine___amdefine_1.0.1.tgz";
+      path = fetchurl {
+        name = "amdefine___amdefine_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz";
+        sha1 = "4a5282ac164729e93619bcfd3ad151f817ce91f5";
+      };
+    }
+    {
+      name = "ansi_align___ansi_align_2.0.0.tgz";
+      path = fetchurl {
+        name = "ansi_align___ansi_align_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-align/-/ansi-align-2.0.0.tgz";
+        sha1 = "c36aeccba563b89ceb556f3690f0b1d9e3547f7f";
+      };
+    }
+    {
+      name = "ansi_colors___ansi_colors_3.2.4.tgz";
+      path = fetchurl {
+        name = "ansi_colors___ansi_colors_3.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz";
+        sha1 = "e3a3da4bfbae6c86a9c285625de124a234026fbf";
+      };
+    }
+    {
+      name = "ansi_escapes___ansi_escapes_3.2.0.tgz";
+      path = fetchurl {
+        name = "ansi_escapes___ansi_escapes_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz";
+        sha1 = "8780b98ff9dbf5638152d1f1fe5c1d7b4442976b";
+      };
+    }
+    {
+      name = "ansi_escapes___ansi_escapes_4.3.0.tgz";
+      path = fetchurl {
+        name = "ansi_escapes___ansi_escapes_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.0.tgz";
+        sha1 = "a4ce2b33d6b214b7950d8595c212f12ac9cc569d";
+      };
+    }
+    {
+      name = "ansi_html___ansi_html_0.0.7.tgz";
+      path = fetchurl {
+        name = "ansi_html___ansi_html_0.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz";
+        sha1 = "813584021962a9e9e6fd039f940d12f56ca7859e";
+      };
+    }
+    {
+      name = "ansi_regex___ansi_regex_2.1.1.tgz";
+      path = fetchurl {
+        name = "ansi_regex___ansi_regex_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz";
+        sha1 = "c3b33ab5ee360d86e0e628f0468ae7ef27d654df";
+      };
+    }
+    {
+      name = "ansi_regex___ansi_regex_3.0.0.tgz";
+      path = fetchurl {
+        name = "ansi_regex___ansi_regex_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz";
+        sha1 = "ed0317c322064f79466c02966bddb605ab37d998";
+      };
+    }
+    {
+      name = "ansi_regex___ansi_regex_4.1.0.tgz";
+      path = fetchurl {
+        name = "ansi_regex___ansi_regex_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz";
+        sha1 = "8b9f8f08cf1acb843756a839ca8c7e3168c51997";
+      };
+    }
+    {
+      name = "ansi_styles___ansi_styles_2.2.1.tgz";
+      path = fetchurl {
+        name = "ansi_styles___ansi_styles_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz";
+        sha1 = "b432dd3358b634cf75e1e4664368240533c1ddbe";
+      };
+    }
+    {
+      name = "ansi_styles___ansi_styles_3.2.1.tgz";
+      path = fetchurl {
+        name = "ansi_styles___ansi_styles_3.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz";
+        sha1 = "41fbb20243e50b12be0f04b8dedbf07520ce841d";
+      };
+    }
+    {
+      name = "anymatch___anymatch_2.0.0.tgz";
+      path = fetchurl {
+        name = "anymatch___anymatch_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz";
+        sha1 = "bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb";
+      };
+    }
+    {
+      name = "anymatch___anymatch_3.0.3.tgz";
+      path = fetchurl {
+        name = "anymatch___anymatch_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/anymatch/-/anymatch-3.0.3.tgz";
+        sha1 = "2fb624fe0e84bccab00afee3d0006ed310f22f09";
+      };
+    }
+    {
+      name = "apollo_cache_inmemory___apollo_cache_inmemory_1.6.3.tgz";
+      path = fetchurl {
+        name = "apollo_cache_inmemory___apollo_cache_inmemory_1.6.3.tgz";
+        url  = "https://registry.yarnpkg.com/apollo-cache-inmemory/-/apollo-cache-inmemory-1.6.3.tgz";
+        sha1 = "826861d20baca4abc45f7ca7a874105905b8525d";
+      };
+    }
+    {
+      name = "apollo_cache___apollo_cache_1.3.2.tgz";
+      path = fetchurl {
+        name = "apollo_cache___apollo_cache_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/apollo-cache/-/apollo-cache-1.3.2.tgz";
+        sha1 = "df4dce56240d6c95c613510d7e409f7214e6d26a";
+      };
+    }
+    {
+      name = "apollo_client___apollo_client_2.6.4.tgz";
+      path = fetchurl {
+        name = "apollo_client___apollo_client_2.6.4.tgz";
+        url  = "https://registry.yarnpkg.com/apollo-client/-/apollo-client-2.6.4.tgz";
+        sha1 = "872c32927263a0d34655c5ef8a8949fbb20b6140";
+      };
+    }
+    {
+      name = "apollo_link_batch_http___apollo_link_batch_http_1.2.11.tgz";
+      path = fetchurl {
+        name = "apollo_link_batch_http___apollo_link_batch_http_1.2.11.tgz";
+        url  = "https://registry.yarnpkg.com/apollo-link-batch-http/-/apollo-link-batch-http-1.2.11.tgz";
+        sha1 = "ae42dbcc02820658e1e267d05bf2aae7ac208088";
+      };
+    }
+    {
+      name = "apollo_link_batch___apollo_link_batch_1.1.12.tgz";
+      path = fetchurl {
+        name = "apollo_link_batch___apollo_link_batch_1.1.12.tgz";
+        url  = "https://registry.yarnpkg.com/apollo-link-batch/-/apollo-link-batch-1.1.12.tgz";
+        sha1 = "64eb231082f182b0395ef7ab903600627f6c7fe8";
+      };
+    }
+    {
+      name = "apollo_link_http_common___apollo_link_http_common_0.2.13.tgz";
+      path = fetchurl {
+        name = "apollo_link_http_common___apollo_link_http_common_0.2.13.tgz";
+        url  = "https://registry.yarnpkg.com/apollo-link-http-common/-/apollo-link-http-common-0.2.13.tgz";
+        sha1 = "c688f6baaffdc7b269b2db7ae89dae7c58b5b350";
+      };
+    }
+    {
+      name = "apollo_link___apollo_link_1.2.11.tgz";
+      path = fetchurl {
+        name = "apollo_link___apollo_link_1.2.11.tgz";
+        url  = "https://registry.yarnpkg.com/apollo-link/-/apollo-link-1.2.11.tgz";
+        sha1 = "493293b747ad3237114ccd22e9f559e5e24a194d";
+      };
+    }
+    {
+      name = "apollo_upload_client___apollo_upload_client_10.0.0.tgz";
+      path = fetchurl {
+        name = "apollo_upload_client___apollo_upload_client_10.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/apollo-upload-client/-/apollo-upload-client-10.0.0.tgz";
+        sha1 = "6cc3d0ea2aef40bc237b655f5042809cacee1859";
+      };
+    }
+    {
+      name = "apollo_utilities___apollo_utilities_1.3.2.tgz";
+      path = fetchurl {
+        name = "apollo_utilities___apollo_utilities_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/apollo-utilities/-/apollo-utilities-1.3.2.tgz";
+        sha1 = "8cbdcf8b012f664cd6cb5767f6130f5aed9115c9";
+      };
+    }
+    {
+      name = "append_transform___append_transform_1.0.0.tgz";
+      path = fetchurl {
+        name = "append_transform___append_transform_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/append-transform/-/append-transform-1.0.0.tgz";
+        sha1 = "046a52ae582a228bd72f58acfbe2967c678759ab";
+      };
+    }
+    {
+      name = "aproba___aproba_1.2.0.tgz";
+      path = fetchurl {
+        name = "aproba___aproba_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz";
+        sha1 = "6802e6264efd18c790a1b0d517f0f2627bf2c94a";
+      };
+    }
+    {
+      name = "are_we_there_yet___are_we_there_yet_1.1.5.tgz";
+      path = fetchurl {
+        name = "are_we_there_yet___are_we_there_yet_1.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz";
+        sha1 = "4b35c2944f062a8bfcda66410760350fe9ddfc21";
+      };
+    }
+    {
+      name = "argparse___argparse_1.0.10.tgz";
+      path = fetchurl {
+        name = "argparse___argparse_1.0.10.tgz";
+        url  = "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz";
+        sha1 = "bcd6791ea5ae09725e17e5ad988134cd40b3d911";
+      };
+    }
+    {
+      name = "arr_diff___arr_diff_4.0.0.tgz";
+      path = fetchurl {
+        name = "arr_diff___arr_diff_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz";
+        sha1 = "d6461074febfec71e7e15235761a329a5dc7c520";
+      };
+    }
+    {
+      name = "arr_flatten___arr_flatten_1.1.0.tgz";
+      path = fetchurl {
+        name = "arr_flatten___arr_flatten_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz";
+        sha1 = "36048bbff4e7b47e136644316c99669ea5ae91f1";
+      };
+    }
+    {
+      name = "arr_union___arr_union_3.1.0.tgz";
+      path = fetchurl {
+        name = "arr_union___arr_union_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz";
+        sha1 = "e39b09aea9def866a8f206e288af63919bae39c4";
+      };
+    }
+    {
+      name = "array_equal___array_equal_1.0.0.tgz";
+      path = fetchurl {
+        name = "array_equal___array_equal_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz";
+        sha1 = "8c2a5ef2472fd9ea742b04c77a75093ba2757c93";
+      };
+    }
+    {
+      name = "array_find_index___array_find_index_1.0.2.tgz";
+      path = fetchurl {
+        name = "array_find_index___array_find_index_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz";
+        sha1 = "df010aa1287e164bbda6f9723b0a96a1ec4187a1";
+      };
+    }
+    {
+      name = "array_find___array_find_1.0.0.tgz";
+      path = fetchurl {
+        name = "array_find___array_find_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/array-find/-/array-find-1.0.0.tgz";
+        sha1 = "6c8e286d11ed768327f8e62ecee87353ca3e78b8";
+      };
+    }
+    {
+      name = "array_flatten___array_flatten_1.1.1.tgz";
+      path = fetchurl {
+        name = "array_flatten___array_flatten_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz";
+        sha1 = "9a5f699051b1e7073328f2a008968b64ea2955d2";
+      };
+    }
+    {
+      name = "array_flatten___array_flatten_2.1.1.tgz";
+      path = fetchurl {
+        name = "array_flatten___array_flatten_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.1.tgz";
+        sha1 = "426bb9da84090c1838d812c8150af20a8331e296";
+      };
+    }
+    {
+      name = "array_includes___array_includes_3.0.3.tgz";
+      path = fetchurl {
+        name = "array_includes___array_includes_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz";
+        sha1 = "184b48f62d92d7452bb31b323165c7f8bd02266d";
+      };
+    }
+    {
+      name = "array_union___array_union_1.0.2.tgz";
+      path = fetchurl {
+        name = "array_union___array_union_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz";
+        sha1 = "9a34410e4f4e3da23dea375be5be70f24778ec39";
+      };
+    }
+    {
+      name = "array_uniq___array_uniq_1.0.3.tgz";
+      path = fetchurl {
+        name = "array_uniq___array_uniq_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz";
+        sha1 = "af6ac877a25cc7f74e058894753858dfdb24fdb6";
+      };
+    }
+    {
+      name = "array_unique___array_unique_0.3.2.tgz";
+      path = fetchurl {
+        name = "array_unique___array_unique_0.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz";
+        sha1 = "a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428";
+      };
+    }
+    {
+      name = "array.prototype.flat___array.prototype.flat_1.2.3.tgz";
+      path = fetchurl {
+        name = "array.prototype.flat___array.prototype.flat_1.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz";
+        sha1 = "0de82b426b0318dbfdb940089e38b043d37f6c7b";
+      };
+    }
+    {
+      name = "arraybuffer.slice___arraybuffer.slice_0.0.7.tgz";
+      path = fetchurl {
+        name = "arraybuffer.slice___arraybuffer.slice_0.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz";
+        sha1 = "3bbc4275dd584cc1b10809b89d4e8b63a69e7675";
+      };
+    }
+    {
+      name = "arrify___arrify_1.0.1.tgz";
+      path = fetchurl {
+        name = "arrify___arrify_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz";
+        sha1 = "898508da2226f380df904728456849c1501a4b0d";
+      };
+    }
+    {
+      name = "asn1.js___asn1.js_4.10.1.tgz";
+      path = fetchurl {
+        name = "asn1.js___asn1.js_4.10.1.tgz";
+        url  = "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz";
+        sha1 = "b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0";
+      };
+    }
+    {
+      name = "asn1___asn1_0.2.4.tgz";
+      path = fetchurl {
+        name = "asn1___asn1_0.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz";
+        sha1 = "8d2475dfab553bb33e77b54e59e880bb8ce23136";
+      };
+    }
+    {
+      name = "assert_plus___assert_plus_1.0.0.tgz";
+      path = fetchurl {
+        name = "assert_plus___assert_plus_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz";
+        sha1 = "f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525";
+      };
+    }
+    {
+      name = "assert___assert_1.4.1.tgz";
+      path = fetchurl {
+        name = "assert___assert_1.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz";
+        sha1 = "99912d591836b5a6f5b345c0f07eefc08fc65d91";
+      };
+    }
+    {
+      name = "assign_symbols___assign_symbols_1.0.0.tgz";
+      path = fetchurl {
+        name = "assign_symbols___assign_symbols_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz";
+        sha1 = "59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367";
+      };
+    }
+    {
+      name = "astral_regex___astral_regex_1.0.0.tgz";
+      path = fetchurl {
+        name = "astral_regex___astral_regex_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz";
+        sha1 = "6c8c3fb827dd43ee3918f27b82782ab7658a6fd9";
+      };
+    }
+    {
+      name = "async_each___async_each_1.0.3.tgz";
+      path = fetchurl {
+        name = "async_each___async_each_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz";
+        sha1 = "b727dbf87d7651602f06f4d4ac387f47d91b0cbf";
+      };
+    }
+    {
+      name = "async_foreach___async_foreach_0.1.3.tgz";
+      path = fetchurl {
+        name = "async_foreach___async_foreach_0.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/async-foreach/-/async-foreach-0.1.3.tgz";
+        sha1 = "36121f845c0578172de419a97dbeb1d16ec34542";
+      };
+    }
+    {
+      name = "async_limiter___async_limiter_1.0.0.tgz";
+      path = fetchurl {
+        name = "async_limiter___async_limiter_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz";
+        sha1 = "78faed8c3d074ab81f22b4e985d79e8738f720f8";
+      };
+    }
+    {
+      name = "async___async_2.6.3.tgz";
+      path = fetchurl {
+        name = "async___async_2.6.3.tgz";
+        url  = "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz";
+        sha1 = "d72625e2344a3656e3a3ad4fa749fa83299d82ff";
+      };
+    }
+    {
+      name = "asynckit___asynckit_0.4.0.tgz";
+      path = fetchurl {
+        name = "asynckit___asynckit_0.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz";
+        sha1 = "c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79";
+      };
+    }
+    {
+      name = "atob___atob_2.1.2.tgz";
+      path = fetchurl {
+        name = "atob___atob_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz";
+        sha1 = "6d9517eb9e030d2436666651e86bd9f6f13533c9";
+      };
+    }
+    {
+      name = "autoprefixer___autoprefixer_9.6.1.tgz";
+      path = fetchurl {
+        name = "autoprefixer___autoprefixer_9.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.6.1.tgz";
+        sha1 = "51967a02d2d2300bb01866c1611ec8348d355a47";
+      };
+    }
+    {
+      name = "autosize___autosize_4.0.2.tgz";
+      path = fetchurl {
+        name = "autosize___autosize_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/autosize/-/autosize-4.0.2.tgz";
+        sha1 = "073cfd07c8bf45da4b9fd153437f5bafbba1e4c9";
+      };
+    }
+    {
+      name = "aws_sdk___aws_sdk_2.637.0.tgz";
+      path = fetchurl {
+        name = "aws_sdk___aws_sdk_2.637.0.tgz";
+        url  = "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.637.0.tgz";
+        sha1 = "810e25e53acf2250d35fc74498f9d4492e154217";
+      };
+    }
+    {
+      name = "aws_sign2___aws_sign2_0.7.0.tgz";
+      path = fetchurl {
+        name = "aws_sign2___aws_sign2_0.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz";
+        sha1 = "b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8";
+      };
+    }
+    {
+      name = "aws4___aws4_1.8.0.tgz";
+      path = fetchurl {
+        name = "aws4___aws4_1.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz";
+        sha1 = "f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f";
+      };
+    }
+    {
+      name = "axios_mock_adapter___axios_mock_adapter_1.15.0.tgz";
+      path = fetchurl {
+        name = "axios_mock_adapter___axios_mock_adapter_1.15.0.tgz";
+        url  = "https://registry.yarnpkg.com/axios-mock-adapter/-/axios-mock-adapter-1.15.0.tgz";
+        sha1 = "fbc06825d8302c95c3334d21023bba996255d45d";
+      };
+    }
+    {
+      name = "axios___axios_0.19.0.tgz";
+      path = fetchurl {
+        name = "axios___axios_0.19.0.tgz";
+        url  = "https://registry.yarnpkg.com/axios/-/axios-0.19.0.tgz";
+        sha1 = "8e09bff3d9122e133f7b8101c8fbdd00ed3d2ab8";
+      };
+    }
+    {
+      name = "babel_eslint___babel_eslint_10.0.3.tgz";
+      path = fetchurl {
+        name = "babel_eslint___babel_eslint_10.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.0.3.tgz";
+        sha1 = "81a2c669be0f205e19462fed2482d33e4687a88a";
+      };
+    }
+    {
+      name = "babel_jest___babel_jest_24.8.0.tgz";
+      path = fetchurl {
+        name = "babel_jest___babel_jest_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-jest/-/babel-jest-24.8.0.tgz";
+        sha1 = "5c15ff2b28e20b0f45df43fe6b7f2aae93dba589";
+      };
+    }
+    {
+      name = "babel_loader___babel_loader_8.0.6.tgz";
+      path = fetchurl {
+        name = "babel_loader___babel_loader_8.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.0.6.tgz";
+        sha1 = "e33bdb6f362b03f4bb141a0c21ab87c501b70dfb";
+      };
+    }
+    {
+      name = "babel_plugin_dynamic_import_node___babel_plugin_dynamic_import_node_2.3.0.tgz";
+      path = fetchurl {
+        name = "babel_plugin_dynamic_import_node___babel_plugin_dynamic_import_node_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz";
+        sha1 = "f00f507bdaa3c3e3ff6e7e5e98d90a7acab96f7f";
+      };
+    }
+    {
+      name = "babel_plugin_istanbul___babel_plugin_istanbul_5.1.0.tgz";
+      path = fetchurl {
+        name = "babel_plugin_istanbul___babel_plugin_istanbul_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-5.1.0.tgz";
+        sha1 = "6892f529eff65a3e2d33d87dc5888ffa2ecd4a30";
+      };
+    }
+    {
+      name = "babel_plugin_jest_hoist___babel_plugin_jest_hoist_24.6.0.tgz";
+      path = fetchurl {
+        name = "babel_plugin_jest_hoist___babel_plugin_jest_hoist_24.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.6.0.tgz";
+        sha1 = "f7f7f7ad150ee96d7a5e8e2c5da8319579e78019";
+      };
+    }
+    {
+      name = "babel_plugin_lodash___babel_plugin_lodash_3.3.4.tgz";
+      path = fetchurl {
+        name = "babel_plugin_lodash___babel_plugin_lodash_3.3.4.tgz";
+        url  = "https://registry.yarnpkg.com/babel-plugin-lodash/-/babel-plugin-lodash-3.3.4.tgz";
+        sha1 = "4f6844358a1340baed182adbeffa8df9967bc196";
+      };
+    }
+    {
+      name = "babel_plugin_rewire___babel_plugin_rewire_1.2.0.tgz";
+      path = fetchurl {
+        name = "babel_plugin_rewire___babel_plugin_rewire_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-plugin-rewire/-/babel-plugin-rewire-1.2.0.tgz";
+        sha1 = "822562d72ed2c84e47c0f95ee232c920853e9d89";
+      };
+    }
+    {
+      name = "babel_preset_jest___babel_preset_jest_24.6.0.tgz";
+      path = fetchurl {
+        name = "babel_preset_jest___babel_preset_jest_24.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-24.6.0.tgz";
+        sha1 = "66f06136eefce87797539c0d63f1769cc3915984";
+      };
+    }
+    {
+      name = "babylon___babylon_7.0.0_beta.19.tgz";
+      path = fetchurl {
+        name = "babylon___babylon_7.0.0_beta.19.tgz";
+        url  = "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.19.tgz";
+        sha1 = "e928c7e807e970e0536b078ab3e0c48f9e052503";
+      };
+    }
+    {
+      name = "backo2___backo2_1.0.2.tgz";
+      path = fetchurl {
+        name = "backo2___backo2_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/backo2/-/backo2-1.0.2.tgz";
+        sha1 = "31ab1ac8b129363463e35b3ebb69f4dfcfba7947";
+      };
+    }
+    {
+      name = "bail___bail_1.0.3.tgz";
+      path = fetchurl {
+        name = "bail___bail_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/bail/-/bail-1.0.3.tgz";
+        sha1 = "63cfb9ddbac829b02a3128cd53224be78e6c21a3";
+      };
+    }
+    {
+      name = "balanced_match___balanced_match_1.0.0.tgz";
+      path = fetchurl {
+        name = "balanced_match___balanced_match_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz";
+        sha1 = "89b4d199ab2bee49de164ea02b89ce462d71b767";
+      };
+    }
+    {
+      name = "base64_arraybuffer___base64_arraybuffer_0.1.5.tgz";
+      path = fetchurl {
+        name = "base64_arraybuffer___base64_arraybuffer_0.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz";
+        sha1 = "73926771923b5a19747ad666aa5cd4bf9c6e9ce8";
+      };
+    }
+    {
+      name = "base64_js___base64_js_1.2.3.tgz";
+      path = fetchurl {
+        name = "base64_js___base64_js_1.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.3.tgz";
+        sha1 = "fb13668233d9614cf5fb4bce95a9ba4096cdf801";
+      };
+    }
+    {
+      name = "base64id___base64id_1.0.0.tgz";
+      path = fetchurl {
+        name = "base64id___base64id_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/base64id/-/base64id-1.0.0.tgz";
+        sha1 = "47688cb99bb6804f0e06d3e763b1c32e57d8e6b6";
+      };
+    }
+    {
+      name = "base___base_0.11.2.tgz";
+      path = fetchurl {
+        name = "base___base_0.11.2.tgz";
+        url  = "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz";
+        sha1 = "7bde5ced145b6d551a90db87f83c558b4eb48a8f";
+      };
+    }
+    {
+      name = "batch___batch_0.6.1.tgz";
+      path = fetchurl {
+        name = "batch___batch_0.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz";
+        sha1 = "dc34314f4e679318093fc760272525f94bf25c16";
+      };
+    }
+    {
+      name = "bcrypt_pbkdf___bcrypt_pbkdf_1.0.2.tgz";
+      path = fetchurl {
+        name = "bcrypt_pbkdf___bcrypt_pbkdf_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz";
+        sha1 = "a4301d389b6a43f9b67ff3ca11a3f6637e360e9e";
+      };
+    }
+    {
+      name = "better_assert___better_assert_1.0.2.tgz";
+      path = fetchurl {
+        name = "better_assert___better_assert_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/better-assert/-/better-assert-1.0.2.tgz";
+        sha1 = "40866b9e1b9e0b55b481894311e68faffaebc522";
+      };
+    }
+    {
+      name = "bfj___bfj_6.1.1.tgz";
+      path = fetchurl {
+        name = "bfj___bfj_6.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/bfj/-/bfj-6.1.1.tgz";
+        sha1 = "05a3b7784fbd72cfa3c22e56002ef99336516c48";
+      };
+    }
+    {
+      name = "big.js___big.js_5.2.2.tgz";
+      path = fetchurl {
+        name = "big.js___big.js_5.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz";
+        sha1 = "65f0af382f578bcdc742bd9c281e9cb2d7768328";
+      };
+    }
+    {
+      name = "binary_extensions___binary_extensions_1.11.0.tgz";
+      path = fetchurl {
+        name = "binary_extensions___binary_extensions_1.11.0.tgz";
+        url  = "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.11.0.tgz";
+        sha1 = "46aa1751fb6a2f93ee5e689bb1087d4b14c6c205";
+      };
+    }
+    {
+      name = "binary_extensions___binary_extensions_2.0.0.tgz";
+      path = fetchurl {
+        name = "binary_extensions___binary_extensions_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz";
+        sha1 = "23c0df14f6a88077f5f986c0d167ec03c3d5537c";
+      };
+    }
+    {
+      name = "binaryextensions___binaryextensions_2.1.1.tgz";
+      path = fetchurl {
+        name = "binaryextensions___binaryextensions_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/binaryextensions/-/binaryextensions-2.1.1.tgz";
+        sha1 = "3209a51ca4a4ad541a3b8d3d6a6d5b83a2485935";
+      };
+    }
+    {
+      name = "blob___blob_0.0.4.tgz";
+      path = fetchurl {
+        name = "blob___blob_0.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/blob/-/blob-0.0.4.tgz";
+        sha1 = "bcf13052ca54463f30f9fc7e95b9a47630a94921";
+      };
+    }
+    {
+      name = "block_stream___block_stream_0.0.9.tgz";
+      path = fetchurl {
+        name = "block_stream___block_stream_0.0.9.tgz";
+        url  = "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz";
+        sha1 = "13ebfe778a03205cfe03751481ebb4b3300c126a";
+      };
+    }
+    {
+      name = "bluebird___bluebird_3.5.5.tgz";
+      path = fetchurl {
+        name = "bluebird___bluebird_3.5.5.tgz";
+        url  = "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.5.tgz";
+        sha1 = "a8d0afd73251effbbd5fe384a77d73003c17a71f";
+      };
+    }
+    {
+      name = "bn.js___bn.js_4.11.8.tgz";
+      path = fetchurl {
+        name = "bn.js___bn.js_4.11.8.tgz";
+        url  = "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz";
+        sha1 = "2cde09eb5ee341f484746bb0309b3253b1b1442f";
+      };
+    }
+    {
+      name = "body_parser___body_parser_1.19.0.tgz";
+      path = fetchurl {
+        name = "body_parser___body_parser_1.19.0.tgz";
+        url  = "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.0.tgz";
+        sha1 = "96b2709e57c9c4e09a6fd66a8fd979844f69f08a";
+      };
+    }
+    {
+      name = "bonjour___bonjour_3.5.0.tgz";
+      path = fetchurl {
+        name = "bonjour___bonjour_3.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz";
+        sha1 = "8e890a183d8ee9a2393b3844c691a42bcf7bc9f5";
+      };
+    }
+    {
+      name = "bootstrap_vue___bootstrap_vue_2.1.0.tgz";
+      path = fetchurl {
+        name = "bootstrap_vue___bootstrap_vue_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/bootstrap-vue/-/bootstrap-vue-2.1.0.tgz";
+        sha1 = "41c0cd265a6cea14ffe29eeea71543ec396d1789";
+      };
+    }
+    {
+      name = "bootstrap___bootstrap_4.3.1.tgz";
+      path = fetchurl {
+        name = "bootstrap___bootstrap_4.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.3.1.tgz";
+        sha1 = "280ca8f610504d99d7b6b4bfc4b68cec601704ac";
+      };
+    }
+    {
+      name = "boxen___boxen_1.3.0.tgz";
+      path = fetchurl {
+        name = "boxen___boxen_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/boxen/-/boxen-1.3.0.tgz";
+        sha1 = "55c6c39a8ba58d9c61ad22cd877532deb665a20b";
+      };
+    }
+    {
+      name = "brace_expansion___brace_expansion_1.1.11.tgz";
+      path = fetchurl {
+        name = "brace_expansion___brace_expansion_1.1.11.tgz";
+        url  = "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz";
+        sha1 = "3c7fcbf529d87226f3d2f52b966ff5271eb441dd";
+      };
+    }
+    {
+      name = "braces___braces_2.3.2.tgz";
+      path = fetchurl {
+        name = "braces___braces_2.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz";
+        sha1 = "5979fd3f14cd531565e5fa2df1abfff1dfaee729";
+      };
+    }
+    {
+      name = "braces___braces_3.0.2.tgz";
+      path = fetchurl {
+        name = "braces___braces_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz";
+        sha1 = "3454e1a462ee8d599e236df336cd9ea4f8afe107";
+      };
+    }
+    {
+      name = "brorand___brorand_1.1.0.tgz";
+      path = fetchurl {
+        name = "brorand___brorand_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz";
+        sha1 = "12c25efe40a45e3c323eb8675a0a0ce57b22371f";
+      };
+    }
+    {
+      name = "browser_process_hrtime___browser_process_hrtime_0.1.3.tgz";
+      path = fetchurl {
+        name = "browser_process_hrtime___browser_process_hrtime_0.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz";
+        sha1 = "616f00faef1df7ec1b5bf9cfe2bdc3170f26c7b4";
+      };
+    }
+    {
+      name = "browser_resolve___browser_resolve_1.11.3.tgz";
+      path = fetchurl {
+        name = "browser_resolve___browser_resolve_1.11.3.tgz";
+        url  = "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.3.tgz";
+        sha1 = "9b7cbb3d0f510e4cb86bdbd796124d28b5890af6";
+      };
+    }
+    {
+      name = "browserify_aes___browserify_aes_1.1.1.tgz";
+      path = fetchurl {
+        name = "browserify_aes___browserify_aes_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.1.1.tgz";
+        sha1 = "38b7ab55edb806ff2dcda1a7f1620773a477c49f";
+      };
+    }
+    {
+      name = "browserify_cipher___browserify_cipher_1.0.0.tgz";
+      path = fetchurl {
+        name = "browserify_cipher___browserify_cipher_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.0.tgz";
+        sha1 = "9988244874bf5ed4e28da95666dcd66ac8fc363a";
+      };
+    }
+    {
+      name = "browserify_des___browserify_des_1.0.0.tgz";
+      path = fetchurl {
+        name = "browserify_des___browserify_des_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.0.tgz";
+        sha1 = "daa277717470922ed2fe18594118a175439721dd";
+      };
+    }
+    {
+      name = "browserify_rsa___browserify_rsa_4.0.1.tgz";
+      path = fetchurl {
+        name = "browserify_rsa___browserify_rsa_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz";
+        sha1 = "21e0abfaf6f2029cf2fafb133567a701d4135524";
+      };
+    }
+    {
+      name = "browserify_sign___browserify_sign_4.0.4.tgz";
+      path = fetchurl {
+        name = "browserify_sign___browserify_sign_4.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz";
+        sha1 = "aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298";
+      };
+    }
+    {
+      name = "browserify_zlib___browserify_zlib_0.2.0.tgz";
+      path = fetchurl {
+        name = "browserify_zlib___browserify_zlib_0.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz";
+        sha1 = "2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f";
+      };
+    }
+    {
+      name = "browserslist___browserslist_4.8.7.tgz";
+      path = fetchurl {
+        name = "browserslist___browserslist_4.8.7.tgz";
+        url  = "https://registry.yarnpkg.com/browserslist/-/browserslist-4.8.7.tgz";
+        sha1 = "ec8301ff415e6a42c949d0e66b405eb539c532d0";
+      };
+    }
+    {
+      name = "bs_logger___bs_logger_0.2.6.tgz";
+      path = fetchurl {
+        name = "bs_logger___bs_logger_0.2.6.tgz";
+        url  = "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz";
+        sha1 = "eb7d365307a72cf974cc6cda76b68354ad336bd8";
+      };
+    }
+    {
+      name = "bser___bser_2.0.0.tgz";
+      path = fetchurl {
+        name = "bser___bser_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/bser/-/bser-2.0.0.tgz";
+        sha1 = "9ac78d3ed5d915804fd87acb158bc797147a1719";
+      };
+    }
+    {
+      name = "buffer_from___buffer_from_1.1.1.tgz";
+      path = fetchurl {
+        name = "buffer_from___buffer_from_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz";
+        sha1 = "32713bc028f75c02fdb710d7c7bcec1f2c6070ef";
+      };
+    }
+    {
+      name = "buffer_indexof___buffer_indexof_1.1.0.tgz";
+      path = fetchurl {
+        name = "buffer_indexof___buffer_indexof_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.0.tgz";
+        sha1 = "f54f647c4f4e25228baa656a2e57e43d5f270982";
+      };
+    }
+    {
+      name = "buffer_json___buffer_json_2.0.0.tgz";
+      path = fetchurl {
+        name = "buffer_json___buffer_json_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-json/-/buffer-json-2.0.0.tgz";
+        sha1 = "f73e13b1e42f196fe2fd67d001c7d7107edd7c23";
+      };
+    }
+    {
+      name = "buffer_xor___buffer_xor_1.0.3.tgz";
+      path = fetchurl {
+        name = "buffer_xor___buffer_xor_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz";
+        sha1 = "26e61ed1422fb70dd42e6e36729ed51d855fe8d9";
+      };
+    }
+    {
+      name = "buffer___buffer_4.9.1.tgz";
+      path = fetchurl {
+        name = "buffer___buffer_4.9.1.tgz";
+        url  = "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz";
+        sha1 = "6d1bb601b07a4efced97094132093027c95bc298";
+      };
+    }
+    {
+      name = "builtin_status_codes___builtin_status_codes_3.0.0.tgz";
+      path = fetchurl {
+        name = "builtin_status_codes___builtin_status_codes_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz";
+        sha1 = "85982878e21b98e1c66425e03d0174788f569ee8";
+      };
+    }
+    {
+      name = "bytes___bytes_3.0.0.tgz";
+      path = fetchurl {
+        name = "bytes___bytes_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz";
+        sha1 = "d32815404d689699f85a4ea4fa8755dd13a96048";
+      };
+    }
+    {
+      name = "bytes___bytes_3.1.0.tgz";
+      path = fetchurl {
+        name = "bytes___bytes_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz";
+        sha1 = "f6cf7933a360e0588fa9fde85651cdc7f805d1f6";
+      };
+    }
+    {
+      name = "cacache___cacache_12.0.3.tgz";
+      path = fetchurl {
+        name = "cacache___cacache_12.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/cacache/-/cacache-12.0.3.tgz";
+        sha1 = "be99abba4e1bf5df461cd5a2c1071fc432573390";
+      };
+    }
+    {
+      name = "cacache___cacache_13.0.1.tgz";
+      path = fetchurl {
+        name = "cacache___cacache_13.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/cacache/-/cacache-13.0.1.tgz";
+        sha1 = "a8000c21697089082f85287a1aec6e382024a71c";
+      };
+    }
+    {
+      name = "cache_base___cache_base_1.0.1.tgz";
+      path = fetchurl {
+        name = "cache_base___cache_base_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz";
+        sha1 = "0a7f46416831c8b662ee36fe4e7c59d76f666ab2";
+      };
+    }
+    {
+      name = "cache_loader___cache_loader_4.1.0.tgz";
+      path = fetchurl {
+        name = "cache_loader___cache_loader_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/cache-loader/-/cache-loader-4.1.0.tgz";
+        sha1 = "9948cae353aec0a1fcb1eafda2300816ec85387e";
+      };
+    }
+    {
+      name = "call_me_maybe___call_me_maybe_1.0.1.tgz";
+      path = fetchurl {
+        name = "call_me_maybe___call_me_maybe_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz";
+        sha1 = "26d208ea89e37b5cbde60250a15f031c16a4d66b";
+      };
+    }
+    {
+      name = "caller_callsite___caller_callsite_2.0.0.tgz";
+      path = fetchurl {
+        name = "caller_callsite___caller_callsite_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz";
+        sha1 = "847e0fce0a223750a9a027c54b33731ad3154134";
+      };
+    }
+    {
+      name = "caller_path___caller_path_2.0.0.tgz";
+      path = fetchurl {
+        name = "caller_path___caller_path_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz";
+        sha1 = "468f83044e369ab2010fac5f06ceee15bb2cb1f4";
+      };
+    }
+    {
+      name = "callsite___callsite_1.0.0.tgz";
+      path = fetchurl {
+        name = "callsite___callsite_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/callsite/-/callsite-1.0.0.tgz";
+        sha1 = "280398e5d664bd74038b6f0905153e6e8af1bc20";
+      };
+    }
+    {
+      name = "callsites___callsites_2.0.0.tgz";
+      path = fetchurl {
+        name = "callsites___callsites_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz";
+        sha1 = "06eb84f00eea413da86affefacbffb36093b3c50";
+      };
+    }
+    {
+      name = "callsites___callsites_3.0.0.tgz";
+      path = fetchurl {
+        name = "callsites___callsites_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/callsites/-/callsites-3.0.0.tgz";
+        sha1 = "fb7eb569b72ad7a45812f93fd9430a3e410b3dd3";
+      };
+    }
+    {
+      name = "camel_case___camel_case_3.0.0.tgz";
+      path = fetchurl {
+        name = "camel_case___camel_case_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz";
+        sha1 = "ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73";
+      };
+    }
+    {
+      name = "camelcase_keys___camelcase_keys_2.1.0.tgz";
+      path = fetchurl {
+        name = "camelcase_keys___camelcase_keys_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz";
+        sha1 = "308beeaffdf28119051efa1d932213c91b8f92e7";
+      };
+    }
+    {
+      name = "camelcase_keys___camelcase_keys_4.2.0.tgz";
+      path = fetchurl {
+        name = "camelcase_keys___camelcase_keys_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-4.2.0.tgz";
+        sha1 = "a2aa5fb1af688758259c32c141426d78923b9b77";
+      };
+    }
+    {
+      name = "camelcase___camelcase_2.1.1.tgz";
+      path = fetchurl {
+        name = "camelcase___camelcase_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz";
+        sha1 = "7c1d16d679a1bbe59ca02cacecfb011e201f5a1f";
+      };
+    }
+    {
+      name = "camelcase___camelcase_3.0.0.tgz";
+      path = fetchurl {
+        name = "camelcase___camelcase_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz";
+        sha1 = "32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a";
+      };
+    }
+    {
+      name = "camelcase___camelcase_4.1.0.tgz";
+      path = fetchurl {
+        name = "camelcase___camelcase_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz";
+        sha1 = "d545635be1e33c542649c69173e5de6acfae34dd";
+      };
+    }
+    {
+      name = "camelcase___camelcase_5.3.1.tgz";
+      path = fetchurl {
+        name = "camelcase___camelcase_5.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz";
+        sha1 = "e3c9b31569e106811df242f715725a1f4c494320";
+      };
+    }
+    {
+      name = "caniuse_lite___caniuse_lite_1.0.30001030.tgz";
+      path = fetchurl {
+        name = "caniuse_lite___caniuse_lite_1.0.30001030.tgz";
+        url  = "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001030.tgz";
+        sha1 = "78076c4c6d67d3e41d6eb9399853fb27fe6e44ee";
+      };
+    }
+    {
+      name = "capture_exit___capture_exit_2.0.0.tgz";
+      path = fetchurl {
+        name = "capture_exit___capture_exit_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz";
+        sha1 = "fb953bfaebeb781f62898239dabb426d08a509a4";
+      };
+    }
+    {
+      name = "capture_stack_trace___capture_stack_trace_1.0.0.tgz";
+      path = fetchurl {
+        name = "capture_stack_trace___capture_stack_trace_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz";
+        sha1 = "4a6fa07399c26bba47f0b2496b4d0fb408c5550d";
+      };
+    }
+    {
+      name = "caseless___caseless_0.12.0.tgz";
+      path = fetchurl {
+        name = "caseless___caseless_0.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz";
+        sha1 = "1b681c21ff84033c826543090689420d187151dc";
+      };
+    }
+    {
+      name = "catharsis___catharsis_0.8.9.tgz";
+      path = fetchurl {
+        name = "catharsis___catharsis_0.8.9.tgz";
+        url  = "https://registry.yarnpkg.com/catharsis/-/catharsis-0.8.9.tgz";
+        sha1 = "98cc890ca652dd2ef0e70b37925310ff9e90fc8b";
+      };
+    }
+    {
+      name = "ccount___ccount_1.0.3.tgz";
+      path = fetchurl {
+        name = "ccount___ccount_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/ccount/-/ccount-1.0.3.tgz";
+        sha1 = "f1cec43f332e2ea5a569fd46f9f5bde4e6102aff";
+      };
+    }
+    {
+      name = "chalk___chalk_2.4.2.tgz";
+      path = fetchurl {
+        name = "chalk___chalk_2.4.2.tgz";
+        url  = "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz";
+        sha1 = "cd42541677a54333cf541a49108c1432b44c9424";
+      };
+    }
+    {
+      name = "chalk___chalk_1.1.3.tgz";
+      path = fetchurl {
+        name = "chalk___chalk_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz";
+        sha1 = "a8115c55e4a702fe4d150abd3872822a7e09fc98";
+      };
+    }
+    {
+      name = "character_entities_html4___character_entities_html4_1.1.2.tgz";
+      path = fetchurl {
+        name = "character_entities_html4___character_entities_html4_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-1.1.2.tgz";
+        sha1 = "c44fdde3ce66b52e8d321d6c1bf46101f0150610";
+      };
+    }
+    {
+      name = "character_entities_legacy___character_entities_legacy_1.1.2.tgz";
+      path = fetchurl {
+        name = "character_entities_legacy___character_entities_legacy_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.2.tgz";
+        sha1 = "7c6defb81648498222c9855309953d05f4d63a9c";
+      };
+    }
+    {
+      name = "character_entities___character_entities_1.2.2.tgz";
+      path = fetchurl {
+        name = "character_entities___character_entities_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/character-entities/-/character-entities-1.2.2.tgz";
+        sha1 = "58c8f371c0774ef0ba9b2aca5f00d8f100e6e363";
+      };
+    }
+    {
+      name = "character_reference_invalid___character_reference_invalid_1.1.2.tgz";
+      path = fetchurl {
+        name = "character_reference_invalid___character_reference_invalid_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.2.tgz";
+        sha1 = "21e421ad3d84055952dab4a43a04e73cd425d3ed";
+      };
+    }
+    {
+      name = "chardet___chardet_0.7.0.tgz";
+      path = fetchurl {
+        name = "chardet___chardet_0.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz";
+        sha1 = "90094849f0937f2eedc2425d0d28a9e5f0cbad9e";
+      };
+    }
+    {
+      name = "charenc___charenc_0.0.2.tgz";
+      path = fetchurl {
+        name = "charenc___charenc_0.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/charenc/-/charenc-0.0.2.tgz";
+        sha1 = "c0a1d2f3a7092e03774bfa83f14c0fc5790a8667";
+      };
+    }
+    {
+      name = "chart.js___chart.js_2.7.2.tgz";
+      path = fetchurl {
+        name = "chart.js___chart.js_2.7.2.tgz";
+        url  = "https://registry.yarnpkg.com/chart.js/-/chart.js-2.7.2.tgz";
+        sha1 = "3c9fde4dc5b95608211bdefeda7e5d33dffa5714";
+      };
+    }
+    {
+      name = "chartjs_color_string___chartjs_color_string_0.5.0.tgz";
+      path = fetchurl {
+        name = "chartjs_color_string___chartjs_color_string_0.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/chartjs-color-string/-/chartjs-color-string-0.5.0.tgz";
+        sha1 = "8d3752d8581d86687c35bfe2cb80ac5213ceb8c1";
+      };
+    }
+    {
+      name = "chartjs_color___chartjs_color_2.2.0.tgz";
+      path = fetchurl {
+        name = "chartjs_color___chartjs_color_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/chartjs-color/-/chartjs-color-2.2.0.tgz";
+        sha1 = "84a2fb755787ed85c39dd6dd8c7b1d88429baeae";
+      };
+    }
+    {
+      name = "check_types___check_types_7.3.0.tgz";
+      path = fetchurl {
+        name = "check_types___check_types_7.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/check-types/-/check-types-7.3.0.tgz";
+        sha1 = "468f571a4435c24248f5fd0cb0e8d87c3c341e7d";
+      };
+    }
+    {
+      name = "chokidar___chokidar_2.1.8.tgz";
+      path = fetchurl {
+        name = "chokidar___chokidar_2.1.8.tgz";
+        url  = "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz";
+        sha1 = "804b3a7b6a99358c3c5c61e71d8728f041cff917";
+      };
+    }
+    {
+      name = "chokidar___chokidar_3.0.2.tgz";
+      path = fetchurl {
+        name = "chokidar___chokidar_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/chokidar/-/chokidar-3.0.2.tgz";
+        sha1 = "0d1cd6d04eb2df0327446188cd13736a3367d681";
+      };
+    }
+    {
+      name = "chownr___chownr_1.1.3.tgz";
+      path = fetchurl {
+        name = "chownr___chownr_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/chownr/-/chownr-1.1.3.tgz";
+        sha1 = "42d837d5239688d55f303003a508230fa6727142";
+      };
+    }
+    {
+      name = "chrome_trace_event___chrome_trace_event_1.0.2.tgz";
+      path = fetchurl {
+        name = "chrome_trace_event___chrome_trace_event_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz";
+        sha1 = "234090ee97c7d4ad1a2c4beae27505deffc608a4";
+      };
+    }
+    {
+      name = "ci_info___ci_info_1.6.0.tgz";
+      path = fetchurl {
+        name = "ci_info___ci_info_1.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/ci-info/-/ci-info-1.6.0.tgz";
+        sha1 = "2ca20dbb9ceb32d4524a683303313f0304b1e497";
+      };
+    }
+    {
+      name = "ci_info___ci_info_2.0.0.tgz";
+      path = fetchurl {
+        name = "ci_info___ci_info_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz";
+        sha1 = "67a9e964be31a51e15e5010d58e6f12834002f46";
+      };
+    }
+    {
+      name = "cipher_base___cipher_base_1.0.4.tgz";
+      path = fetchurl {
+        name = "cipher_base___cipher_base_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz";
+        sha1 = "8760e4ecc272f4c363532f926d874aae2c1397de";
+      };
+    }
+    {
+      name = "class_utils___class_utils_0.3.6.tgz";
+      path = fetchurl {
+        name = "class_utils___class_utils_0.3.6.tgz";
+        url  = "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz";
+        sha1 = "f93369ae8b9a7ce02fd41faad0ca83033190c463";
+      };
+    }
+    {
+      name = "classlist_polyfill___classlist_polyfill_1.2.0.tgz";
+      path = fetchurl {
+        name = "classlist_polyfill___classlist_polyfill_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/classlist-polyfill/-/classlist-polyfill-1.2.0.tgz";
+        sha1 = "935bc2dfd9458a876b279617514638bcaa964a2e";
+      };
+    }
+    {
+      name = "clean_css___clean_css_4.2.1.tgz";
+      path = fetchurl {
+        name = "clean_css___clean_css_4.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.1.tgz";
+        sha1 = "2d411ef76b8569b6d0c84068dabe85b0aa5e5c17";
+      };
+    }
+    {
+      name = "clean_stack___clean_stack_2.2.0.tgz";
+      path = fetchurl {
+        name = "clean_stack___clean_stack_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz";
+        sha1 = "ee8472dbb129e727b31e8a10a427dee9dfe4008b";
+      };
+    }
+    {
+      name = "cli_boxes___cli_boxes_1.0.0.tgz";
+      path = fetchurl {
+        name = "cli_boxes___cli_boxes_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-1.0.0.tgz";
+        sha1 = "4fa917c3e59c94a004cd61f8ee509da651687143";
+      };
+    }
+    {
+      name = "cli_cursor___cli_cursor_3.1.0.tgz";
+      path = fetchurl {
+        name = "cli_cursor___cli_cursor_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz";
+        sha1 = "264305a7ae490d1d03bf0c9ba7c925d1753af307";
+      };
+    }
+    {
+      name = "cli_width___cli_width_2.2.0.tgz";
+      path = fetchurl {
+        name = "cli_width___cli_width_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz";
+        sha1 = "ff19ede8a9a5e579324147b0c11f0fbcbabed639";
+      };
+    }
+    {
+      name = "clipboard___clipboard_1.7.1.tgz";
+      path = fetchurl {
+        name = "clipboard___clipboard_1.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/clipboard/-/clipboard-1.7.1.tgz";
+        sha1 = "360d6d6946e99a7a1fef395e42ba92b5e9b5a16b";
+      };
+    }
+    {
+      name = "cliui___cliui_3.2.0.tgz";
+      path = fetchurl {
+        name = "cliui___cliui_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz";
+        sha1 = "120601537a916d29940f934da3b48d585a39213d";
+      };
+    }
+    {
+      name = "cliui___cliui_4.1.0.tgz";
+      path = fetchurl {
+        name = "cliui___cliui_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz";
+        sha1 = "348422dbe82d800b3022eef4f6ac10bf2e4d1b49";
+      };
+    }
+    {
+      name = "cliui___cliui_5.0.0.tgz";
+      path = fetchurl {
+        name = "cliui___cliui_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz";
+        sha1 = "deefcfdb2e800784aa34f46fa08e06851c7bbbc5";
+      };
+    }
+    {
+      name = "clone_deep___clone_deep_4.0.1.tgz";
+      path = fetchurl {
+        name = "clone_deep___clone_deep_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz";
+        sha1 = "c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387";
+      };
+    }
+    {
+      name = "clone_regexp___clone_regexp_2.2.0.tgz";
+      path = fetchurl {
+        name = "clone_regexp___clone_regexp_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/clone-regexp/-/clone-regexp-2.2.0.tgz";
+        sha1 = "7d65e00885cd8796405c35a737e7a86b7429e36f";
+      };
+    }
+    {
+      name = "co___co_4.6.0.tgz";
+      path = fetchurl {
+        name = "co___co_4.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz";
+        sha1 = "6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184";
+      };
+    }
+    {
+      name = "code_point_at___code_point_at_1.1.0.tgz";
+      path = fetchurl {
+        name = "code_point_at___code_point_at_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz";
+        sha1 = "0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77";
+      };
+    }
+    {
+      name = "codemirror___codemirror_5.53.2.tgz";
+      path = fetchurl {
+        name = "codemirror___codemirror_5.53.2.tgz";
+        url  = "https://registry.yarnpkg.com/codemirror/-/codemirror-5.53.2.tgz";
+        sha1 = "9799121cf8c50809cca487304e9de3a74d33f428";
+      };
+    }
+    {
+      name = "codesandbox_api___codesandbox_api_0.0.23.tgz";
+      path = fetchurl {
+        name = "codesandbox_api___codesandbox_api_0.0.23.tgz";
+        url  = "https://registry.yarnpkg.com/codesandbox-api/-/codesandbox-api-0.0.23.tgz";
+        sha1 = "bf650a21b5f3c2369e03f0c19d10b4e2ba255b4f";
+      };
+    }
+    {
+      name = "codesandbox_import_util_types___codesandbox_import_util_types_1.2.11.tgz";
+      path = fetchurl {
+        name = "codesandbox_import_util_types___codesandbox_import_util_types_1.2.11.tgz";
+        url  = "https://registry.yarnpkg.com/codesandbox-import-util-types/-/codesandbox-import-util-types-1.2.11.tgz";
+        sha1 = "68e812f21d6b309e9a52eec5cf027c3e63b4c703";
+      };
+    }
+    {
+      name = "codesandbox_import_utils___codesandbox_import_utils_1.2.11.tgz";
+      path = fetchurl {
+        name = "codesandbox_import_utils___codesandbox_import_utils_1.2.11.tgz";
+        url  = "https://registry.yarnpkg.com/codesandbox-import-utils/-/codesandbox-import-utils-1.2.11.tgz";
+        sha1 = "b88423a4a7c785175c784c84e87f5950820280e1";
+      };
+    }
+    {
+      name = "collapse_white_space___collapse_white_space_1.0.5.tgz";
+      path = fetchurl {
+        name = "collapse_white_space___collapse_white_space_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/collapse-white-space/-/collapse-white-space-1.0.5.tgz";
+        sha1 = "c2495b699ab1ed380d29a1091e01063e75dbbe3a";
+      };
+    }
+    {
+      name = "collection_visit___collection_visit_1.0.0.tgz";
+      path = fetchurl {
+        name = "collection_visit___collection_visit_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz";
+        sha1 = "4bc0373c164bc3291b4d368c829cf1a80a59dca0";
+      };
+    }
+    {
+      name = "color_convert___color_convert_0.5.3.tgz";
+      path = fetchurl {
+        name = "color_convert___color_convert_0.5.3.tgz";
+        url  = "https://registry.yarnpkg.com/color-convert/-/color-convert-0.5.3.tgz";
+        sha1 = "bdb6c69ce660fadffe0b0007cc447e1b9f7282bd";
+      };
+    }
+    {
+      name = "color_convert___color_convert_1.9.3.tgz";
+      path = fetchurl {
+        name = "color_convert___color_convert_1.9.3.tgz";
+        url  = "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz";
+        sha1 = "bb71850690e1f136567de629d2d5471deda4c1e8";
+      };
+    }
+    {
+      name = "color_name___color_name_1.1.3.tgz";
+      path = fetchurl {
+        name = "color_name___color_name_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz";
+        sha1 = "a7d0558bd89c42f795dd42328f740831ca53bc25";
+      };
+    }
+    {
+      name = "colors___colors_1.3.3.tgz";
+      path = fetchurl {
+        name = "colors___colors_1.3.3.tgz";
+        url  = "https://registry.yarnpkg.com/colors/-/colors-1.3.3.tgz";
+        sha1 = "39e005d546afe01e01f9c4ca8fa50f686a01205d";
+      };
+    }
+    {
+      name = "combined_stream___combined_stream_1.0.7.tgz";
+      path = fetchurl {
+        name = "combined_stream___combined_stream_1.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.7.tgz";
+        sha1 = "2d1d24317afb8abe95d6d2c0b07b57813539d828";
+      };
+    }
+    {
+      name = "commander___commander_2.20.0.tgz";
+      path = fetchurl {
+        name = "commander___commander_2.20.0.tgz";
+        url  = "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz";
+        sha1 = "d58bb2b5c1ee8f87b0d340027e9e94e222c5a422";
+      };
+    }
+    {
+      name = "commander___commander_2.9.0.tgz";
+      path = fetchurl {
+        name = "commander___commander_2.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz";
+        sha1 = "9c99094176e12240cb22d6c5146098400fe0f7d4";
+      };
+    }
+    {
+      name = "commondir___commondir_1.0.1.tgz";
+      path = fetchurl {
+        name = "commondir___commondir_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz";
+        sha1 = "ddd800da0c66127393cca5950ea968a3aaf1253b";
+      };
+    }
+    {
+      name = "compare_versions___compare_versions_3.5.1.tgz";
+      path = fetchurl {
+        name = "compare_versions___compare_versions_3.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/compare-versions/-/compare-versions-3.5.1.tgz";
+        sha1 = "26e1f5cf0d48a77eced5046b9f67b6b61075a393";
+      };
+    }
+    {
+      name = "component_bind___component_bind_1.0.0.tgz";
+      path = fetchurl {
+        name = "component_bind___component_bind_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/component-bind/-/component-bind-1.0.0.tgz";
+        sha1 = "00c608ab7dcd93897c0009651b1d3a8e1e73bbd1";
+      };
+    }
+    {
+      name = "component_emitter___component_emitter_1.2.1.tgz";
+      path = fetchurl {
+        name = "component_emitter___component_emitter_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz";
+        sha1 = "137918d6d78283f7df7a6b7c5a63e140e69425e6";
+      };
+    }
+    {
+      name = "component_inherit___component_inherit_0.0.3.tgz";
+      path = fetchurl {
+        name = "component_inherit___component_inherit_0.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/component-inherit/-/component-inherit-0.0.3.tgz";
+        sha1 = "645fc4adf58b72b649d5cae65135619db26ff143";
+      };
+    }
+    {
+      name = "compressible___compressible_2.0.17.tgz";
+      path = fetchurl {
+        name = "compressible___compressible_2.0.17.tgz";
+        url  = "https://registry.yarnpkg.com/compressible/-/compressible-2.0.17.tgz";
+        sha1 = "6e8c108a16ad58384a977f3a482ca20bff2f38c1";
+      };
+    }
+    {
+      name = "compression_webpack_plugin___compression_webpack_plugin_3.0.1.tgz";
+      path = fetchurl {
+        name = "compression_webpack_plugin___compression_webpack_plugin_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/compression-webpack-plugin/-/compression-webpack-plugin-3.0.1.tgz";
+        sha1 = "be7a343e6dfbccbd64a77c5fbe29627d140fc321";
+      };
+    }
+    {
+      name = "compression___compression_1.7.4.tgz";
+      path = fetchurl {
+        name = "compression___compression_1.7.4.tgz";
+        url  = "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz";
+        sha1 = "95523eff170ca57c29a0ca41e6fe131f41e5bb8f";
+      };
+    }
+    {
+      name = "concat_map___concat_map_0.0.1.tgz";
+      path = fetchurl {
+        name = "concat_map___concat_map_0.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz";
+        sha1 = "d8a96bd77fd68df7793a73036a3ba0d5405d477b";
+      };
+    }
+    {
+      name = "concat_stream___concat_stream_1.6.2.tgz";
+      path = fetchurl {
+        name = "concat_stream___concat_stream_1.6.2.tgz";
+        url  = "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz";
+        sha1 = "904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34";
+      };
+    }
+    {
+      name = "condense_newlines___condense_newlines_0.2.1.tgz";
+      path = fetchurl {
+        name = "condense_newlines___condense_newlines_0.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/condense-newlines/-/condense-newlines-0.2.1.tgz";
+        sha1 = "3de985553139475d32502c83b02f60684d24c55f";
+      };
+    }
+    {
+      name = "config_chain___config_chain_1.1.12.tgz";
+      path = fetchurl {
+        name = "config_chain___config_chain_1.1.12.tgz";
+        url  = "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.12.tgz";
+        sha1 = "0fde8d091200eb5e808caf25fe618c02f48e4efa";
+      };
+    }
+    {
+      name = "configstore___configstore_3.1.1.tgz";
+      path = fetchurl {
+        name = "configstore___configstore_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/configstore/-/configstore-3.1.1.tgz";
+        sha1 = "094ee662ab83fad9917678de114faaea8fcdca90";
+      };
+    }
+    {
+      name = "confusing_browser_globals___confusing_browser_globals_1.0.9.tgz";
+      path = fetchurl {
+        name = "confusing_browser_globals___confusing_browser_globals_1.0.9.tgz";
+        url  = "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.9.tgz";
+        sha1 = "72bc13b483c0276801681871d4898516f8f54fdd";
+      };
+    }
+    {
+      name = "connect_history_api_fallback___connect_history_api_fallback_1.6.0.tgz";
+      path = fetchurl {
+        name = "connect_history_api_fallback___connect_history_api_fallback_1.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz";
+        sha1 = "8b32089359308d111115d81cad3fceab888f97bc";
+      };
+    }
+    {
+      name = "connect___connect_3.6.6.tgz";
+      path = fetchurl {
+        name = "connect___connect_3.6.6.tgz";
+        url  = "https://registry.yarnpkg.com/connect/-/connect-3.6.6.tgz";
+        sha1 = "09eff6c55af7236e137135a72574858b6786f524";
+      };
+    }
+    {
+      name = "consola___consola_2.10.1.tgz";
+      path = fetchurl {
+        name = "consola___consola_2.10.1.tgz";
+        url  = "https://registry.yarnpkg.com/consola/-/consola-2.10.1.tgz";
+        sha1 = "4693edba714677c878d520e4c7e4f69306b4b927";
+      };
+    }
+    {
+      name = "console_browserify___console_browserify_1.1.0.tgz";
+      path = fetchurl {
+        name = "console_browserify___console_browserify_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz";
+        sha1 = "f0241c45730a9fc6323b206dbf38edc741d0bb10";
+      };
+    }
+    {
+      name = "console_control_strings___console_control_strings_1.1.0.tgz";
+      path = fetchurl {
+        name = "console_control_strings___console_control_strings_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz";
+        sha1 = "3d7cf4464db6446ea644bf4b39507f9851008e8e";
+      };
+    }
+    {
+      name = "consolidate___consolidate_0.15.1.tgz";
+      path = fetchurl {
+        name = "consolidate___consolidate_0.15.1.tgz";
+        url  = "https://registry.yarnpkg.com/consolidate/-/consolidate-0.15.1.tgz";
+        sha1 = "21ab043235c71a07d45d9aad98593b0dba56bab7";
+      };
+    }
+    {
+      name = "constants_browserify___constants_browserify_1.0.0.tgz";
+      path = fetchurl {
+        name = "constants_browserify___constants_browserify_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz";
+        sha1 = "c20b96d8c617748aaf1c16021760cd27fcb8cb75";
+      };
+    }
+    {
+      name = "contains_path___contains_path_0.1.0.tgz";
+      path = fetchurl {
+        name = "contains_path___contains_path_0.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz";
+        sha1 = "fe8cf184ff6670b6baef01a9d4861a5cbec4120a";
+      };
+    }
+    {
+      name = "content_disposition___content_disposition_0.5.3.tgz";
+      path = fetchurl {
+        name = "content_disposition___content_disposition_0.5.3.tgz";
+        url  = "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.3.tgz";
+        sha1 = "e130caf7e7279087c5616c2007d0485698984fbd";
+      };
+    }
+    {
+      name = "content_type___content_type_1.0.4.tgz";
+      path = fetchurl {
+        name = "content_type___content_type_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz";
+        sha1 = "e138cc75e040c727b1966fe5e5f8c9aee256fe3b";
+      };
+    }
+    {
+      name = "convert_source_map___convert_source_map_1.7.0.tgz";
+      path = fetchurl {
+        name = "convert_source_map___convert_source_map_1.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz";
+        sha1 = "17a2cb882d7f77d3490585e2ce6c524424a3a442";
+      };
+    }
+    {
+      name = "cookie_signature___cookie_signature_1.0.6.tgz";
+      path = fetchurl {
+        name = "cookie_signature___cookie_signature_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz";
+        sha1 = "e303a882b342cc3ee8ca513a79999734dab3ae2c";
+      };
+    }
+    {
+      name = "cookie___cookie_0.3.1.tgz";
+      path = fetchurl {
+        name = "cookie___cookie_0.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz";
+        sha1 = "e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb";
+      };
+    }
+    {
+      name = "cookie___cookie_0.4.0.tgz";
+      path = fetchurl {
+        name = "cookie___cookie_0.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/cookie/-/cookie-0.4.0.tgz";
+        sha1 = "beb437e7022b3b6d49019d088665303ebe9c14ba";
+      };
+    }
+    {
+      name = "copy_concurrently___copy_concurrently_1.0.5.tgz";
+      path = fetchurl {
+        name = "copy_concurrently___copy_concurrently_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz";
+        sha1 = "92297398cae34937fcafd6ec8139c18051f0b5e0";
+      };
+    }
+    {
+      name = "copy_descriptor___copy_descriptor_0.1.1.tgz";
+      path = fetchurl {
+        name = "copy_descriptor___copy_descriptor_0.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz";
+        sha1 = "676f6eb3c39997c2ee1ac3a924fd6124748f578d";
+      };
+    }
+    {
+      name = "copy_to_clipboard___copy_to_clipboard_3.2.0.tgz";
+      path = fetchurl {
+        name = "copy_to_clipboard___copy_to_clipboard_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/copy-to-clipboard/-/copy-to-clipboard-3.2.0.tgz";
+        sha1 = "d2724a3ccbfed89706fac8a894872c979ac74467";
+      };
+    }
+    {
+      name = "copy_webpack_plugin___copy_webpack_plugin_5.1.1.tgz";
+      path = fetchurl {
+        name = "copy_webpack_plugin___copy_webpack_plugin_5.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-5.1.1.tgz";
+        sha1 = "5481a03dea1123d88a988c6ff8b78247214f0b88";
+      };
+    }
+    {
+      name = "core_js_compat___core_js_compat_3.6.4.tgz";
+      path = fetchurl {
+        name = "core_js_compat___core_js_compat_3.6.4.tgz";
+        url  = "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.6.4.tgz";
+        sha1 = "938476569ebb6cda80d339bcf199fae4f16fff17";
+      };
+    }
+    {
+      name = "core_js___core_js_3.6.4.tgz";
+      path = fetchurl {
+        name = "core_js___core_js_3.6.4.tgz";
+        url  = "https://registry.yarnpkg.com/core-js/-/core-js-3.6.4.tgz";
+        sha1 = "440a83536b458114b9cb2ac1580ba377dc470647";
+      };
+    }
+    {
+      name = "core_js___core_js_2.3.0.tgz";
+      path = fetchurl {
+        name = "core_js___core_js_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/core-js/-/core-js-2.3.0.tgz";
+        sha1 = "fab83fbb0b2d8dc85fa636c4b9d34c75420c6d65";
+      };
+    }
+    {
+      name = "core_util_is___core_util_is_1.0.2.tgz";
+      path = fetchurl {
+        name = "core_util_is___core_util_is_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz";
+        sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7";
+      };
+    }
+    {
+      name = "cosmiconfig___cosmiconfig_5.2.1.tgz";
+      path = fetchurl {
+        name = "cosmiconfig___cosmiconfig_5.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz";
+        sha1 = "040f726809c591e77a17c0a3626ca45b4f168b1a";
+      };
+    }
+    {
+      name = "create_ecdh___create_ecdh_4.0.0.tgz";
+      path = fetchurl {
+        name = "create_ecdh___create_ecdh_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.0.tgz";
+        sha1 = "888c723596cdf7612f6498233eebd7a35301737d";
+      };
+    }
+    {
+      name = "create_error_class___create_error_class_3.0.2.tgz";
+      path = fetchurl {
+        name = "create_error_class___create_error_class_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/create-error-class/-/create-error-class-3.0.2.tgz";
+        sha1 = "06be7abef947a3f14a30fd610671d401bca8b7b6";
+      };
+    }
+    {
+      name = "create_hash___create_hash_1.1.3.tgz";
+      path = fetchurl {
+        name = "create_hash___create_hash_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.3.tgz";
+        sha1 = "606042ac8b9262750f483caddab0f5819172d8fd";
+      };
+    }
+    {
+      name = "create_hmac___create_hmac_1.1.6.tgz";
+      path = fetchurl {
+        name = "create_hmac___create_hmac_1.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.6.tgz";
+        sha1 = "acb9e221a4e17bdb076e90657c42b93e3726cf06";
+      };
+    }
+    {
+      name = "cropper___cropper_2.3.0.tgz";
+      path = fetchurl {
+        name = "cropper___cropper_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/cropper/-/cropper-2.3.0.tgz";
+        sha1 = "607461d4e7aa7a7fe15a26834b14b7f0c2801562";
+      };
+    }
+    {
+      name = "cross_spawn___cross_spawn_6.0.5.tgz";
+      path = fetchurl {
+        name = "cross_spawn___cross_spawn_6.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz";
+        sha1 = "4a5ec7c64dfae22c3a14124dbacdee846d80cbc4";
+      };
+    }
+    {
+      name = "cross_spawn___cross_spawn_3.0.1.tgz";
+      path = fetchurl {
+        name = "cross_spawn___cross_spawn_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz";
+        sha1 = "1256037ecb9f0c5f79e3d6ef135e30770184b982";
+      };
+    }
+    {
+      name = "cross_spawn___cross_spawn_5.1.0.tgz";
+      path = fetchurl {
+        name = "cross_spawn___cross_spawn_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz";
+        sha1 = "e8bd0efee58fcff6f8f94510a0a554bbfa235449";
+      };
+    }
+    {
+      name = "crypt___crypt_0.0.2.tgz";
+      path = fetchurl {
+        name = "crypt___crypt_0.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/crypt/-/crypt-0.0.2.tgz";
+        sha1 = "88d7ff7ec0dfb86f713dc87bbb42d044d3e6c41b";
+      };
+    }
+    {
+      name = "crypto_browserify___crypto_browserify_3.12.0.tgz";
+      path = fetchurl {
+        name = "crypto_browserify___crypto_browserify_3.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz";
+        sha1 = "396cf9f3137f03e4b8e532c58f698254e00f80ec";
+      };
+    }
+    {
+      name = "crypto_random_string___crypto_random_string_1.0.0.tgz";
+      path = fetchurl {
+        name = "crypto_random_string___crypto_random_string_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-1.0.0.tgz";
+        sha1 = "a230f64f568310e1498009940790ec99545bca7e";
+      };
+    }
+    {
+      name = "crypto_random_string___crypto_random_string_3.0.1.tgz";
+      path = fetchurl {
+        name = "crypto_random_string___crypto_random_string_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-3.0.1.tgz";
+        sha1 = "29d7dc759d577a768afb3b7b2765dd9bd7ffe36a";
+      };
+    }
+    {
+      name = "css_b64_images___css_b64_images_0.2.5.tgz";
+      path = fetchurl {
+        name = "css_b64_images___css_b64_images_0.2.5.tgz";
+        url  = "https://registry.yarnpkg.com/css-b64-images/-/css-b64-images-0.2.5.tgz";
+        sha1 = "42005d83204b2b4a5d93b6b1a5644133b5927a02";
+      };
+    }
+    {
+      name = "css_loader___css_loader_2.1.1.tgz";
+      path = fetchurl {
+        name = "css_loader___css_loader_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/css-loader/-/css-loader-2.1.1.tgz";
+        sha1 = "d8254f72e412bb2238bb44dd674ffbef497333ea";
+      };
+    }
+    {
+      name = "css_selector_parser___css_selector_parser_1.3.0.tgz";
+      path = fetchurl {
+        name = "css_selector_parser___css_selector_parser_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/css-selector-parser/-/css-selector-parser-1.3.0.tgz";
+        sha1 = "5f1ad43e2d8eefbfdc304fcd39a521664943e3eb";
+      };
+    }
+    {
+      name = "css___css_2.2.4.tgz";
+      path = fetchurl {
+        name = "css___css_2.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/css/-/css-2.2.4.tgz";
+        sha1 = "c646755c73971f2bba6a601e2cf2fd71b1298929";
+      };
+    }
+    {
+      name = "cssesc___cssesc_2.0.0.tgz";
+      path = fetchurl {
+        name = "cssesc___cssesc_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/cssesc/-/cssesc-2.0.0.tgz";
+        sha1 = "3b13bd1bb1cb36e1bcb5a4dcd27f54c5dcb35703";
+      };
+    }
+    {
+      name = "cssesc___cssesc_3.0.0.tgz";
+      path = fetchurl {
+        name = "cssesc___cssesc_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz";
+        sha1 = "37741919903b868565e1c09ea747445cd18983ee";
+      };
+    }
+    {
+      name = "cssfontparser___cssfontparser_1.2.1.tgz";
+      path = fetchurl {
+        name = "cssfontparser___cssfontparser_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/cssfontparser/-/cssfontparser-1.2.1.tgz";
+        sha1 = "f4022fc8f9700c68029d542084afbaf425a3f3e3";
+      };
+    }
+    {
+      name = "cssom___cssom_0.3.4.tgz";
+      path = fetchurl {
+        name = "cssom___cssom_0.3.4.tgz";
+        url  = "https://registry.yarnpkg.com/cssom/-/cssom-0.3.4.tgz";
+        sha1 = "8cd52e8a3acfd68d3aed38ee0a640177d2f9d797";
+      };
+    }
+    {
+      name = "cssstyle___cssstyle_1.1.1.tgz";
+      path = fetchurl {
+        name = "cssstyle___cssstyle_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/cssstyle/-/cssstyle-1.1.1.tgz";
+        sha1 = "18b038a9c44d65f7a8e428a653b9f6fe42faf5fb";
+      };
+    }
+    {
+      name = "currently_unhandled___currently_unhandled_0.4.1.tgz";
+      path = fetchurl {
+        name = "currently_unhandled___currently_unhandled_0.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz";
+        sha1 = "988df33feab191ef799a61369dd76c17adf957ea";
+      };
+    }
+    {
+      name = "custom_event___custom_event_1.0.1.tgz";
+      path = fetchurl {
+        name = "custom_event___custom_event_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/custom-event/-/custom-event-1.0.1.tgz";
+        sha1 = "5d02a46850adf1b4a317946a3928fccb5bfd0425";
+      };
+    }
+    {
+      name = "custom_jquery_matchers___custom_jquery_matchers_2.1.0.tgz";
+      path = fetchurl {
+        name = "custom_jquery_matchers___custom_jquery_matchers_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/custom-jquery-matchers/-/custom-jquery-matchers-2.1.0.tgz";
+        sha1 = "e5988fa9715c416b0986b372563f872d9e91e024";
+      };
+    }
+    {
+      name = "cyclist___cyclist_0.2.2.tgz";
+      path = fetchurl {
+        name = "cyclist___cyclist_0.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/cyclist/-/cyclist-0.2.2.tgz";
+        sha1 = "1b33792e11e914a2fd6d6ed6447464444e5fa640";
+      };
+    }
+    {
+      name = "d3_array___d3_array_1.2.1.tgz";
+      path = fetchurl {
+        name = "d3_array___d3_array_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/d3-array/-/d3-array-1.2.1.tgz";
+        sha1 = "d1ca33de2f6ac31efadb8e050a021d7e2396d5dc";
+      };
+    }
+    {
+      name = "d3_axis___d3_axis_1.0.8.tgz";
+      path = fetchurl {
+        name = "d3_axis___d3_axis_1.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/d3-axis/-/d3-axis-1.0.8.tgz";
+        sha1 = "31a705a0b535e65759de14173a31933137f18efa";
+      };
+    }
+    {
+      name = "d3_brush___d3_brush_1.0.4.tgz";
+      path = fetchurl {
+        name = "d3_brush___d3_brush_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/d3-brush/-/d3-brush-1.0.4.tgz";
+        sha1 = "00c2f238019f24f6c0a194a26d41a1530ffe7bc4";
+      };
+    }
+    {
+      name = "d3_chord___d3_chord_1.0.4.tgz";
+      path = fetchurl {
+        name = "d3_chord___d3_chord_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/d3-chord/-/d3-chord-1.0.4.tgz";
+        sha1 = "7dec4f0ba886f713fe111c45f763414f6f74ca2c";
+      };
+    }
+    {
+      name = "d3_collection___d3_collection_1.0.4.tgz";
+      path = fetchurl {
+        name = "d3_collection___d3_collection_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/d3-collection/-/d3-collection-1.0.4.tgz";
+        sha1 = "342dfd12837c90974f33f1cc0a785aea570dcdc2";
+      };
+    }
+    {
+      name = "d3_color___d3_color_1.0.3.tgz";
+      path = fetchurl {
+        name = "d3_color___d3_color_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/d3-color/-/d3-color-1.0.3.tgz";
+        sha1 = "bc7643fca8e53a8347e2fbdaffa236796b58509b";
+      };
+    }
+    {
+      name = "d3_contour___d3_contour_1.3.2.tgz";
+      path = fetchurl {
+        name = "d3_contour___d3_contour_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/d3-contour/-/d3-contour-1.3.2.tgz";
+        sha1 = "652aacd500d2264cb3423cee10db69f6f59bead3";
+      };
+    }
+    {
+      name = "d3_dispatch___d3_dispatch_1.0.3.tgz";
+      path = fetchurl {
+        name = "d3_dispatch___d3_dispatch_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/d3-dispatch/-/d3-dispatch-1.0.3.tgz";
+        sha1 = "46e1491eaa9b58c358fce5be4e8bed626e7871f8";
+      };
+    }
+    {
+      name = "d3_drag___d3_drag_1.2.1.tgz";
+      path = fetchurl {
+        name = "d3_drag___d3_drag_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/d3-drag/-/d3-drag-1.2.1.tgz";
+        sha1 = "df8dd4c502fb490fc7462046a8ad98a5c479282d";
+      };
+    }
+    {
+      name = "d3_dsv___d3_dsv_1.0.8.tgz";
+      path = fetchurl {
+        name = "d3_dsv___d3_dsv_1.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/d3-dsv/-/d3-dsv-1.0.8.tgz";
+        sha1 = "907e240d57b386618dc56468bacfe76bf19764ae";
+      };
+    }
+    {
+      name = "d3_ease___d3_ease_1.0.3.tgz";
+      path = fetchurl {
+        name = "d3_ease___d3_ease_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/d3-ease/-/d3-ease-1.0.3.tgz";
+        sha1 = "68bfbc349338a380c44d8acc4fbc3304aa2d8c0e";
+      };
+    }
+    {
+      name = "d3_fetch___d3_fetch_1.1.2.tgz";
+      path = fetchurl {
+        name = "d3_fetch___d3_fetch_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/d3-fetch/-/d3-fetch-1.1.2.tgz";
+        sha1 = "957c8fbc6d4480599ba191b1b2518bf86b3e1be2";
+      };
+    }
+    {
+      name = "d3_force___d3_force_1.1.0.tgz";
+      path = fetchurl {
+        name = "d3_force___d3_force_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3-force/-/d3-force-1.1.0.tgz";
+        sha1 = "cebf3c694f1078fcc3d4daf8e567b2fbd70d4ea3";
+      };
+    }
+    {
+      name = "d3_format___d3_format_1.2.2.tgz";
+      path = fetchurl {
+        name = "d3_format___d3_format_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/d3-format/-/d3-format-1.2.2.tgz";
+        sha1 = "1a39c479c8a57fe5051b2e67a3bee27061a74e7a";
+      };
+    }
+    {
+      name = "d3_geo___d3_geo_1.9.1.tgz";
+      path = fetchurl {
+        name = "d3_geo___d3_geo_1.9.1.tgz";
+        url  = "https://registry.yarnpkg.com/d3-geo/-/d3-geo-1.9.1.tgz";
+        sha1 = "157e3b0f917379d0f73bebfff3be537f49fa7356";
+      };
+    }
+    {
+      name = "d3_hierarchy___d3_hierarchy_1.1.5.tgz";
+      path = fetchurl {
+        name = "d3_hierarchy___d3_hierarchy_1.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/d3-hierarchy/-/d3-hierarchy-1.1.5.tgz";
+        sha1 = "a1c845c42f84a206bcf1c01c01098ea4ddaa7a26";
+      };
+    }
+    {
+      name = "d3_interpolate___d3_interpolate_1.1.6.tgz";
+      path = fetchurl {
+        name = "d3_interpolate___d3_interpolate_1.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-1.1.6.tgz";
+        sha1 = "2cf395ae2381804df08aa1bf766b7f97b5f68fb6";
+      };
+    }
+    {
+      name = "d3_path___d3_path_1.0.5.tgz";
+      path = fetchurl {
+        name = "d3_path___d3_path_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/d3-path/-/d3-path-1.0.5.tgz";
+        sha1 = "241eb1849bd9e9e8021c0d0a799f8a0e8e441764";
+      };
+    }
+    {
+      name = "d3_polygon___d3_polygon_1.0.3.tgz";
+      path = fetchurl {
+        name = "d3_polygon___d3_polygon_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/d3-polygon/-/d3-polygon-1.0.3.tgz";
+        sha1 = "16888e9026460933f2b179652ad378224d382c62";
+      };
+    }
+    {
+      name = "d3_quadtree___d3_quadtree_1.0.3.tgz";
+      path = fetchurl {
+        name = "d3_quadtree___d3_quadtree_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/d3-quadtree/-/d3-quadtree-1.0.3.tgz";
+        sha1 = "ac7987e3e23fe805a990f28e1b50d38fcb822438";
+      };
+    }
+    {
+      name = "d3_random___d3_random_1.1.0.tgz";
+      path = fetchurl {
+        name = "d3_random___d3_random_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3-random/-/d3-random-1.1.0.tgz";
+        sha1 = "6642e506c6fa3a648595d2b2469788a8d12529d3";
+      };
+    }
+    {
+      name = "d3_scale_chromatic___d3_scale_chromatic_1.3.3.tgz";
+      path = fetchurl {
+        name = "d3_scale_chromatic___d3_scale_chromatic_1.3.3.tgz";
+        url  = "https://registry.yarnpkg.com/d3-scale-chromatic/-/d3-scale-chromatic-1.3.3.tgz";
+        sha1 = "dad4366f0edcb288f490128979c3c793583ed3c0";
+      };
+    }
+    {
+      name = "d3_scale___d3_scale_2.2.2.tgz";
+      path = fetchurl {
+        name = "d3_scale___d3_scale_2.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/d3-scale/-/d3-scale-2.2.2.tgz";
+        sha1 = "4e880e0b2745acaaddd3ede26a9e908a9e17b81f";
+      };
+    }
+    {
+      name = "d3_selection___d3_selection_1.3.0.tgz";
+      path = fetchurl {
+        name = "d3_selection___d3_selection_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3-selection/-/d3-selection-1.3.0.tgz";
+        sha1 = "d53772382d3dc4f7507bfb28bcd2d6aed2a0ad6d";
+      };
+    }
+    {
+      name = "d3_shape___d3_shape_1.2.0.tgz";
+      path = fetchurl {
+        name = "d3_shape___d3_shape_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3-shape/-/d3-shape-1.2.0.tgz";
+        sha1 = "45d01538f064bafd05ea3d6d2cb748fd8c41f777";
+      };
+    }
+    {
+      name = "d3_time_format___d3_time_format_2.1.1.tgz";
+      path = fetchurl {
+        name = "d3_time_format___d3_time_format_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-2.1.1.tgz";
+        sha1 = "85b7cdfbc9ffca187f14d3c456ffda268081bb31";
+      };
+    }
+    {
+      name = "d3_time___d3_time_1.0.8.tgz";
+      path = fetchurl {
+        name = "d3_time___d3_time_1.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/d3-time/-/d3-time-1.0.8.tgz";
+        sha1 = "dbd2d6007bf416fe67a76d17947b784bffea1e84";
+      };
+    }
+    {
+      name = "d3_timer___d3_timer_1.0.7.tgz";
+      path = fetchurl {
+        name = "d3_timer___d3_timer_1.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/d3-timer/-/d3-timer-1.0.7.tgz";
+        sha1 = "df9650ca587f6c96607ff4e60cc38229e8dd8531";
+      };
+    }
+    {
+      name = "d3_transition___d3_transition_1.1.1.tgz";
+      path = fetchurl {
+        name = "d3_transition___d3_transition_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/d3-transition/-/d3-transition-1.1.1.tgz";
+        sha1 = "d8ef89c3b848735b060e54a39b32aaebaa421039";
+      };
+    }
+    {
+      name = "d3_voronoi___d3_voronoi_1.1.2.tgz";
+      path = fetchurl {
+        name = "d3_voronoi___d3_voronoi_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/d3-voronoi/-/d3-voronoi-1.1.2.tgz";
+        sha1 = "1687667e8f13a2d158c80c1480c5a29cb0d8973c";
+      };
+    }
+    {
+      name = "d3_zoom___d3_zoom_1.7.1.tgz";
+      path = fetchurl {
+        name = "d3_zoom___d3_zoom_1.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/d3-zoom/-/d3-zoom-1.7.1.tgz";
+        sha1 = "02f43b3c3e2db54f364582d7e4a236ccc5506b63";
+      };
+    }
+    {
+      name = "d3___d3_5.15.0.tgz";
+      path = fetchurl {
+        name = "d3___d3_5.15.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3/-/d3-5.15.0.tgz";
+        sha1 = "ffd44958e6a3cb8a59a84429c45429b8bca5677a";
+      };
+    }
+    {
+      name = "dagre_d3___dagre_d3_0.6.4.tgz";
+      path = fetchurl {
+        name = "dagre_d3___dagre_d3_0.6.4.tgz";
+        url  = "https://registry.yarnpkg.com/dagre-d3/-/dagre-d3-0.6.4.tgz";
+        sha1 = "0728d5ce7f177ca2337df141ceb60fbe6eeb7b29";
+      };
+    }
+    {
+      name = "dagre___dagre_0.8.5.tgz";
+      path = fetchurl {
+        name = "dagre___dagre_0.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/dagre/-/dagre-0.8.5.tgz";
+        sha1 = "ba30b0055dac12b6c1fcc247817442777d06afee";
+      };
+    }
+    {
+      name = "dashdash___dashdash_1.14.1.tgz";
+      path = fetchurl {
+        name = "dashdash___dashdash_1.14.1.tgz";
+        url  = "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz";
+        sha1 = "853cfa0f7cbe2fed5de20326b8dd581035f6e2f0";
+      };
+    }
+    {
+      name = "data_urls___data_urls_1.1.0.tgz";
+      path = fetchurl {
+        name = "data_urls___data_urls_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/data-urls/-/data-urls-1.1.0.tgz";
+        sha1 = "15ee0582baa5e22bb59c77140da8f9c76963bbfe";
+      };
+    }
+    {
+      name = "date_format___date_format_2.1.0.tgz";
+      path = fetchurl {
+        name = "date_format___date_format_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/date-format/-/date-format-2.1.0.tgz";
+        sha1 = "31d5b5ea211cf5fd764cd38baf9d033df7e125cf";
+      };
+    }
+    {
+      name = "date_now___date_now_0.1.4.tgz";
+      path = fetchurl {
+        name = "date_now___date_now_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz";
+        sha1 = "eaf439fd4d4848ad74e5cc7dbef200672b9e345b";
+      };
+    }
+    {
+      name = "dateformat___dateformat_3.0.3.tgz";
+      path = fetchurl {
+        name = "dateformat___dateformat_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz";
+        sha1 = "a6e37499a4d9a9cf85ef5872044d62901c9889ae";
+      };
+    }
+    {
+      name = "de_indent___de_indent_1.0.2.tgz";
+      path = fetchurl {
+        name = "de_indent___de_indent_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz";
+        sha1 = "b2038e846dc33baa5796128d0804b455b8c1e21d";
+      };
+    }
+    {
+      name = "debug___debug_2.6.9.tgz";
+      path = fetchurl {
+        name = "debug___debug_2.6.9.tgz";
+        url  = "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz";
+        sha1 = "5d128515df134ff327e90a4c93f4e077a536341f";
+      };
+    }
+    {
+      name = "debug___debug_3.1.0.tgz";
+      path = fetchurl {
+        name = "debug___debug_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz";
+        sha1 = "5bb5a0672628b64149566ba16819e61518c67261";
+      };
+    }
+    {
+      name = "debug___debug_3.2.6.tgz";
+      path = fetchurl {
+        name = "debug___debug_3.2.6.tgz";
+        url  = "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz";
+        sha1 = "e83d17de16d8a7efb7717edbe5fb10135eee629b";
+      };
+    }
+    {
+      name = "debug___debug_4.1.1.tgz";
+      path = fetchurl {
+        name = "debug___debug_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz";
+        sha1 = "3b72260255109c6b589cee050f1d516139664791";
+      };
+    }
+    {
+      name = "decamelize_keys___decamelize_keys_1.1.0.tgz";
+      path = fetchurl {
+        name = "decamelize_keys___decamelize_keys_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz";
+        sha1 = "d171a87933252807eb3cb61dc1c1445d078df2d9";
+      };
+    }
+    {
+      name = "decamelize___decamelize_1.2.0.tgz";
+      path = fetchurl {
+        name = "decamelize___decamelize_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz";
+        sha1 = "f6534d15148269b20352e7bee26f501f9a191290";
+      };
+    }
+    {
+      name = "deckar01_task_list___deckar01_task_list_2.3.1.tgz";
+      path = fetchurl {
+        name = "deckar01_task_list___deckar01_task_list_2.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/deckar01-task_list/-/deckar01-task_list-2.3.1.tgz";
+        sha1 = "f3ffd5319d7b9e27c596dc8d823b13f617ed7db7";
+      };
+    }
+    {
+      name = "decode_uri_component___decode_uri_component_0.2.0.tgz";
+      path = fetchurl {
+        name = "decode_uri_component___decode_uri_component_0.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz";
+        sha1 = "eb3913333458775cb84cd1a1fae062106bb87545";
+      };
+    }
+    {
+      name = "deep_equal___deep_equal_1.0.1.tgz";
+      path = fetchurl {
+        name = "deep_equal___deep_equal_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz";
+        sha1 = "f5d260292b660e084eff4cdbc9f08ad3247448b5";
+      };
+    }
+    {
+      name = "deep_extend___deep_extend_0.6.0.tgz";
+      path = fetchurl {
+        name = "deep_extend___deep_extend_0.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz";
+        sha1 = "c4fa7c95404a17a9c3e8ca7e1537312b736330ac";
+      };
+    }
+    {
+      name = "deep_extend___deep_extend_0.5.1.tgz";
+      path = fetchurl {
+        name = "deep_extend___deep_extend_0.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.5.1.tgz";
+        sha1 = "b894a9dd90d3023fbf1c55a394fb858eb2066f1f";
+      };
+    }
+    {
+      name = "deep_is___deep_is_0.1.3.tgz";
+      path = fetchurl {
+        name = "deep_is___deep_is_0.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz";
+        sha1 = "b369d6fb5dbc13eecf524f91b070feedc357cf34";
+      };
+    }
+    {
+      name = "default_gateway___default_gateway_4.2.0.tgz";
+      path = fetchurl {
+        name = "default_gateway___default_gateway_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/default-gateway/-/default-gateway-4.2.0.tgz";
+        sha1 = "167104c7500c2115f6dd69b0a536bb8ed720552b";
+      };
+    }
+    {
+      name = "default_require_extensions___default_require_extensions_2.0.0.tgz";
+      path = fetchurl {
+        name = "default_require_extensions___default_require_extensions_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-2.0.0.tgz";
+        sha1 = "f5f8fbb18a7d6d50b21f641f649ebb522cfe24f7";
+      };
+    }
+    {
+      name = "define_properties___define_properties_1.1.3.tgz";
+      path = fetchurl {
+        name = "define_properties___define_properties_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz";
+        sha1 = "cf88da6cbee26fe6db7094f61d870cbd84cee9f1";
+      };
+    }
+    {
+      name = "define_property___define_property_0.2.5.tgz";
+      path = fetchurl {
+        name = "define_property___define_property_0.2.5.tgz";
+        url  = "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz";
+        sha1 = "c35b1ef918ec3c990f9a5bc57be04aacec5c8116";
+      };
+    }
+    {
+      name = "define_property___define_property_1.0.0.tgz";
+      path = fetchurl {
+        name = "define_property___define_property_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz";
+        sha1 = "769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6";
+      };
+    }
+    {
+      name = "define_property___define_property_2.0.2.tgz";
+      path = fetchurl {
+        name = "define_property___define_property_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz";
+        sha1 = "d459689e8d654ba77e02a817f8710d702cb16e9d";
+      };
+    }
+    {
+      name = "del___del_4.1.1.tgz";
+      path = fetchurl {
+        name = "del___del_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/del/-/del-4.1.1.tgz";
+        sha1 = "9e8f117222ea44a31ff3a156c049b99052a9f0b4";
+      };
+    }
+    {
+      name = "delayed_stream___delayed_stream_1.0.0.tgz";
+      path = fetchurl {
+        name = "delayed_stream___delayed_stream_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz";
+        sha1 = "df3ae199acadfb7d440aaae0b29e2272b24ec619";
+      };
+    }
+    {
+      name = "delegate___delegate_3.1.2.tgz";
+      path = fetchurl {
+        name = "delegate___delegate_3.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/delegate/-/delegate-3.1.2.tgz";
+        sha1 = "1e1bc6f5cadda6cb6cbf7e6d05d0bcdd5712aebe";
+      };
+    }
+    {
+      name = "delegates___delegates_1.0.0.tgz";
+      path = fetchurl {
+        name = "delegates___delegates_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz";
+        sha1 = "84c6e159b81904fdca59a0ef44cd870d31250f9a";
+      };
+    }
+    {
+      name = "depd___depd_1.1.1.tgz";
+      path = fetchurl {
+        name = "depd___depd_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz";
+        sha1 = "5783b4e1c459f06fa5ca27f991f3d06e7a310359";
+      };
+    }
+    {
+      name = "depd___depd_1.1.2.tgz";
+      path = fetchurl {
+        name = "depd___depd_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz";
+        sha1 = "9bcd52e14c097763e749b274c4346ed2e560b5a9";
+      };
+    }
+    {
+      name = "des.js___des.js_1.0.0.tgz";
+      path = fetchurl {
+        name = "des.js___des.js_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz";
+        sha1 = "c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc";
+      };
+    }
+    {
+      name = "destroy___destroy_1.0.4.tgz";
+      path = fetchurl {
+        name = "destroy___destroy_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz";
+        sha1 = "978857442c44749e4206613e37946205826abd80";
+      };
+    }
+    {
+      name = "detect_file___detect_file_1.0.0.tgz";
+      path = fetchurl {
+        name = "detect_file___detect_file_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz";
+        sha1 = "f0d66d03672a825cb1b73bdb3fe62310c8e552b7";
+      };
+    }
+    {
+      name = "detect_libc___detect_libc_1.0.3.tgz";
+      path = fetchurl {
+        name = "detect_libc___detect_libc_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz";
+        sha1 = "fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b";
+      };
+    }
+    {
+      name = "detect_newline___detect_newline_2.1.0.tgz";
+      path = fetchurl {
+        name = "detect_newline___detect_newline_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz";
+        sha1 = "f41f1c10be4b00e87b5f13da680759f2c5bfd3e2";
+      };
+    }
+    {
+      name = "detect_node___detect_node_2.0.4.tgz";
+      path = fetchurl {
+        name = "detect_node___detect_node_2.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz";
+        sha1 = "014ee8f8f669c5c58023da64b8179c083a28c46c";
+      };
+    }
+    {
+      name = "di___di_0.0.1.tgz";
+      path = fetchurl {
+        name = "di___di_0.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/di/-/di-0.0.1.tgz";
+        sha1 = "806649326ceaa7caa3306d75d985ea2748ba913c";
+      };
+    }
+    {
+      name = "diff_sequences___diff_sequences_24.3.0.tgz";
+      path = fetchurl {
+        name = "diff_sequences___diff_sequences_24.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.3.0.tgz";
+        sha1 = "0f20e8a1df1abddaf4d9c226680952e64118b975";
+      };
+    }
+    {
+      name = "diff___diff_3.5.0.tgz";
+      path = fetchurl {
+        name = "diff___diff_3.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz";
+        sha1 = "800c0dd1e0a8bfbc95835c202ad220fe317e5a12";
+      };
+    }
+    {
+      name = "diffie_hellman___diffie_hellman_5.0.2.tgz";
+      path = fetchurl {
+        name = "diffie_hellman___diffie_hellman_5.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.2.tgz";
+        sha1 = "b5835739270cfe26acf632099fded2a07f209e5e";
+      };
+    }
+    {
+      name = "dir_glob___dir_glob_2.2.2.tgz";
+      path = fetchurl {
+        name = "dir_glob___dir_glob_2.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.2.2.tgz";
+        sha1 = "fa09f0694153c8918b18ba0deafae94769fc50c4";
+      };
+    }
+    {
+      name = "dns_equal___dns_equal_1.0.0.tgz";
+      path = fetchurl {
+        name = "dns_equal___dns_equal_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz";
+        sha1 = "b39e7f1da6eb0a75ba9c17324b34753c47e0654d";
+      };
+    }
+    {
+      name = "dns_packet___dns_packet_1.2.2.tgz";
+      path = fetchurl {
+        name = "dns_packet___dns_packet_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.2.2.tgz";
+        sha1 = "a8a26bec7646438963fc86e06f8f8b16d6c8bf7a";
+      };
+    }
+    {
+      name = "dns_txt___dns_txt_2.0.2.tgz";
+      path = fetchurl {
+        name = "dns_txt___dns_txt_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz";
+        sha1 = "b91d806f5d27188e4ab3e7d107d881a1cc4642b6";
+      };
+    }
+    {
+      name = "docdash___docdash_1.0.2.tgz";
+      path = fetchurl {
+        name = "docdash___docdash_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/docdash/-/docdash-1.0.2.tgz";
+        sha1 = "0449a8f6bb247f563020b78a5485dea95ae2e094";
+      };
+    }
+    {
+      name = "doctrine___doctrine_1.5.0.tgz";
+      path = fetchurl {
+        name = "doctrine___doctrine_1.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz";
+        sha1 = "379dce730f6166f76cefa4e6707a159b02c5a6fa";
+      };
+    }
+    {
+      name = "doctrine___doctrine_3.0.0.tgz";
+      path = fetchurl {
+        name = "doctrine___doctrine_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz";
+        sha1 = "addebead72a6574db783639dc87a121773973961";
+      };
+    }
+    {
+      name = "document_register_element___document_register_element_1.14.3.tgz";
+      path = fetchurl {
+        name = "document_register_element___document_register_element_1.14.3.tgz";
+        url  = "https://registry.yarnpkg.com/document-register-element/-/document-register-element-1.14.3.tgz";
+        sha1 = "3335d4578df6a1536a34595b91cca36dd5db61d7";
+      };
+    }
+    {
+      name = "dom_event_types___dom_event_types_1.0.0.tgz";
+      path = fetchurl {
+        name = "dom_event_types___dom_event_types_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/dom-event-types/-/dom-event-types-1.0.0.tgz";
+        sha1 = "5830a0a29e1bf837fe50a70cd80a597232813cae";
+      };
+    }
+    {
+      name = "dom_serialize___dom_serialize_2.2.1.tgz";
+      path = fetchurl {
+        name = "dom_serialize___dom_serialize_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/dom-serialize/-/dom-serialize-2.2.1.tgz";
+        sha1 = "562ae8999f44be5ea3076f5419dcd59eb43ac95b";
+      };
+    }
+    {
+      name = "dom_serializer___dom_serializer_0.2.2.tgz";
+      path = fetchurl {
+        name = "dom_serializer___dom_serializer_0.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz";
+        sha1 = "1afb81f533717175d478655debc5e332d9f9bb51";
+      };
+    }
+    {
+      name = "domain_browser___domain_browser_1.1.7.tgz";
+      path = fetchurl {
+        name = "domain_browser___domain_browser_1.1.7.tgz";
+        url  = "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz";
+        sha1 = "867aa4b093faa05f1de08c06f4d7b21fdf8698bc";
+      };
+    }
+    {
+      name = "domelementtype___domelementtype_1.3.0.tgz";
+      path = fetchurl {
+        name = "domelementtype___domelementtype_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz";
+        sha1 = "b17aed82e8ab59e52dd9c19b1756e0fc187204c2";
+      };
+    }
+    {
+      name = "domelementtype___domelementtype_2.0.1.tgz";
+      path = fetchurl {
+        name = "domelementtype___domelementtype_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.0.1.tgz";
+        sha1 = "1f8bdfe91f5a78063274e803b4bdcedf6e94f94d";
+      };
+    }
+    {
+      name = "domexception___domexception_1.0.1.tgz";
+      path = fetchurl {
+        name = "domexception___domexception_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz";
+        sha1 = "937442644ca6a31261ef36e3ec677fe805582c90";
+      };
+    }
+    {
+      name = "domhandler___domhandler_2.4.1.tgz";
+      path = fetchurl {
+        name = "domhandler___domhandler_2.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.1.tgz";
+        sha1 = "892e47000a99be55bbf3774ffea0561d8879c259";
+      };
+    }
+    {
+      name = "domhandler___domhandler_3.0.0.tgz";
+      path = fetchurl {
+        name = "domhandler___domhandler_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/domhandler/-/domhandler-3.0.0.tgz";
+        sha1 = "51cd13efca31da95bbb0c5bee3a48300e333b3e9";
+      };
+    }
+    {
+      name = "domutils___domutils_1.6.2.tgz";
+      path = fetchurl {
+        name = "domutils___domutils_1.6.2.tgz";
+        url  = "https://registry.yarnpkg.com/domutils/-/domutils-1.6.2.tgz";
+        sha1 = "1958cc0b4c9426e9ed367fb1c8e854891b0fa3ff";
+      };
+    }
+    {
+      name = "domutils___domutils_2.0.0.tgz";
+      path = fetchurl {
+        name = "domutils___domutils_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/domutils/-/domutils-2.0.0.tgz";
+        sha1 = "15b8278e37bfa8468d157478c58c367718133c08";
+      };
+    }
+    {
+      name = "dot_prop___dot_prop_4.2.0.tgz";
+      path = fetchurl {
+        name = "dot_prop___dot_prop_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz";
+        sha1 = "1f19e0c2e1aa0e32797c49799f2837ac6af69c57";
+      };
+    }
+    {
+      name = "dropzone___dropzone_4.2.0.tgz";
+      path = fetchurl {
+        name = "dropzone___dropzone_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/dropzone/-/dropzone-4.2.0.tgz";
+        sha1 = "fbe7acbb9918e0706489072ef663effeef8a79f3";
+      };
+    }
+    {
+      name = "duplexer3___duplexer3_0.1.4.tgz";
+      path = fetchurl {
+        name = "duplexer3___duplexer3_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz";
+        sha1 = "ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2";
+      };
+    }
+    {
+      name = "duplexer___duplexer_0.1.1.tgz";
+      path = fetchurl {
+        name = "duplexer___duplexer_0.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz";
+        sha1 = "ace6ff808c1ce66b57d1ebf97977acb02334cfc1";
+      };
+    }
+    {
+      name = "duplexify___duplexify_3.7.1.tgz";
+      path = fetchurl {
+        name = "duplexify___duplexify_3.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz";
+        sha1 = "2a4df5317f6ccfd91f86d6fd25d8d8a103b88309";
+      };
+    }
+    {
+      name = "ecc_jsbn___ecc_jsbn_0.1.2.tgz";
+      path = fetchurl {
+        name = "ecc_jsbn___ecc_jsbn_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz";
+        sha1 = "3a83a904e54353287874c564b7549386849a98c9";
+      };
+    }
+    {
+      name = "echarts___echarts_4.6.0.tgz";
+      path = fetchurl {
+        name = "echarts___echarts_4.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/echarts/-/echarts-4.6.0.tgz";
+        sha1 = "b5a47a1046cec93ceeef954f9ee54751340558ec";
+      };
+    }
+    {
+      name = "editions___editions_1.3.4.tgz";
+      path = fetchurl {
+        name = "editions___editions_1.3.4.tgz";
+        url  = "https://registry.yarnpkg.com/editions/-/editions-1.3.4.tgz";
+        sha1 = "3662cb592347c3168eb8e498a0ff73271d67f50b";
+      };
+    }
+    {
+      name = "editorconfig___editorconfig_0.15.3.tgz";
+      path = fetchurl {
+        name = "editorconfig___editorconfig_0.15.3.tgz";
+        url  = "https://registry.yarnpkg.com/editorconfig/-/editorconfig-0.15.3.tgz";
+        sha1 = "bef84c4e75fb8dcb0ce5cee8efd51c15999befc5";
+      };
+    }
+    {
+      name = "ee_first___ee_first_1.1.1.tgz";
+      path = fetchurl {
+        name = "ee_first___ee_first_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz";
+        sha1 = "590c61156b0ae2f4f0255732a158b266bc56b21d";
+      };
+    }
+    {
+      name = "ejs___ejs_2.6.1.tgz";
+      path = fetchurl {
+        name = "ejs___ejs_2.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/ejs/-/ejs-2.6.1.tgz";
+        sha1 = "498ec0d495655abc6f23cd61868d926464071aa0";
+      };
+    }
+    {
+      name = "electron_to_chromium___electron_to_chromium_1.3.360.tgz";
+      path = fetchurl {
+        name = "electron_to_chromium___electron_to_chromium_1.3.360.tgz";
+        url  = "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.360.tgz";
+        sha1 = "1db9cb8d43f4c772546d94ea9be8b677a8ecb483";
+      };
+    }
+    {
+      name = "elliptic___elliptic_6.4.0.tgz";
+      path = fetchurl {
+        name = "elliptic___elliptic_6.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz";
+        sha1 = "cac9af8762c85836187003c8dfe193e5e2eae5df";
+      };
+    }
+    {
+      name = "emoji_regex___emoji_regex_7.0.3.tgz";
+      path = fetchurl {
+        name = "emoji_regex___emoji_regex_7.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz";
+        sha1 = "933a04052860c85e83c122479c4748a8e4c72156";
+      };
+    }
+    {
+      name = "emoji_regex___emoji_regex_8.0.0.tgz";
+      path = fetchurl {
+        name = "emoji_regex___emoji_regex_8.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz";
+        sha1 = "e818fd69ce5ccfcb404594f842963bf53164cc37";
+      };
+    }
+    {
+      name = "emoji_unicode_version___emoji_unicode_version_0.2.1.tgz";
+      path = fetchurl {
+        name = "emoji_unicode_version___emoji_unicode_version_0.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/emoji-unicode-version/-/emoji-unicode-version-0.2.1.tgz";
+        sha1 = "0ebf3666b5414097971d34994e299fce75cdbafc";
+      };
+    }
+    {
+      name = "emojis_list___emojis_list_2.1.0.tgz";
+      path = fetchurl {
+        name = "emojis_list___emojis_list_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz";
+        sha1 = "4daa4d9db00f9819880c79fa457ae5b09a1fd389";
+      };
+    }
+    {
+      name = "emojis_list___emojis_list_3.0.0.tgz";
+      path = fetchurl {
+        name = "emojis_list___emojis_list_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz";
+        sha1 = "5570662046ad29e2e916e71aae260abdff4f6a78";
+      };
+    }
+    {
+      name = "encodeurl___encodeurl_1.0.2.tgz";
+      path = fetchurl {
+        name = "encodeurl___encodeurl_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz";
+        sha1 = "ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59";
+      };
+    }
+    {
+      name = "end_of_stream___end_of_stream_1.4.1.tgz";
+      path = fetchurl {
+        name = "end_of_stream___end_of_stream_1.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz";
+        sha1 = "ed29634d19baba463b6ce6b80a37213eab71ec43";
+      };
+    }
+    {
+      name = "engine.io_client___engine.io_client_3.2.1.tgz";
+      path = fetchurl {
+        name = "engine.io_client___engine.io_client_3.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-3.2.1.tgz";
+        sha1 = "6f54c0475de487158a1a7c77d10178708b6add36";
+      };
+    }
+    {
+      name = "engine.io_parser___engine.io_parser_2.1.2.tgz";
+      path = fetchurl {
+        name = "engine.io_parser___engine.io_parser_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-2.1.2.tgz";
+        sha1 = "4c0f4cff79aaeecbbdcfdea66a823c6085409196";
+      };
+    }
+    {
+      name = "engine.io___engine.io_3.2.0.tgz";
+      path = fetchurl {
+        name = "engine.io___engine.io_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/engine.io/-/engine.io-3.2.0.tgz";
+        sha1 = "54332506f42f2edc71690d2f2a42349359f3bf7d";
+      };
+    }
+    {
+      name = "enhanced_resolve___enhanced_resolve_4.1.0.tgz";
+      path = fetchurl {
+        name = "enhanced_resolve___enhanced_resolve_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz";
+        sha1 = "41c7e0bfdfe74ac1ffe1e57ad6a5c6c9f3742a7f";
+      };
+    }
+    {
+      name = "enhanced_resolve___enhanced_resolve_0.9.1.tgz";
+      path = fetchurl {
+        name = "enhanced_resolve___enhanced_resolve_0.9.1.tgz";
+        url  = "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-0.9.1.tgz";
+        sha1 = "4d6e689b3725f86090927ccc86cd9f1635b89e2e";
+      };
+    }
+    {
+      name = "ent___ent_2.2.0.tgz";
+      path = fetchurl {
+        name = "ent___ent_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/ent/-/ent-2.2.0.tgz";
+        sha1 = "e964219325a21d05f44466a2f686ed6ce5f5dd1d";
+      };
+    }
+    {
+      name = "entities___entities_1.1.1.tgz";
+      path = fetchurl {
+        name = "entities___entities_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz";
+        sha1 = "6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0";
+      };
+    }
+    {
+      name = "entities___entities_2.0.0.tgz";
+      path = fetchurl {
+        name = "entities___entities_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/entities/-/entities-2.0.0.tgz";
+        sha1 = "68d6084cab1b079767540d80e56a39b423e4abf4";
+      };
+    }
+    {
+      name = "errno___errno_0.1.7.tgz";
+      path = fetchurl {
+        name = "errno___errno_0.1.7.tgz";
+        url  = "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz";
+        sha1 = "4684d71779ad39af177e3f007996f7c67c852618";
+      };
+    }
+    {
+      name = "error_ex___error_ex_1.3.2.tgz";
+      path = fetchurl {
+        name = "error_ex___error_ex_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz";
+        sha1 = "b4ac40648107fdcdcfae242f428bea8a14d4f1bf";
+      };
+    }
+    {
+      name = "es_abstract___es_abstract_1.17.4.tgz";
+      path = fetchurl {
+        name = "es_abstract___es_abstract_1.17.4.tgz";
+        url  = "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.4.tgz";
+        sha1 = "e3aedf19706b20e7c2594c35fc0d57605a79e184";
+      };
+    }
+    {
+      name = "es_to_primitive___es_to_primitive_1.2.1.tgz";
+      path = fetchurl {
+        name = "es_to_primitive___es_to_primitive_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz";
+        sha1 = "e55cd4c9cdc188bcefb03b366c736323fc5c898a";
+      };
+    }
+    {
+      name = "es6_promise___es6_promise_3.0.2.tgz";
+      path = fetchurl {
+        name = "es6_promise___es6_promise_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.0.2.tgz";
+        sha1 = "010d5858423a5f118979665f46486a95c6ee2bb6";
+      };
+    }
+    {
+      name = "escape_html___escape_html_1.0.3.tgz";
+      path = fetchurl {
+        name = "escape_html___escape_html_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz";
+        sha1 = "0258eae4d3d0c0974de1c169188ef0051d1d1988";
+      };
+    }
+    {
+      name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
+      path = fetchurl {
+        name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz";
+        sha1 = "1b61c0562190a8dff6ae3bb2cf0200ca130b86d4";
+      };
+    }
+    {
+      name = "escaper___escaper_2.5.3.tgz";
+      path = fetchurl {
+        name = "escaper___escaper_2.5.3.tgz";
+        url  = "https://registry.yarnpkg.com/escaper/-/escaper-2.5.3.tgz";
+        sha1 = "8b8fe90ba364054151ab7eff18b4ce43b1e13ab5";
+      };
+    }
+    {
+      name = "escodegen___escodegen_1.11.0.tgz";
+      path = fetchurl {
+        name = "escodegen___escodegen_1.11.0.tgz";
+        url  = "https://registry.yarnpkg.com/escodegen/-/escodegen-1.11.0.tgz";
+        sha1 = "b27a9389481d5bfd5bec76f7bb1eb3f8f4556589";
+      };
+    }
+    {
+      name = "eslint_config_airbnb_base___eslint_config_airbnb_base_14.0.0.tgz";
+      path = fetchurl {
+        name = "eslint_config_airbnb_base___eslint_config_airbnb_base_14.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-14.0.0.tgz";
+        sha1 = "8a7bcb9643d13c55df4dd7444f138bf4efa61e17";
+      };
+    }
+    {
+      name = "eslint_config_prettier___eslint_config_prettier_6.10.0.tgz";
+      path = fetchurl {
+        name = "eslint_config_prettier___eslint_config_prettier_6.10.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.10.0.tgz";
+        sha1 = "7b15e303bf9c956875c948f6b21500e48ded6a7f";
+      };
+    }
+    {
+      name = "eslint_import_resolver_jest___eslint_import_resolver_jest_2.1.2.tgz";
+      path = fetchurl {
+        name = "eslint_import_resolver_jest___eslint_import_resolver_jest_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-import-resolver-jest/-/eslint-import-resolver-jest-2.1.2.tgz";
+        sha1 = "8720fbe8b8498e95cb2bc6ef52b46b713aedaa59";
+      };
+    }
+    {
+      name = "eslint_import_resolver_node___eslint_import_resolver_node_0.3.2.tgz";
+      path = fetchurl {
+        name = "eslint_import_resolver_node___eslint_import_resolver_node_0.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz";
+        sha1 = "58f15fb839b8d0576ca980413476aab2472db66a";
+      };
+    }
+    {
+      name = "eslint_import_resolver_webpack___eslint_import_resolver_webpack_0.12.1.tgz";
+      path = fetchurl {
+        name = "eslint_import_resolver_webpack___eslint_import_resolver_webpack_0.12.1.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-import-resolver-webpack/-/eslint-import-resolver-webpack-0.12.1.tgz";
+        sha1 = "771ae561e887ca4e53ee87605fbb36c5e290b0f5";
+      };
+    }
+    {
+      name = "eslint_module_utils___eslint_module_utils_2.5.2.tgz";
+      path = fetchurl {
+        name = "eslint_module_utils___eslint_module_utils_2.5.2.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.5.2.tgz";
+        sha1 = "7878f7504824e1b857dd2505b59a8e5eda26a708";
+      };
+    }
+    {
+      name = "eslint_plugin_babel___eslint_plugin_babel_5.3.0.tgz";
+      path = fetchurl {
+        name = "eslint_plugin_babel___eslint_plugin_babel_5.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-babel/-/eslint-plugin-babel-5.3.0.tgz";
+        sha1 = "2e7f251ccc249326da760c1a4c948a91c32d0023";
+      };
+    }
+    {
+      name = "eslint_plugin_filenames___eslint_plugin_filenames_1.3.2.tgz";
+      path = fetchurl {
+        name = "eslint_plugin_filenames___eslint_plugin_filenames_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-filenames/-/eslint-plugin-filenames-1.3.2.tgz";
+        sha1 = "7094f00d7aefdd6999e3ac19f72cea058e590cf7";
+      };
+    }
+    {
+      name = "eslint_plugin_import___eslint_plugin_import_2.20.1.tgz";
+      path = fetchurl {
+        name = "eslint_plugin_import___eslint_plugin_import_2.20.1.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.20.1.tgz";
+        sha1 = "802423196dcb11d9ce8435a5fc02a6d3b46939b3";
+      };
+    }
+    {
+      name = "eslint_plugin_jasmine___eslint_plugin_jasmine_4.1.0.tgz";
+      path = fetchurl {
+        name = "eslint_plugin_jasmine___eslint_plugin_jasmine_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-jasmine/-/eslint-plugin-jasmine-4.1.0.tgz";
+        sha1 = "4f6d41b1a8622348c97559cbcd29badffa74dbfa";
+      };
+    }
+    {
+      name = "eslint_plugin_jest___eslint_plugin_jest_23.8.2.tgz";
+      path = fetchurl {
+        name = "eslint_plugin_jest___eslint_plugin_jest_23.8.2.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-23.8.2.tgz";
+        sha1 = "6f28b41c67ef635f803ebd9e168f6b73858eb8d4";
+      };
+    }
+    {
+      name = "eslint_plugin_no_jquery___eslint_plugin_no_jquery_2.3.1.tgz";
+      path = fetchurl {
+        name = "eslint_plugin_no_jquery___eslint_plugin_no_jquery_2.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-no-jquery/-/eslint-plugin-no-jquery-2.3.1.tgz";
+        sha1 = "1c364cb863a38cc1570c8020155b6004cca62178";
+      };
+    }
+    {
+      name = "eslint_plugin_promise___eslint_plugin_promise_4.2.1.tgz";
+      path = fetchurl {
+        name = "eslint_plugin_promise___eslint_plugin_promise_4.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.2.1.tgz";
+        sha1 = "845fd8b2260ad8f82564c1222fce44ad71d9418a";
+      };
+    }
+    {
+      name = "eslint_plugin_vue___eslint_plugin_vue_6.2.2.tgz";
+      path = fetchurl {
+        name = "eslint_plugin_vue___eslint_plugin_vue_6.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-6.2.2.tgz";
+        sha1 = "27fecd9a3a24789b0f111ecdd540a9e56198e0fe";
+      };
+    }
+    {
+      name = "eslint_rule_composer___eslint_rule_composer_0.3.0.tgz";
+      path = fetchurl {
+        name = "eslint_rule_composer___eslint_rule_composer_0.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz";
+        sha1 = "79320c927b0c5c0d3d3d2b76c8b4a488f25bbaf9";
+      };
+    }
+    {
+      name = "eslint_scope___eslint_scope_4.0.3.tgz";
+      path = fetchurl {
+        name = "eslint_scope___eslint_scope_4.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz";
+        sha1 = "ca03833310f6889a3264781aa82e63eb9cfe7848";
+      };
+    }
+    {
+      name = "eslint_scope___eslint_scope_5.0.0.tgz";
+      path = fetchurl {
+        name = "eslint_scope___eslint_scope_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.0.0.tgz";
+        sha1 = "e87c8887c73e8d1ec84f1ca591645c358bfc8fb9";
+      };
+    }
+    {
+      name = "eslint_utils___eslint_utils_1.4.3.tgz";
+      path = fetchurl {
+        name = "eslint_utils___eslint_utils_1.4.3.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.3.tgz";
+        sha1 = "74fec7c54d0776b6f67e0251040b5806564e981f";
+      };
+    }
+    {
+      name = "eslint_utils___eslint_utils_2.0.0.tgz";
+      path = fetchurl {
+        name = "eslint_utils___eslint_utils_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.0.0.tgz";
+        sha1 = "7be1cc70f27a72a76cd14aa698bcabed6890e1cd";
+      };
+    }
+    {
+      name = "eslint_visitor_keys___eslint_visitor_keys_1.1.0.tgz";
+      path = fetchurl {
+        name = "eslint_visitor_keys___eslint_visitor_keys_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz";
+        sha1 = "e2a82cea84ff246ad6fb57f9bde5b46621459ec2";
+      };
+    }
+    {
+      name = "eslint___eslint_6.8.0.tgz";
+      path = fetchurl {
+        name = "eslint___eslint_6.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint/-/eslint-6.8.0.tgz";
+        sha1 = "62262d6729739f9275723824302fb227c8c93ffb";
+      };
+    }
+    {
+      name = "espree___espree_6.1.2.tgz";
+      path = fetchurl {
+        name = "espree___espree_6.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/espree/-/espree-6.1.2.tgz";
+        sha1 = "6c272650932b4f91c3714e5e7b5f5e2ecf47262d";
+      };
+    }
+    {
+      name = "esprima___esprima_3.1.3.tgz";
+      path = fetchurl {
+        name = "esprima___esprima_3.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz";
+        sha1 = "fdca51cee6133895e3c88d535ce49dbff62a4633";
+      };
+    }
+    {
+      name = "esprima___esprima_4.0.1.tgz";
+      path = fetchurl {
+        name = "esprima___esprima_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz";
+        sha1 = "13b04cdb3e6c5d19df91ab6987a8695619b0aa71";
+      };
+    }
+    {
+      name = "esquery___esquery_1.0.1.tgz";
+      path = fetchurl {
+        name = "esquery___esquery_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz";
+        sha1 = "406c51658b1f5991a5f9b62b1dc25b00e3e5c708";
+      };
+    }
+    {
+      name = "esrecurse___esrecurse_4.2.1.tgz";
+      path = fetchurl {
+        name = "esrecurse___esrecurse_4.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz";
+        sha1 = "007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf";
+      };
+    }
+    {
+      name = "estraverse___estraverse_4.2.0.tgz";
+      path = fetchurl {
+        name = "estraverse___estraverse_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz";
+        sha1 = "0dee3fed31fcd469618ce7342099fc1afa0bdb13";
+      };
+    }
+    {
+      name = "esutils___esutils_2.0.3.tgz";
+      path = fetchurl {
+        name = "esutils___esutils_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz";
+        sha1 = "74d2eb4de0b8da1293711910d50775b9b710ef64";
+      };
+    }
+    {
+      name = "etag___etag_1.8.1.tgz";
+      path = fetchurl {
+        name = "etag___etag_1.8.1.tgz";
+        url  = "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz";
+        sha1 = "41ae2eeb65efa62268aebfea83ac7d79299b0887";
+      };
+    }
+    {
+      name = "eve_raphael___eve_raphael_0.5.0.tgz";
+      path = fetchurl {
+        name = "eve_raphael___eve_raphael_0.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/eve-raphael/-/eve-raphael-0.5.0.tgz";
+        sha1 = "17c754b792beef3fa6684d79cf5a47c63c4cda30";
+      };
+    }
+    {
+      name = "eventemitter3___eventemitter3_4.0.0.tgz";
+      path = fetchurl {
+        name = "eventemitter3___eventemitter3_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.0.tgz";
+        sha1 = "d65176163887ee59f386d64c82610b696a4a74eb";
+      };
+    }
+    {
+      name = "events___events_1.1.1.tgz";
+      path = fetchurl {
+        name = "events___events_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz";
+        sha1 = "9ebdb7635ad099c70dcc4c2a1f5004288e8bd924";
+      };
+    }
+    {
+      name = "events___events_3.0.0.tgz";
+      path = fetchurl {
+        name = "events___events_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/events/-/events-3.0.0.tgz";
+        sha1 = "9a0a0dfaf62893d92b875b8f2698ca4114973e88";
+      };
+    }
+    {
+      name = "eventsource___eventsource_1.0.7.tgz";
+      path = fetchurl {
+        name = "eventsource___eventsource_1.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/eventsource/-/eventsource-1.0.7.tgz";
+        sha1 = "8fbc72c93fcd34088090bc0a4e64f4b5cee6d8d0";
+      };
+    }
+    {
+      name = "evp_bytestokey___evp_bytestokey_1.0.3.tgz";
+      path = fetchurl {
+        name = "evp_bytestokey___evp_bytestokey_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz";
+        sha1 = "7fcbdb198dc71959432efe13842684e0525acb02";
+      };
+    }
+    {
+      name = "exec_sh___exec_sh_0.3.2.tgz";
+      path = fetchurl {
+        name = "exec_sh___exec_sh_0.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.2.tgz";
+        sha1 = "6738de2eb7c8e671d0366aea0b0db8c6f7d7391b";
+      };
+    }
+    {
+      name = "execa___execa_0.7.0.tgz";
+      path = fetchurl {
+        name = "execa___execa_0.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz";
+        sha1 = "944becd34cc41ee32a63a9faf27ad5a65fc59777";
+      };
+    }
+    {
+      name = "execa___execa_1.0.0.tgz";
+      path = fetchurl {
+        name = "execa___execa_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz";
+        sha1 = "c6236a5bb4df6d6f15e88e7f017798216749ddd8";
+      };
+    }
+    {
+      name = "execall___execall_2.0.0.tgz";
+      path = fetchurl {
+        name = "execall___execall_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/execall/-/execall-2.0.0.tgz";
+        sha1 = "16a06b5fe5099df7d00be5d9c06eecded1663b45";
+      };
+    }
+    {
+      name = "exit___exit_0.1.2.tgz";
+      path = fetchurl {
+        name = "exit___exit_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz";
+        sha1 = "0632638f8d877cc82107d30a0fff1a17cba1cd0c";
+      };
+    }
+    {
+      name = "expand_brackets___expand_brackets_2.1.4.tgz";
+      path = fetchurl {
+        name = "expand_brackets___expand_brackets_2.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz";
+        sha1 = "b77735e315ce30f6b6eff0f83b04151a22449622";
+      };
+    }
+    {
+      name = "expand_tilde___expand_tilde_2.0.2.tgz";
+      path = fetchurl {
+        name = "expand_tilde___expand_tilde_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz";
+        sha1 = "97e801aa052df02454de46b02bf621642cdc8502";
+      };
+    }
+    {
+      name = "expect___expect_24.8.0.tgz";
+      path = fetchurl {
+        name = "expect___expect_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/expect/-/expect-24.8.0.tgz";
+        sha1 = "471f8ec256b7b6129ca2524b2a62f030df38718d";
+      };
+    }
+    {
+      name = "exports_loader___exports_loader_0.7.0.tgz";
+      path = fetchurl {
+        name = "exports_loader___exports_loader_0.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/exports-loader/-/exports-loader-0.7.0.tgz";
+        sha1 = "84881c784dea6036b8e1cd1dac3da9b6409e21a5";
+      };
+    }
+    {
+      name = "express___express_4.17.1.tgz";
+      path = fetchurl {
+        name = "express___express_4.17.1.tgz";
+        url  = "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz";
+        sha1 = "4491fc38605cf51f8629d39c2b5d026f98a4c134";
+      };
+    }
+    {
+      name = "extend_shallow___extend_shallow_2.0.1.tgz";
+      path = fetchurl {
+        name = "extend_shallow___extend_shallow_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz";
+        sha1 = "51af7d614ad9a9f610ea1bafbb989d6b1c56890f";
+      };
+    }
+    {
+      name = "extend_shallow___extend_shallow_3.0.2.tgz";
+      path = fetchurl {
+        name = "extend_shallow___extend_shallow_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz";
+        sha1 = "26a71aaf073b39fb2127172746131c2704028db8";
+      };
+    }
+    {
+      name = "extend___extend_3.0.2.tgz";
+      path = fetchurl {
+        name = "extend___extend_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz";
+        sha1 = "f8b1136b4071fbd8eb140aff858b1019ec2915fa";
+      };
+    }
+    {
+      name = "external_editor___external_editor_3.1.0.tgz";
+      path = fetchurl {
+        name = "external_editor___external_editor_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz";
+        sha1 = "cb03f740befae03ea4d283caed2741a83f335495";
+      };
+    }
+    {
+      name = "extglob___extglob_2.0.4.tgz";
+      path = fetchurl {
+        name = "extglob___extglob_2.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz";
+        sha1 = "ad00fe4dc612a9232e8718711dc5cb5ab0285543";
+      };
+    }
+    {
+      name = "extract_files___extract_files_5.0.1.tgz";
+      path = fetchurl {
+        name = "extract_files___extract_files_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/extract-files/-/extract-files-5.0.1.tgz";
+        sha1 = "c9492a8410be643e260a376f0151361993d5f659";
+      };
+    }
+    {
+      name = "extract_from_css___extract_from_css_0.4.4.tgz";
+      path = fetchurl {
+        name = "extract_from_css___extract_from_css_0.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/extract-from-css/-/extract-from-css-0.4.4.tgz";
+        sha1 = "1ea7df2e7c7c6eb9922fa08e8adaea486f6f8f92";
+      };
+    }
+    {
+      name = "extsprintf___extsprintf_1.3.0.tgz";
+      path = fetchurl {
+        name = "extsprintf___extsprintf_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz";
+        sha1 = "96918440e3041a7a414f8c52e3c574eb3c3e1e05";
+      };
+    }
+    {
+      name = "fast_deep_equal___fast_deep_equal_3.1.1.tgz";
+      path = fetchurl {
+        name = "fast_deep_equal___fast_deep_equal_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz";
+        sha1 = "545145077c501491e33b15ec408c294376e94ae4";
+      };
+    }
+    {
+      name = "fast_glob___fast_glob_2.2.6.tgz";
+      path = fetchurl {
+        name = "fast_glob___fast_glob_2.2.6.tgz";
+        url  = "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.6.tgz";
+        sha1 = "a5d5b697ec8deda468d85a74035290a025a95295";
+      };
+    }
+    {
+      name = "fast_json_stable_stringify___fast_json_stable_stringify_2.0.0.tgz";
+      path = fetchurl {
+        name = "fast_json_stable_stringify___fast_json_stable_stringify_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz";
+        sha1 = "d5142c0caee6b1189f87d3a76111064f86c8bbf2";
+      };
+    }
+    {
+      name = "fast_levenshtein___fast_levenshtein_2.0.6.tgz";
+      path = fetchurl {
+        name = "fast_levenshtein___fast_levenshtein_2.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz";
+        sha1 = "3d8a5c66883a16a30ca8643e851f19baa7797917";
+      };
+    }
+    {
+      name = "fault___fault_1.0.2.tgz";
+      path = fetchurl {
+        name = "fault___fault_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/fault/-/fault-1.0.2.tgz";
+        sha1 = "c3d0fec202f172a3a4d414042ad2bb5e2a3ffbaa";
+      };
+    }
+    {
+      name = "faye_websocket___faye_websocket_0.10.0.tgz";
+      path = fetchurl {
+        name = "faye_websocket___faye_websocket_0.10.0.tgz";
+        url  = "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz";
+        sha1 = "4e492f8d04dfb6f89003507f6edbf2d501e7c6f4";
+      };
+    }
+    {
+      name = "faye_websocket___faye_websocket_0.11.1.tgz";
+      path = fetchurl {
+        name = "faye_websocket___faye_websocket_0.11.1.tgz";
+        url  = "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.1.tgz";
+        sha1 = "f0efe18c4f56e4f40afc7e06c719fd5ee6188f38";
+      };
+    }
+    {
+      name = "fb_watchman___fb_watchman_2.0.0.tgz";
+      path = fetchurl {
+        name = "fb_watchman___fb_watchman_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.0.tgz";
+        sha1 = "54e9abf7dfa2f26cd9b1636c588c1afc05de5d58";
+      };
+    }
+    {
+      name = "figgy_pudding___figgy_pudding_3.5.1.tgz";
+      path = fetchurl {
+        name = "figgy_pudding___figgy_pudding_3.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.1.tgz";
+        sha1 = "862470112901c727a0e495a80744bd5baa1d6790";
+      };
+    }
+    {
+      name = "figures___figures_3.2.0.tgz";
+      path = fetchurl {
+        name = "figures___figures_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz";
+        sha1 = "625c18bd293c604dc4a8ddb2febf0c88341746af";
+      };
+    }
+    {
+      name = "file_entry_cache___file_entry_cache_5.0.1.tgz";
+      path = fetchurl {
+        name = "file_entry_cache___file_entry_cache_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz";
+        sha1 = "ca0f6efa6dd3d561333fb14515065c2fafdf439c";
+      };
+    }
+    {
+      name = "file_loader___file_loader_5.1.0.tgz";
+      path = fetchurl {
+        name = "file_loader___file_loader_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/file-loader/-/file-loader-5.1.0.tgz";
+        sha1 = "cb56c070efc0e40666424309bd0d9e45ac6f2bb8";
+      };
+    }
+    {
+      name = "fileset___fileset_2.0.3.tgz";
+      path = fetchurl {
+        name = "fileset___fileset_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/fileset/-/fileset-2.0.3.tgz";
+        sha1 = "8e7548a96d3cc2327ee5e674168723a333bba2a0";
+      };
+    }
+    {
+      name = "filesize___filesize_3.6.1.tgz";
+      path = fetchurl {
+        name = "filesize___filesize_3.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/filesize/-/filesize-3.6.1.tgz";
+        sha1 = "090bb3ee01b6f801a8a8be99d31710b3422bb317";
+      };
+    }
+    {
+      name = "fill_range___fill_range_4.0.0.tgz";
+      path = fetchurl {
+        name = "fill_range___fill_range_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz";
+        sha1 = "d544811d428f98eb06a63dc402d2403c328c38f7";
+      };
+    }
+    {
+      name = "fill_range___fill_range_7.0.1.tgz";
+      path = fetchurl {
+        name = "fill_range___fill_range_7.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz";
+        sha1 = "1919a6a7c75fe38b2c7c77e5198535da9acdda40";
+      };
+    }
+    {
+      name = "finalhandler___finalhandler_1.1.0.tgz";
+      path = fetchurl {
+        name = "finalhandler___finalhandler_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.0.tgz";
+        sha1 = "ce0b6855b45853e791b2fcc680046d88253dd7f5";
+      };
+    }
+    {
+      name = "finalhandler___finalhandler_1.1.2.tgz";
+      path = fetchurl {
+        name = "finalhandler___finalhandler_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz";
+        sha1 = "b7e7d000ffd11938d0fdb053506f6ebabe9f587d";
+      };
+    }
+    {
+      name = "find_cache_dir___find_cache_dir_2.1.0.tgz";
+      path = fetchurl {
+        name = "find_cache_dir___find_cache_dir_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz";
+        sha1 = "8d0f94cd13fe43c6c7c261a0d86115ca918c05f7";
+      };
+    }
+    {
+      name = "find_cache_dir___find_cache_dir_3.0.0.tgz";
+      path = fetchurl {
+        name = "find_cache_dir___find_cache_dir_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.0.0.tgz";
+        sha1 = "cd4b7dd97b7185b7e17dbfe2d6e4115ee3eeb8fc";
+      };
+    }
+    {
+      name = "find_root___find_root_1.1.0.tgz";
+      path = fetchurl {
+        name = "find_root___find_root_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz";
+        sha1 = "abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4";
+      };
+    }
+    {
+      name = "find_up___find_up_1.1.2.tgz";
+      path = fetchurl {
+        name = "find_up___find_up_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz";
+        sha1 = "6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f";
+      };
+    }
+    {
+      name = "find_up___find_up_2.1.0.tgz";
+      path = fetchurl {
+        name = "find_up___find_up_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz";
+        sha1 = "45d1b7e506c717ddd482775a2b77920a3c0c57a7";
+      };
+    }
+    {
+      name = "find_up___find_up_3.0.0.tgz";
+      path = fetchurl {
+        name = "find_up___find_up_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz";
+        sha1 = "49169f1d7993430646da61ecc5ae355c21c97b73";
+      };
+    }
+    {
+      name = "find_up___find_up_4.1.0.tgz";
+      path = fetchurl {
+        name = "find_up___find_up_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz";
+        sha1 = "97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19";
+      };
+    }
+    {
+      name = "findup_sync___findup_sync_3.0.0.tgz";
+      path = fetchurl {
+        name = "findup_sync___findup_sync_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/findup-sync/-/findup-sync-3.0.0.tgz";
+        sha1 = "17b108f9ee512dfb7a5c7f3c8b27ea9e1a9c08d1";
+      };
+    }
+    {
+      name = "flat_cache___flat_cache_2.0.1.tgz";
+      path = fetchurl {
+        name = "flat_cache___flat_cache_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz";
+        sha1 = "5d296d6f04bda44a4630a301413bdbc2ec085ec0";
+      };
+    }
+    {
+      name = "flatted___flatted_2.0.0.tgz";
+      path = fetchurl {
+        name = "flatted___flatted_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/flatted/-/flatted-2.0.0.tgz";
+        sha1 = "55122b6536ea496b4b44893ee2608141d10d9916";
+      };
+    }
+    {
+      name = "flush_write_stream___flush_write_stream_1.1.1.tgz";
+      path = fetchurl {
+        name = "flush_write_stream___flush_write_stream_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz";
+        sha1 = "8dd7d873a1babc207d94ead0c2e0e44276ebf2e8";
+      };
+    }
+    {
+      name = "follow_redirects___follow_redirects_1.5.10.tgz";
+      path = fetchurl {
+        name = "follow_redirects___follow_redirects_1.5.10.tgz";
+        url  = "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.10.tgz";
+        sha1 = "7b7a9f9aea2fdff36786a94ff643ed07f4ff5e2a";
+      };
+    }
+    {
+      name = "for_in___for_in_1.0.2.tgz";
+      path = fetchurl {
+        name = "for_in___for_in_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz";
+        sha1 = "81068d295a8142ec0ac726c6e2200c30fb6d5e80";
+      };
+    }
+    {
+      name = "forever_agent___forever_agent_0.6.1.tgz";
+      path = fetchurl {
+        name = "forever_agent___forever_agent_0.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz";
+        sha1 = "fbc71f0c41adeb37f96c577ad1ed42d8fdacca91";
+      };
+    }
+    {
+      name = "form_data___form_data_2.3.3.tgz";
+      path = fetchurl {
+        name = "form_data___form_data_2.3.3.tgz";
+        url  = "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz";
+        sha1 = "dcce52c05f644f298c6a7ab936bd724ceffbf3a6";
+      };
+    }
+    {
+      name = "format___format_0.2.2.tgz";
+      path = fetchurl {
+        name = "format___format_0.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/format/-/format-0.2.2.tgz";
+        sha1 = "d6170107e9efdc4ed30c9dc39016df942b5cb58b";
+      };
+    }
+    {
+      name = "formdata_polyfill___formdata_polyfill_3.0.19.tgz";
+      path = fetchurl {
+        name = "formdata_polyfill___formdata_polyfill_3.0.19.tgz";
+        url  = "https://registry.yarnpkg.com/formdata-polyfill/-/formdata-polyfill-3.0.19.tgz";
+        sha1 = "72f517db3a646a5dd8c31af0edf111fd8f1e4cee";
+      };
+    }
+    {
+      name = "forwarded___forwarded_0.1.2.tgz";
+      path = fetchurl {
+        name = "forwarded___forwarded_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz";
+        sha1 = "98c23dab1175657b8c0573e8ceccd91b0ff18c84";
+      };
+    }
+    {
+      name = "fragment_cache___fragment_cache_0.2.1.tgz";
+      path = fetchurl {
+        name = "fragment_cache___fragment_cache_0.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz";
+        sha1 = "4290fad27f13e89be7f33799c6bc5a0abfff0d19";
+      };
+    }
+    {
+      name = "fresh___fresh_0.5.2.tgz";
+      path = fetchurl {
+        name = "fresh___fresh_0.5.2.tgz";
+        url  = "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz";
+        sha1 = "3d8cadd90d976569fa835ab1f8e4b23a105605a7";
+      };
+    }
+    {
+      name = "from2___from2_2.3.0.tgz";
+      path = fetchurl {
+        name = "from2___from2_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz";
+        sha1 = "8bfb5502bde4a4d36cfdeea007fcca21d7e382af";
+      };
+    }
+    {
+      name = "fs_extra___fs_extra_7.0.1.tgz";
+      path = fetchurl {
+        name = "fs_extra___fs_extra_7.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz";
+        sha1 = "4f189c44aa123b895f722804f55ea23eadc348e9";
+      };
+    }
+    {
+      name = "fs_minipass___fs_minipass_1.2.6.tgz";
+      path = fetchurl {
+        name = "fs_minipass___fs_minipass_1.2.6.tgz";
+        url  = "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.6.tgz";
+        sha1 = "2c5cc30ded81282bfe8a0d7c7c1853ddeb102c07";
+      };
+    }
+    {
+      name = "fs_minipass___fs_minipass_2.0.0.tgz";
+      path = fetchurl {
+        name = "fs_minipass___fs_minipass_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.0.0.tgz";
+        sha1 = "a6415edab02fae4b9e9230bc87ee2e4472003cd1";
+      };
+    }
+    {
+      name = "fs_write_stream_atomic___fs_write_stream_atomic_1.0.10.tgz";
+      path = fetchurl {
+        name = "fs_write_stream_atomic___fs_write_stream_atomic_1.0.10.tgz";
+        url  = "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz";
+        sha1 = "b47df53493ef911df75731e70a9ded0189db40c9";
+      };
+    }
+    {
+      name = "fs.realpath___fs.realpath_1.0.0.tgz";
+      path = fetchurl {
+        name = "fs.realpath___fs.realpath_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz";
+        sha1 = "1504ad2523158caa40db4a2787cb01411994ea4f";
+      };
+    }
+    {
+      name = "fsevents___fsevents_1.2.9.tgz";
+      path = fetchurl {
+        name = "fsevents___fsevents_1.2.9.tgz";
+        url  = "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.9.tgz";
+        sha1 = "3f5ed66583ccd6f400b5a00db6f7e861363e388f";
+      };
+    }
+    {
+      name = "fsevents___fsevents_2.0.7.tgz";
+      path = fetchurl {
+        name = "fsevents___fsevents_2.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/fsevents/-/fsevents-2.0.7.tgz";
+        sha1 = "382c9b443c6cbac4c57187cdda23aa3bf1ccfc2a";
+      };
+    }
+    {
+      name = "fstream___fstream_1.0.12.tgz";
+      path = fetchurl {
+        name = "fstream___fstream_1.0.12.tgz";
+        url  = "https://registry.yarnpkg.com/fstream/-/fstream-1.0.12.tgz";
+        sha1 = "4e8ba8ee2d48be4f7d0de505455548eae5932045";
+      };
+    }
+    {
+      name = "function_bind___function_bind_1.1.1.tgz";
+      path = fetchurl {
+        name = "function_bind___function_bind_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz";
+        sha1 = "a56899d3ea3c9bab874bb9773b7c5ede92f4895d";
+      };
+    }
+    {
+      name = "functional_red_black_tree___functional_red_black_tree_1.0.1.tgz";
+      path = fetchurl {
+        name = "functional_red_black_tree___functional_red_black_tree_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz";
+        sha1 = "1b0ab3bd553b2a0d6399d29c0e3ea0b252078327";
+      };
+    }
+    {
+      name = "fuzzaldrin_plus___fuzzaldrin_plus_0.6.0.tgz";
+      path = fetchurl {
+        name = "fuzzaldrin_plus___fuzzaldrin_plus_0.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/fuzzaldrin-plus/-/fuzzaldrin-plus-0.6.0.tgz";
+        sha1 = "832f6489fbe876769459599c914a670ec22947ee";
+      };
+    }
+    {
+      name = "gauge___gauge_2.7.4.tgz";
+      path = fetchurl {
+        name = "gauge___gauge_2.7.4.tgz";
+        url  = "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz";
+        sha1 = "2c03405c7538c39d7eb37b317022e325fb018bf7";
+      };
+    }
+    {
+      name = "gaze___gaze_1.1.3.tgz";
+      path = fetchurl {
+        name = "gaze___gaze_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/gaze/-/gaze-1.1.3.tgz";
+        sha1 = "c441733e13b927ac8c0ff0b4c3b033f28812924a";
+      };
+    }
+    {
+      name = "gensync___gensync_1.0.0_beta.1.tgz";
+      path = fetchurl {
+        name = "gensync___gensync_1.0.0_beta.1.tgz";
+        url  = "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.1.tgz";
+        sha1 = "58f4361ff987e5ff6e1e7a210827aa371eaac269";
+      };
+    }
+    {
+      name = "get_caller_file___get_caller_file_1.0.3.tgz";
+      path = fetchurl {
+        name = "get_caller_file___get_caller_file_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz";
+        sha1 = "f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a";
+      };
+    }
+    {
+      name = "get_caller_file___get_caller_file_2.0.5.tgz";
+      path = fetchurl {
+        name = "get_caller_file___get_caller_file_2.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz";
+        sha1 = "4f94412a82db32f36e3b0b9741f8a97feb031f7e";
+      };
+    }
+    {
+      name = "get_stdin___get_stdin_4.0.1.tgz";
+      path = fetchurl {
+        name = "get_stdin___get_stdin_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz";
+        sha1 = "b968c6b0a04384324902e8bf1a5df32579a450fe";
+      };
+    }
+    {
+      name = "get_stdin___get_stdin_6.0.0.tgz";
+      path = fetchurl {
+        name = "get_stdin___get_stdin_6.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz";
+        sha1 = "9e09bf712b360ab9225e812048f71fde9c89657b";
+      };
+    }
+    {
+      name = "get_stdin___get_stdin_7.0.0.tgz";
+      path = fetchurl {
+        name = "get_stdin___get_stdin_7.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/get-stdin/-/get-stdin-7.0.0.tgz";
+        sha1 = "8d5de98f15171a125c5e516643c7a6d0ea8a96f6";
+      };
+    }
+    {
+      name = "get_stdin___get_stdin_5.0.1.tgz";
+      path = fetchurl {
+        name = "get_stdin___get_stdin_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/get-stdin/-/get-stdin-5.0.1.tgz";
+        sha1 = "122e161591e21ff4c52530305693f20e6393a398";
+      };
+    }
+    {
+      name = "get_stream___get_stream_3.0.0.tgz";
+      path = fetchurl {
+        name = "get_stream___get_stream_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz";
+        sha1 = "8e943d1358dc37555054ecbe2edb05aa174ede14";
+      };
+    }
+    {
+      name = "get_stream___get_stream_4.1.0.tgz";
+      path = fetchurl {
+        name = "get_stream___get_stream_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz";
+        sha1 = "c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5";
+      };
+    }
+    {
+      name = "get_value___get_value_2.0.6.tgz";
+      path = fetchurl {
+        name = "get_value___get_value_2.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz";
+        sha1 = "dc15ca1c672387ca76bd37ac0a395ba2042a2c28";
+      };
+    }
+    {
+      name = "getpass___getpass_0.1.7.tgz";
+      path = fetchurl {
+        name = "getpass___getpass_0.1.7.tgz";
+        url  = "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz";
+        sha1 = "5eff8e3e684d569ae4cb2b1282604e8ba62149fa";
+      };
+    }
+    {
+      name = "gettext_extractor_vue___gettext_extractor_vue_4.0.2.tgz";
+      path = fetchurl {
+        name = "gettext_extractor_vue___gettext_extractor_vue_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/gettext-extractor-vue/-/gettext-extractor-vue-4.0.2.tgz";
+        sha1 = "16e1cdbdaf37e5bdf3cb0aff63685bdc5e74e906";
+      };
+    }
+    {
+      name = "gettext_extractor___gettext_extractor_3.4.3.tgz";
+      path = fetchurl {
+        name = "gettext_extractor___gettext_extractor_3.4.3.tgz";
+        url  = "https://registry.yarnpkg.com/gettext-extractor/-/gettext-extractor-3.4.3.tgz";
+        sha1 = "882679cefc71888eb6e69297e6b2dc14c0384fef";
+      };
+    }
+    {
+      name = "glob_parent___glob_parent_3.1.0.tgz";
+      path = fetchurl {
+        name = "glob_parent___glob_parent_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz";
+        sha1 = "9e6af6299d8d3bd2bd40430832bd113df906c5ae";
+      };
+    }
+    {
+      name = "glob_parent___glob_parent_5.0.0.tgz";
+      path = fetchurl {
+        name = "glob_parent___glob_parent_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.0.0.tgz";
+        sha1 = "1dc99f0f39b006d3e92c2c284068382f0c20e954";
+      };
+    }
+    {
+      name = "glob_to_regexp___glob_to_regexp_0.3.0.tgz";
+      path = fetchurl {
+        name = "glob_to_regexp___glob_to_regexp_0.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz";
+        sha1 = "8c5a1494d2066c570cc3bfe4496175acc4d502ab";
+      };
+    }
+    {
+      name = "glob_to_regexp___glob_to_regexp_0.4.1.tgz";
+      path = fetchurl {
+        name = "glob_to_regexp___glob_to_regexp_0.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz";
+        sha1 = "c75297087c851b9a578bd217dd59a92f59fe546e";
+      };
+    }
+    {
+      name = "glob___glob_7.1.6.tgz";
+      path = fetchurl {
+        name = "glob___glob_7.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz";
+        sha1 = "141f33b81a7c2492e125594307480c46679278a6";
+      };
+    }
+    {
+      name = "global_dirs___global_dirs_0.1.1.tgz";
+      path = fetchurl {
+        name = "global_dirs___global_dirs_0.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/global-dirs/-/global-dirs-0.1.1.tgz";
+        sha1 = "b319c0dd4607f353f3be9cca4c72fc148c49f445";
+      };
+    }
+    {
+      name = "global_modules___global_modules_2.0.0.tgz";
+      path = fetchurl {
+        name = "global_modules___global_modules_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz";
+        sha1 = "997605ad2345f27f51539bea26574421215c7780";
+      };
+    }
+    {
+      name = "global_modules___global_modules_1.0.0.tgz";
+      path = fetchurl {
+        name = "global_modules___global_modules_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz";
+        sha1 = "6d770f0eb523ac78164d72b5e71a8877265cc3ea";
+      };
+    }
+    {
+      name = "global_prefix___global_prefix_1.0.2.tgz";
+      path = fetchurl {
+        name = "global_prefix___global_prefix_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz";
+        sha1 = "dbf743c6c14992593c655568cb66ed32c0122ebe";
+      };
+    }
+    {
+      name = "global_prefix___global_prefix_3.0.0.tgz";
+      path = fetchurl {
+        name = "global_prefix___global_prefix_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/global-prefix/-/global-prefix-3.0.0.tgz";
+        sha1 = "fc85f73064df69f50421f47f883fe5b913ba9b97";
+      };
+    }
+    {
+      name = "globals___globals_11.12.0.tgz";
+      path = fetchurl {
+        name = "globals___globals_11.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz";
+        sha1 = "ab8795338868a0babd8525758018c2a7eb95c42e";
+      };
+    }
+    {
+      name = "globals___globals_12.3.0.tgz";
+      path = fetchurl {
+        name = "globals___globals_12.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/globals/-/globals-12.3.0.tgz";
+        sha1 = "1e564ee5c4dded2ab098b0f88f24702a3c56be13";
+      };
+    }
+    {
+      name = "globby___globby_6.1.0.tgz";
+      path = fetchurl {
+        name = "globby___globby_6.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz";
+        sha1 = "f5a6d70e8395e21c858fb0489d64df02424d506c";
+      };
+    }
+    {
+      name = "globby___globby_7.1.1.tgz";
+      path = fetchurl {
+        name = "globby___globby_7.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/globby/-/globby-7.1.1.tgz";
+        sha1 = "fb2ccff9401f8600945dfada97440cca972b8680";
+      };
+    }
+    {
+      name = "globby___globby_9.2.0.tgz";
+      path = fetchurl {
+        name = "globby___globby_9.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/globby/-/globby-9.2.0.tgz";
+        sha1 = "fd029a706c703d29bdd170f4b6db3a3f7a7cb63d";
+      };
+    }
+    {
+      name = "globjoin___globjoin_0.1.4.tgz";
+      path = fetchurl {
+        name = "globjoin___globjoin_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/globjoin/-/globjoin-0.1.4.tgz";
+        sha1 = "2f4494ac8919e3767c5cbb691e9f463324285d43";
+      };
+    }
+    {
+      name = "globule___globule_1.2.1.tgz";
+      path = fetchurl {
+        name = "globule___globule_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/globule/-/globule-1.2.1.tgz";
+        sha1 = "5dffb1b191f22d20797a9369b49eab4e9839696d";
+      };
+    }
+    {
+      name = "gonzales_pe___gonzales_pe_4.2.3.tgz";
+      path = fetchurl {
+        name = "gonzales_pe___gonzales_pe_4.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/gonzales-pe/-/gonzales-pe-4.2.3.tgz";
+        sha1 = "41091703625433285e0aee3aa47829fc1fbeb6f2";
+      };
+    }
+    {
+      name = "good_listener___good_listener_1.2.2.tgz";
+      path = fetchurl {
+        name = "good_listener___good_listener_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/good-listener/-/good-listener-1.2.2.tgz";
+        sha1 = "d53b30cdf9313dffb7dc9a0d477096aa6d145c50";
+      };
+    }
+    {
+      name = "got___got_6.7.1.tgz";
+      path = fetchurl {
+        name = "got___got_6.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/got/-/got-6.7.1.tgz";
+        sha1 = "240cd05785a9a18e561dc1b44b41c763ef1e8db0";
+      };
+    }
+    {
+      name = "graceful_fs___graceful_fs_4.2.3.tgz";
+      path = fetchurl {
+        name = "graceful_fs___graceful_fs_4.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz";
+        sha1 = "4a12ff1b60376ef09862c2093edd908328be8423";
+      };
+    }
+    {
+      name = "graceful_readlink___graceful_readlink_1.0.1.tgz";
+      path = fetchurl {
+        name = "graceful_readlink___graceful_readlink_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz";
+        sha1 = "4cafad76bc62f02fa039b2f94e9a3dd3a391a725";
+      };
+    }
+    {
+      name = "graphlib___graphlib_2.1.8.tgz";
+      path = fetchurl {
+        name = "graphlib___graphlib_2.1.8.tgz";
+        url  = "https://registry.yarnpkg.com/graphlib/-/graphlib-2.1.8.tgz";
+        sha1 = "5761d414737870084c92ec7b5dbcb0592c9d35da";
+      };
+    }
+    {
+      name = "graphql_tag___graphql_tag_2.10.3.tgz";
+      path = fetchurl {
+        name = "graphql_tag___graphql_tag_2.10.3.tgz";
+        url  = "https://registry.yarnpkg.com/graphql-tag/-/graphql-tag-2.10.3.tgz";
+        sha1 = "ea1baba5eb8fc6339e4c4cf049dabe522b0edf03";
+      };
+    }
+    {
+      name = "graphql___graphql_14.0.2.tgz";
+      path = fetchurl {
+        name = "graphql___graphql_14.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/graphql/-/graphql-14.0.2.tgz";
+        sha1 = "7dded337a4c3fd2d075692323384034b357f5650";
+      };
+    }
+    {
+      name = "growly___growly_1.3.0.tgz";
+      path = fetchurl {
+        name = "growly___growly_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz";
+        sha1 = "f10748cbe76af964b7c96c93c6bcc28af120c081";
+      };
+    }
+    {
+      name = "gzip_size___gzip_size_5.0.0.tgz";
+      path = fetchurl {
+        name = "gzip_size___gzip_size_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/gzip-size/-/gzip-size-5.0.0.tgz";
+        sha1 = "a55ecd99222f4c48fd8c01c625ce3b349d0a0e80";
+      };
+    }
+    {
+      name = "handle_thing___handle_thing_2.0.0.tgz";
+      path = fetchurl {
+        name = "handle_thing___handle_thing_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.0.tgz";
+        sha1 = "0e039695ff50c93fc288557d696f3c1dc6776754";
+      };
+    }
+    {
+      name = "handlebars___handlebars_4.7.2.tgz";
+      path = fetchurl {
+        name = "handlebars___handlebars_4.7.2.tgz";
+        url  = "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.2.tgz";
+        sha1 = "01127b3840156a0927058779482031afe0e730d7";
+      };
+    }
+    {
+      name = "har_schema___har_schema_2.0.0.tgz";
+      path = fetchurl {
+        name = "har_schema___har_schema_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz";
+        sha1 = "a94c2224ebcac04782a0d9035521f24735b7ec92";
+      };
+    }
+    {
+      name = "har_validator___har_validator_5.1.3.tgz";
+      path = fetchurl {
+        name = "har_validator___har_validator_5.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz";
+        sha1 = "1ef89ebd3e4996557675eed9893110dc350fa080";
+      };
+    }
+    {
+      name = "has_ansi___has_ansi_2.0.0.tgz";
+      path = fetchurl {
+        name = "has_ansi___has_ansi_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz";
+        sha1 = "34f5049ce1ecdf2b0649af3ef24e45ed35416d91";
+      };
+    }
+    {
+      name = "has_binary2___has_binary2_1.0.2.tgz";
+      path = fetchurl {
+        name = "has_binary2___has_binary2_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/has-binary2/-/has-binary2-1.0.2.tgz";
+        sha1 = "e83dba49f0b9be4d026d27365350d9f03f54be98";
+      };
+    }
+    {
+      name = "has_cors___has_cors_1.1.0.tgz";
+      path = fetchurl {
+        name = "has_cors___has_cors_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/has-cors/-/has-cors-1.1.0.tgz";
+        sha1 = "5e474793f7ea9843d1bb99c23eef49ff126fff39";
+      };
+    }
+    {
+      name = "has_flag___has_flag_3.0.0.tgz";
+      path = fetchurl {
+        name = "has_flag___has_flag_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz";
+        sha1 = "b5d454dc2199ae225699f3467e5a07f3b955bafd";
+      };
+    }
+    {
+      name = "has_flag___has_flag_4.0.0.tgz";
+      path = fetchurl {
+        name = "has_flag___has_flag_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz";
+        sha1 = "944771fd9c81c81265c4d6941860da06bb59479b";
+      };
+    }
+    {
+      name = "has_symbols___has_symbols_1.0.1.tgz";
+      path = fetchurl {
+        name = "has_symbols___has_symbols_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz";
+        sha1 = "9f5214758a44196c406d9bd76cebf81ec2dd31e8";
+      };
+    }
+    {
+      name = "has_unicode___has_unicode_2.0.1.tgz";
+      path = fetchurl {
+        name = "has_unicode___has_unicode_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz";
+        sha1 = "e0e6fe6a28cf51138855e086d1691e771de2a8b9";
+      };
+    }
+    {
+      name = "has_value___has_value_0.3.1.tgz";
+      path = fetchurl {
+        name = "has_value___has_value_0.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz";
+        sha1 = "7b1f58bada62ca827ec0a2078025654845995e1f";
+      };
+    }
+    {
+      name = "has_value___has_value_1.0.0.tgz";
+      path = fetchurl {
+        name = "has_value___has_value_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz";
+        sha1 = "18b281da585b1c5c51def24c930ed29a0be6b177";
+      };
+    }
+    {
+      name = "has_values___has_values_0.1.4.tgz";
+      path = fetchurl {
+        name = "has_values___has_values_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz";
+        sha1 = "6d61de95d91dfca9b9a02089ad384bff8f62b771";
+      };
+    }
+    {
+      name = "has_values___has_values_1.0.0.tgz";
+      path = fetchurl {
+        name = "has_values___has_values_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz";
+        sha1 = "95b0b63fec2146619a6fe57fe75628d5a39efe4f";
+      };
+    }
+    {
+      name = "has___has_1.0.3.tgz";
+      path = fetchurl {
+        name = "has___has_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz";
+        sha1 = "722d7cbfc1f6aa8241f16dd814e011e1f41e8796";
+      };
+    }
+    {
+      name = "hash_base___hash_base_2.0.2.tgz";
+      path = fetchurl {
+        name = "hash_base___hash_base_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/hash-base/-/hash-base-2.0.2.tgz";
+        sha1 = "66ea1d856db4e8a5470cadf6fce23ae5244ef2e1";
+      };
+    }
+    {
+      name = "hash_base___hash_base_3.0.4.tgz";
+      path = fetchurl {
+        name = "hash_base___hash_base_3.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz";
+        sha1 = "5fc8686847ecd73499403319a6b0a3f3f6ae4918";
+      };
+    }
+    {
+      name = "hash_sum___hash_sum_1.0.2.tgz";
+      path = fetchurl {
+        name = "hash_sum___hash_sum_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/hash-sum/-/hash-sum-1.0.2.tgz";
+        sha1 = "33b40777754c6432573c120cc3808bbd10d47f04";
+      };
+    }
+    {
+      name = "hash.js___hash.js_1.1.3.tgz";
+      path = fetchurl {
+        name = "hash.js___hash.js_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.3.tgz";
+        sha1 = "340dedbe6290187151c1ea1d777a3448935df846";
+      };
+    }
+    {
+      name = "he___he_1.2.0.tgz";
+      path = fetchurl {
+        name = "he___he_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz";
+        sha1 = "84ae65fa7eafb165fddb61566ae14baf05664f0f";
+      };
+    }
+    {
+      name = "highlight.js___highlight.js_9.13.1.tgz";
+      path = fetchurl {
+        name = "highlight.js___highlight.js_9.13.1.tgz";
+        url  = "https://registry.yarnpkg.com/highlight.js/-/highlight.js-9.13.1.tgz";
+        sha1 = "054586d53a6863311168488a0f58d6c505ce641e";
+      };
+    }
+    {
+      name = "hmac_drbg___hmac_drbg_1.0.1.tgz";
+      path = fetchurl {
+        name = "hmac_drbg___hmac_drbg_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz";
+        sha1 = "d2745701025a6c775a6c545793ed502fc0c649a1";
+      };
+    }
+    {
+      name = "homedir_polyfill___homedir_polyfill_1.0.1.tgz";
+      path = fetchurl {
+        name = "homedir_polyfill___homedir_polyfill_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz";
+        sha1 = "4c2bbc8a758998feebf5ed68580f76d46768b4bc";
+      };
+    }
+    {
+      name = "hoopy___hoopy_0.1.4.tgz";
+      path = fetchurl {
+        name = "hoopy___hoopy_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/hoopy/-/hoopy-0.1.4.tgz";
+        sha1 = "609207d661100033a9a9402ad3dea677381c1b1d";
+      };
+    }
+    {
+      name = "hosted_git_info___hosted_git_info_2.2.0.tgz";
+      path = fetchurl {
+        name = "hosted_git_info___hosted_git_info_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.2.0.tgz";
+        sha1 = "7a0d097863d886c0fabbdcd37bf1758d8becf8a5";
+      };
+    }
+    {
+      name = "hpack.js___hpack.js_2.1.6.tgz";
+      path = fetchurl {
+        name = "hpack.js___hpack.js_2.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz";
+        sha1 = "87774c0949e513f42e84575b3c45681fade2a0b2";
+      };
+    }
+    {
+      name = "html_encoding_sniffer___html_encoding_sniffer_1.0.2.tgz";
+      path = fetchurl {
+        name = "html_encoding_sniffer___html_encoding_sniffer_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz";
+        sha1 = "e70d84b94da53aa375e11fe3a351be6642ca46f8";
+      };
+    }
+    {
+      name = "html_entities___html_entities_1.2.1.tgz";
+      path = fetchurl {
+        name = "html_entities___html_entities_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz";
+        sha1 = "0df29351f0721163515dfb9e5543e5f6eed5162f";
+      };
+    }
+    {
+      name = "html_escaper___html_escaper_2.0.0.tgz";
+      path = fetchurl {
+        name = "html_escaper___html_escaper_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.0.tgz";
+        sha1 = "71e87f931de3fe09e56661ab9a29aadec707b491";
+      };
+    }
+    {
+      name = "html_minifier___html_minifier_4.0.0.tgz";
+      path = fetchurl {
+        name = "html_minifier___html_minifier_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/html-minifier/-/html-minifier-4.0.0.tgz";
+        sha1 = "cca9aad8bce1175e02e17a8c33e46d8988889f56";
+      };
+    }
+    {
+      name = "html_tags___html_tags_3.0.0.tgz";
+      path = fetchurl {
+        name = "html_tags___html_tags_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/html-tags/-/html-tags-3.0.0.tgz";
+        sha1 = "41f57708c9e6b7b46a00a22317d614c4a2bab166";
+      };
+    }
+    {
+      name = "htmlparser2___htmlparser2_3.10.0.tgz";
+      path = fetchurl {
+        name = "htmlparser2___htmlparser2_3.10.0.tgz";
+        url  = "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.0.tgz";
+        sha1 = "5f5e422dcf6119c0d983ed36260ce9ded0bee464";
+      };
+    }
+    {
+      name = "htmlparser2___htmlparser2_4.1.0.tgz";
+      path = fetchurl {
+        name = "htmlparser2___htmlparser2_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-4.1.0.tgz";
+        sha1 = "9a4ef161f2e4625ebf7dfbe6c0a2f52d18a59e78";
+      };
+    }
+    {
+      name = "http_deceiver___http_deceiver_1.2.7.tgz";
+      path = fetchurl {
+        name = "http_deceiver___http_deceiver_1.2.7.tgz";
+        url  = "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz";
+        sha1 = "fa7168944ab9a519d337cb0bec7284dc3e723d87";
+      };
+    }
+    {
+      name = "http_errors___http_errors_1.7.2.tgz";
+      path = fetchurl {
+        name = "http_errors___http_errors_1.7.2.tgz";
+        url  = "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz";
+        sha1 = "4f5029cf13239f31036e5b2e55292bcfbcc85c8f";
+      };
+    }
+    {
+      name = "http_errors___http_errors_1.6.2.tgz";
+      path = fetchurl {
+        name = "http_errors___http_errors_1.6.2.tgz";
+        url  = "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.2.tgz";
+        sha1 = "0a002cc85707192a7e7946ceedc11155f60ec736";
+      };
+    }
+    {
+      name = "http_proxy_middleware___http_proxy_middleware_0.19.1.tgz";
+      path = fetchurl {
+        name = "http_proxy_middleware___http_proxy_middleware_0.19.1.tgz";
+        url  = "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz";
+        sha1 = "183c7dc4aa1479150306498c210cdaf96080a43a";
+      };
+    }
+    {
+      name = "http_proxy___http_proxy_1.18.0.tgz";
+      path = fetchurl {
+        name = "http_proxy___http_proxy_1.18.0.tgz";
+        url  = "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.0.tgz";
+        sha1 = "dbe55f63e75a347db7f3d99974f2692a314a6a3a";
+      };
+    }
+    {
+      name = "http_signature___http_signature_1.2.0.tgz";
+      path = fetchurl {
+        name = "http_signature___http_signature_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz";
+        sha1 = "9aecd925114772f3d95b65a60abb8f7c18fbace1";
+      };
+    }
+    {
+      name = "https_browserify___https_browserify_1.0.0.tgz";
+      path = fetchurl {
+        name = "https_browserify___https_browserify_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz";
+        sha1 = "ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73";
+      };
+    }
+    {
+      name = "iconv_lite___iconv_lite_0.4.24.tgz";
+      path = fetchurl {
+        name = "iconv_lite___iconv_lite_0.4.24.tgz";
+        url  = "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz";
+        sha1 = "2022b4b25fbddc21d2f524974a474aafe733908b";
+      };
+    }
+    {
+      name = "icss_replace_symbols___icss_replace_symbols_1.1.0.tgz";
+      path = fetchurl {
+        name = "icss_replace_symbols___icss_replace_symbols_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz";
+        sha1 = "06ea6f83679a7749e386cfe1fe812ae5db223ded";
+      };
+    }
+    {
+      name = "icss_utils___icss_utils_4.1.1.tgz";
+      path = fetchurl {
+        name = "icss_utils___icss_utils_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.1.tgz";
+        sha1 = "21170b53789ee27447c2f47dd683081403f9a467";
+      };
+    }
+    {
+      name = "ieee754___ieee754_1.1.13.tgz";
+      path = fetchurl {
+        name = "ieee754___ieee754_1.1.13.tgz";
+        url  = "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz";
+        sha1 = "ec168558e95aa181fd87d37f55c32bbcb6708b84";
+      };
+    }
+    {
+      name = "iferr___iferr_0.1.5.tgz";
+      path = fetchurl {
+        name = "iferr___iferr_0.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz";
+        sha1 = "c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501";
+      };
+    }
+    {
+      name = "ignore_by_default___ignore_by_default_1.0.1.tgz";
+      path = fetchurl {
+        name = "ignore_by_default___ignore_by_default_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/ignore-by-default/-/ignore-by-default-1.0.1.tgz";
+        sha1 = "48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09";
+      };
+    }
+    {
+      name = "ignore_walk___ignore_walk_3.0.1.tgz";
+      path = fetchurl {
+        name = "ignore_walk___ignore_walk_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.1.tgz";
+        sha1 = "a83e62e7d272ac0e3b551aaa82831a19b69f82f8";
+      };
+    }
+    {
+      name = "ignore___ignore_3.3.10.tgz";
+      path = fetchurl {
+        name = "ignore___ignore_3.3.10.tgz";
+        url  = "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz";
+        sha1 = "0a97fb876986e8081c631160f8f9f389157f0043";
+      };
+    }
+    {
+      name = "ignore___ignore_4.0.6.tgz";
+      path = fetchurl {
+        name = "ignore___ignore_4.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz";
+        sha1 = "750e3db5862087b4737ebac8207ffd1ef27b25fc";
+      };
+    }
+    {
+      name = "ignore___ignore_5.1.2.tgz";
+      path = fetchurl {
+        name = "ignore___ignore_5.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/ignore/-/ignore-5.1.2.tgz";
+        sha1 = "e28e584d43ad7e92f96995019cc43b9e1ac49558";
+      };
+    }
+    {
+      name = "immediate___immediate_3.0.6.tgz";
+      path = fetchurl {
+        name = "immediate___immediate_3.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/immediate/-/immediate-3.0.6.tgz";
+        sha1 = "9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b";
+      };
+    }
+    {
+      name = "immer___immer_5.2.1.tgz";
+      path = fetchurl {
+        name = "immer___immer_5.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/immer/-/immer-5.2.1.tgz";
+        sha1 = "7d4f74c242178e87151d595f48db1b5c51580485";
+      };
+    }
+    {
+      name = "import_fresh___import_fresh_2.0.0.tgz";
+      path = fetchurl {
+        name = "import_fresh___import_fresh_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz";
+        sha1 = "d81355c15612d386c61f9ddd3922d4304822a546";
+      };
+    }
+    {
+      name = "import_fresh___import_fresh_3.2.1.tgz";
+      path = fetchurl {
+        name = "import_fresh___import_fresh_3.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz";
+        sha1 = "633ff618506e793af5ac91bf48b72677e15cbe66";
+      };
+    }
+    {
+      name = "import_lazy___import_lazy_2.1.0.tgz";
+      path = fetchurl {
+        name = "import_lazy___import_lazy_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz";
+        sha1 = "05698e3d45c88e8d7e9d92cb0584e77f096f3e43";
+      };
+    }
+    {
+      name = "import_lazy___import_lazy_4.0.0.tgz";
+      path = fetchurl {
+        name = "import_lazy___import_lazy_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/import-lazy/-/import-lazy-4.0.0.tgz";
+        sha1 = "e8eb627483a0a43da3c03f3e35548be5cb0cc153";
+      };
+    }
+    {
+      name = "import_local___import_local_2.0.0.tgz";
+      path = fetchurl {
+        name = "import_local___import_local_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz";
+        sha1 = "55070be38a5993cf18ef6db7e961f5bee5c5a09d";
+      };
+    }
+    {
+      name = "imports_loader___imports_loader_0.8.0.tgz";
+      path = fetchurl {
+        name = "imports_loader___imports_loader_0.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/imports-loader/-/imports-loader-0.8.0.tgz";
+        sha1 = "030ea51b8ca05977c40a3abfd9b4088fe0be9a69";
+      };
+    }
+    {
+      name = "imurmurhash___imurmurhash_0.1.4.tgz";
+      path = fetchurl {
+        name = "imurmurhash___imurmurhash_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz";
+        sha1 = "9218b9b2b928a238b13dc4fb6b6d576f231453ea";
+      };
+    }
+    {
+      name = "in_publish___in_publish_2.0.0.tgz";
+      path = fetchurl {
+        name = "in_publish___in_publish_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz";
+        sha1 = "e20ff5e3a2afc2690320b6dc552682a9c7fadf51";
+      };
+    }
+    {
+      name = "indent_string___indent_string_2.1.0.tgz";
+      path = fetchurl {
+        name = "indent_string___indent_string_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz";
+        sha1 = "8e2d48348742121b4a8218b7a137e9a52049dc80";
+      };
+    }
+    {
+      name = "indent_string___indent_string_3.2.0.tgz";
+      path = fetchurl {
+        name = "indent_string___indent_string_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz";
+        sha1 = "4a5fd6d27cc332f37e5419a504dbb837105c9289";
+      };
+    }
+    {
+      name = "indent_string___indent_string_4.0.0.tgz";
+      path = fetchurl {
+        name = "indent_string___indent_string_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz";
+        sha1 = "624f8f4497d619b2d9768531d58f4122854d7251";
+      };
+    }
+    {
+      name = "indexes_of___indexes_of_1.0.1.tgz";
+      path = fetchurl {
+        name = "indexes_of___indexes_of_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz";
+        sha1 = "f30f716c8e2bd346c7b67d3df3915566a7c05607";
+      };
+    }
+    {
+      name = "indexof___indexof_0.0.1.tgz";
+      path = fetchurl {
+        name = "indexof___indexof_0.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz";
+        sha1 = "82dc336d232b9062179d05ab3293a66059fd435d";
+      };
+    }
+    {
+      name = "infer_owner___infer_owner_1.0.4.tgz";
+      path = fetchurl {
+        name = "infer_owner___infer_owner_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz";
+        sha1 = "c4cefcaa8e51051c2a40ba2ce8a3d27295af9467";
+      };
+    }
+    {
+      name = "inflight___inflight_1.0.6.tgz";
+      path = fetchurl {
+        name = "inflight___inflight_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz";
+        sha1 = "49bd6331d7d02d0c09bc910a1075ba8165b56df9";
+      };
+    }
+    {
+      name = "inherits___inherits_2.0.3.tgz";
+      path = fetchurl {
+        name = "inherits___inherits_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz";
+        sha1 = "633c2c83e3da42a502f52466022480f4208261de";
+      };
+    }
+    {
+      name = "inherits___inherits_2.0.1.tgz";
+      path = fetchurl {
+        name = "inherits___inherits_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz";
+        sha1 = "b17d08d326b4423e568eff719f91b0b1cbdf69f1";
+      };
+    }
+    {
+      name = "ini___ini_1.3.5.tgz";
+      path = fetchurl {
+        name = "ini___ini_1.3.5.tgz";
+        url  = "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz";
+        sha1 = "eee25f56db1c9ec6085e0c22778083f596abf927";
+      };
+    }
+    {
+      name = "inquirer___inquirer_7.0.4.tgz";
+      path = fetchurl {
+        name = "inquirer___inquirer_7.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/inquirer/-/inquirer-7.0.4.tgz";
+        sha1 = "99af5bde47153abca23f5c7fc30db247f39da703";
+      };
+    }
+    {
+      name = "internal_ip___internal_ip_4.3.0.tgz";
+      path = fetchurl {
+        name = "internal_ip___internal_ip_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/internal-ip/-/internal-ip-4.3.0.tgz";
+        sha1 = "845452baad9d2ca3b69c635a137acb9a0dad0907";
+      };
+    }
+    {
+      name = "interpret___interpret_1.2.0.tgz";
+      path = fetchurl {
+        name = "interpret___interpret_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/interpret/-/interpret-1.2.0.tgz";
+        sha1 = "d5061a6224be58e8083985f5014d844359576296";
+      };
+    }
+    {
+      name = "invariant___invariant_2.2.4.tgz";
+      path = fetchurl {
+        name = "invariant___invariant_2.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz";
+        sha1 = "610f3c92c9359ce1db616e538008d23ff35158e6";
+      };
+    }
+    {
+      name = "invert_kv___invert_kv_1.0.0.tgz";
+      path = fetchurl {
+        name = "invert_kv___invert_kv_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz";
+        sha1 = "104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6";
+      };
+    }
+    {
+      name = "invert_kv___invert_kv_2.0.0.tgz";
+      path = fetchurl {
+        name = "invert_kv___invert_kv_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz";
+        sha1 = "7393f5afa59ec9ff5f67a27620d11c226e3eec02";
+      };
+    }
+    {
+      name = "ip_regex___ip_regex_2.1.0.tgz";
+      path = fetchurl {
+        name = "ip_regex___ip_regex_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz";
+        sha1 = "fa78bf5d2e6913c911ce9f819ee5146bb6d844e9";
+      };
+    }
+    {
+      name = "ip___ip_1.1.5.tgz";
+      path = fetchurl {
+        name = "ip___ip_1.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz";
+        sha1 = "bdded70114290828c0a039e72ef25f5aaec4354a";
+      };
+    }
+    {
+      name = "ipaddr.js___ipaddr.js_1.9.0.tgz";
+      path = fetchurl {
+        name = "ipaddr.js___ipaddr.js_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.0.tgz";
+        sha1 = "37df74e430a0e47550fe54a2defe30d8acd95f65";
+      };
+    }
+    {
+      name = "is_absolute_url___is_absolute_url_3.0.3.tgz";
+      path = fetchurl {
+        name = "is_absolute_url___is_absolute_url_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz";
+        sha1 = "96c6a22b6a23929b11ea0afb1836c36ad4a5d698";
+      };
+    }
+    {
+      name = "is_accessor_descriptor___is_accessor_descriptor_0.1.6.tgz";
+      path = fetchurl {
+        name = "is_accessor_descriptor___is_accessor_descriptor_0.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz";
+        sha1 = "a9e12cb3ae8d876727eeef3843f8a0897b5c98d6";
+      };
+    }
+    {
+      name = "is_accessor_descriptor___is_accessor_descriptor_1.0.0.tgz";
+      path = fetchurl {
+        name = "is_accessor_descriptor___is_accessor_descriptor_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz";
+        sha1 = "169c2f6d3df1f992618072365c9b0ea1f6878656";
+      };
+    }
+    {
+      name = "is_alphabetical___is_alphabetical_1.0.2.tgz";
+      path = fetchurl {
+        name = "is_alphabetical___is_alphabetical_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.2.tgz";
+        sha1 = "1fa6e49213cb7885b75d15862fb3f3d96c884f41";
+      };
+    }
+    {
+      name = "is_alphanumeric___is_alphanumeric_1.0.0.tgz";
+      path = fetchurl {
+        name = "is_alphanumeric___is_alphanumeric_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-alphanumeric/-/is-alphanumeric-1.0.0.tgz";
+        sha1 = "4a9cef71daf4c001c1d81d63d140cf53fd6889f4";
+      };
+    }
+    {
+      name = "is_alphanumerical___is_alphanumerical_1.0.2.tgz";
+      path = fetchurl {
+        name = "is_alphanumerical___is_alphanumerical_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.2.tgz";
+        sha1 = "1138e9ae5040158dc6ff76b820acd6b7a181fd40";
+      };
+    }
+    {
+      name = "is_arrayish___is_arrayish_0.2.1.tgz";
+      path = fetchurl {
+        name = "is_arrayish___is_arrayish_0.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz";
+        sha1 = "77c99840527aa8ecb1a8ba697b80645a7a926a9d";
+      };
+    }
+    {
+      name = "is_binary_path___is_binary_path_1.0.1.tgz";
+      path = fetchurl {
+        name = "is_binary_path___is_binary_path_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz";
+        sha1 = "75f16642b480f187a711c814161fd3a4a7655898";
+      };
+    }
+    {
+      name = "is_binary_path___is_binary_path_2.1.0.tgz";
+      path = fetchurl {
+        name = "is_binary_path___is_binary_path_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz";
+        sha1 = "ea1f7f3b80f064236e83470f86c09c254fb45b09";
+      };
+    }
+    {
+      name = "is_buffer___is_buffer_1.1.6.tgz";
+      path = fetchurl {
+        name = "is_buffer___is_buffer_1.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz";
+        sha1 = "efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be";
+      };
+    }
+    {
+      name = "is_buffer___is_buffer_2.0.3.tgz";
+      path = fetchurl {
+        name = "is_buffer___is_buffer_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.3.tgz";
+        sha1 = "4ecf3fcf749cbd1e472689e109ac66261a25e725";
+      };
+    }
+    {
+      name = "is_callable___is_callable_1.1.5.tgz";
+      path = fetchurl {
+        name = "is_callable___is_callable_1.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.5.tgz";
+        sha1 = "f7e46b596890456db74e7f6e976cb3273d06faab";
+      };
+    }
+    {
+      name = "is_ci___is_ci_1.2.1.tgz";
+      path = fetchurl {
+        name = "is_ci___is_ci_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-ci/-/is-ci-1.2.1.tgz";
+        sha1 = "e3779c8ee17fccf428488f6e281187f2e632841c";
+      };
+    }
+    {
+      name = "is_ci___is_ci_2.0.0.tgz";
+      path = fetchurl {
+        name = "is_ci___is_ci_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz";
+        sha1 = "6bc6334181810e04b5c22b3d589fdca55026404c";
+      };
+    }
+    {
+      name = "is_data_descriptor___is_data_descriptor_0.1.4.tgz";
+      path = fetchurl {
+        name = "is_data_descriptor___is_data_descriptor_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz";
+        sha1 = "0b5ee648388e2c860282e793f1856fec3f301b56";
+      };
+    }
+    {
+      name = "is_data_descriptor___is_data_descriptor_1.0.0.tgz";
+      path = fetchurl {
+        name = "is_data_descriptor___is_data_descriptor_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz";
+        sha1 = "d84876321d0e7add03990406abbbbd36ba9268c7";
+      };
+    }
+    {
+      name = "is_date_object___is_date_object_1.0.1.tgz";
+      path = fetchurl {
+        name = "is_date_object___is_date_object_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz";
+        sha1 = "9aa20eb6aeebbff77fbd33e74ca01b33581d3a16";
+      };
+    }
+    {
+      name = "is_decimal___is_decimal_1.0.2.tgz";
+      path = fetchurl {
+        name = "is_decimal___is_decimal_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.2.tgz";
+        sha1 = "894662d6a8709d307f3a276ca4339c8fa5dff0ff";
+      };
+    }
+    {
+      name = "is_descriptor___is_descriptor_0.1.6.tgz";
+      path = fetchurl {
+        name = "is_descriptor___is_descriptor_0.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz";
+        sha1 = "366d8240dde487ca51823b1ab9f07a10a78251ca";
+      };
+    }
+    {
+      name = "is_descriptor___is_descriptor_1.0.2.tgz";
+      path = fetchurl {
+        name = "is_descriptor___is_descriptor_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz";
+        sha1 = "3b159746a66604b04f8c81524ba365c5f14d86ec";
+      };
+    }
+    {
+      name = "is_directory___is_directory_0.3.1.tgz";
+      path = fetchurl {
+        name = "is_directory___is_directory_0.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz";
+        sha1 = "61339b6f2475fc772fd9c9d83f5c8575dc154ae1";
+      };
+    }
+    {
+      name = "is_extendable___is_extendable_0.1.1.tgz";
+      path = fetchurl {
+        name = "is_extendable___is_extendable_0.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz";
+        sha1 = "62b110e289a471418e3ec36a617d472e301dfc89";
+      };
+    }
+    {
+      name = "is_extendable___is_extendable_1.0.1.tgz";
+      path = fetchurl {
+        name = "is_extendable___is_extendable_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz";
+        sha1 = "a7470f9e426733d81bd81e1155264e3a3507cab4";
+      };
+    }
+    {
+      name = "is_extglob___is_extglob_2.1.1.tgz";
+      path = fetchurl {
+        name = "is_extglob___is_extglob_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz";
+        sha1 = "a88c02535791f02ed37c76a1b9ea9773c833f8c2";
+      };
+    }
+    {
+      name = "is_finite___is_finite_1.0.2.tgz";
+      path = fetchurl {
+        name = "is_finite___is_finite_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz";
+        sha1 = "cc6677695602be550ef11e8b4aa6305342b6d0aa";
+      };
+    }
+    {
+      name = "is_fullwidth_code_point___is_fullwidth_code_point_1.0.0.tgz";
+      path = fetchurl {
+        name = "is_fullwidth_code_point___is_fullwidth_code_point_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz";
+        sha1 = "ef9e31386f031a7f0d643af82fde50c457ef00cb";
+      };
+    }
+    {
+      name = "is_fullwidth_code_point___is_fullwidth_code_point_2.0.0.tgz";
+      path = fetchurl {
+        name = "is_fullwidth_code_point___is_fullwidth_code_point_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz";
+        sha1 = "a3b30a5c4f199183167aaab93beefae3ddfb654f";
+      };
+    }
+    {
+      name = "is_fullwidth_code_point___is_fullwidth_code_point_3.0.0.tgz";
+      path = fetchurl {
+        name = "is_fullwidth_code_point___is_fullwidth_code_point_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz";
+        sha1 = "f116f8064fe90b3f7844a38997c0b75051269f1d";
+      };
+    }
+    {
+      name = "is_generator_fn___is_generator_fn_2.1.0.tgz";
+      path = fetchurl {
+        name = "is_generator_fn___is_generator_fn_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz";
+        sha1 = "7d140adc389aaf3011a8f2a2a4cfa6faadffb118";
+      };
+    }
+    {
+      name = "is_glob___is_glob_3.1.0.tgz";
+      path = fetchurl {
+        name = "is_glob___is_glob_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz";
+        sha1 = "7ba5ae24217804ac70707b96922567486cc3e84a";
+      };
+    }
+    {
+      name = "is_glob___is_glob_4.0.1.tgz";
+      path = fetchurl {
+        name = "is_glob___is_glob_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz";
+        sha1 = "7567dbe9f2f5e2467bc77ab83c4a29482407a5dc";
+      };
+    }
+    {
+      name = "is_hexadecimal___is_hexadecimal_1.0.2.tgz";
+      path = fetchurl {
+        name = "is_hexadecimal___is_hexadecimal_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.2.tgz";
+        sha1 = "b6e710d7d07bb66b98cb8cece5c9b4921deeb835";
+      };
+    }
+    {
+      name = "is_installed_globally___is_installed_globally_0.1.0.tgz";
+      path = fetchurl {
+        name = "is_installed_globally___is_installed_globally_0.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.1.0.tgz";
+        sha1 = "0dfd98f5a9111716dd535dda6492f67bf3d25a80";
+      };
+    }
+    {
+      name = "is_npm___is_npm_1.0.0.tgz";
+      path = fetchurl {
+        name = "is_npm___is_npm_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-npm/-/is-npm-1.0.0.tgz";
+        sha1 = "f2fb63a65e4905b406c86072765a1a4dc793b9f4";
+      };
+    }
+    {
+      name = "is_number___is_number_3.0.0.tgz";
+      path = fetchurl {
+        name = "is_number___is_number_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz";
+        sha1 = "24fd6201a4782cf50561c810276afc7d12d71195";
+      };
+    }
+    {
+      name = "is_number___is_number_7.0.0.tgz";
+      path = fetchurl {
+        name = "is_number___is_number_7.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz";
+        sha1 = "7535345b896734d5f80c4d06c50955527a14f12b";
+      };
+    }
+    {
+      name = "is_obj___is_obj_1.0.1.tgz";
+      path = fetchurl {
+        name = "is_obj___is_obj_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz";
+        sha1 = "3e4729ac1f5fde025cd7d83a896dab9f4f67db0f";
+      };
+    }
+    {
+      name = "is_path_cwd___is_path_cwd_2.2.0.tgz";
+      path = fetchurl {
+        name = "is_path_cwd___is_path_cwd_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz";
+        sha1 = "67d43b82664a7b5191fd9119127eb300048a9fdb";
+      };
+    }
+    {
+      name = "is_path_in_cwd___is_path_in_cwd_2.1.0.tgz";
+      path = fetchurl {
+        name = "is_path_in_cwd___is_path_in_cwd_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz";
+        sha1 = "bfe2dca26c69f397265a4009963602935a053acb";
+      };
+    }
+    {
+      name = "is_path_inside___is_path_inside_1.0.0.tgz";
+      path = fetchurl {
+        name = "is_path_inside___is_path_inside_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.0.tgz";
+        sha1 = "fc06e5a1683fbda13de667aff717bbc10a48f37f";
+      };
+    }
+    {
+      name = "is_path_inside___is_path_inside_2.1.0.tgz";
+      path = fetchurl {
+        name = "is_path_inside___is_path_inside_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-2.1.0.tgz";
+        sha1 = "7c9810587d659a40d27bcdb4d5616eab059494b2";
+      };
+    }
+    {
+      name = "is_plain_obj___is_plain_obj_1.1.0.tgz";
+      path = fetchurl {
+        name = "is_plain_obj___is_plain_obj_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz";
+        sha1 = "71a50c8429dfca773c92a390a4a03b39fcd51d3e";
+      };
+    }
+    {
+      name = "is_plain_object___is_plain_object_2.0.4.tgz";
+      path = fetchurl {
+        name = "is_plain_object___is_plain_object_2.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz";
+        sha1 = "2c163b3fafb1b606d9d17928f05c2a1c38e07677";
+      };
+    }
+    {
+      name = "is_promise___is_promise_2.1.0.tgz";
+      path = fetchurl {
+        name = "is_promise___is_promise_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz";
+        sha1 = "79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa";
+      };
+    }
+    {
+      name = "is_redirect___is_redirect_1.0.0.tgz";
+      path = fetchurl {
+        name = "is_redirect___is_redirect_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz";
+        sha1 = "1d03dded53bd8db0f30c26e4f95d36fc7c87dc24";
+      };
+    }
+    {
+      name = "is_regex___is_regex_1.0.5.tgz";
+      path = fetchurl {
+        name = "is_regex___is_regex_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.5.tgz";
+        sha1 = "39d589a358bf18967f726967120b8fc1aed74eae";
+      };
+    }
+    {
+      name = "is_regexp___is_regexp_1.0.0.tgz";
+      path = fetchurl {
+        name = "is_regexp___is_regexp_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz";
+        sha1 = "fd2d883545c46bac5a633e7b9a09e87fa2cb5069";
+      };
+    }
+    {
+      name = "is_regexp___is_regexp_2.1.0.tgz";
+      path = fetchurl {
+        name = "is_regexp___is_regexp_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-regexp/-/is-regexp-2.1.0.tgz";
+        sha1 = "cd734a56864e23b956bf4e7c66c396a4c0b22c2d";
+      };
+    }
+    {
+      name = "is_retry_allowed___is_retry_allowed_1.1.0.tgz";
+      path = fetchurl {
+        name = "is_retry_allowed___is_retry_allowed_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz";
+        sha1 = "11a060568b67339444033d0125a61a20d564fb34";
+      };
+    }
+    {
+      name = "is_stream___is_stream_1.1.0.tgz";
+      path = fetchurl {
+        name = "is_stream___is_stream_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz";
+        sha1 = "12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44";
+      };
+    }
+    {
+      name = "is_symbol___is_symbol_1.0.2.tgz";
+      path = fetchurl {
+        name = "is_symbol___is_symbol_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz";
+        sha1 = "a055f6ae57192caee329e7a860118b497a950f38";
+      };
+    }
+    {
+      name = "is_typedarray___is_typedarray_1.0.0.tgz";
+      path = fetchurl {
+        name = "is_typedarray___is_typedarray_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz";
+        sha1 = "e479c80858df0c1b11ddda6940f96011fcda4a9a";
+      };
+    }
+    {
+      name = "is_utf8___is_utf8_0.2.1.tgz";
+      path = fetchurl {
+        name = "is_utf8___is_utf8_0.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz";
+        sha1 = "4b0da1442104d1b336340e80797e865cf39f7d72";
+      };
+    }
+    {
+      name = "is_whitespace_character___is_whitespace_character_1.0.2.tgz";
+      path = fetchurl {
+        name = "is_whitespace_character___is_whitespace_character_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-whitespace-character/-/is-whitespace-character-1.0.2.tgz";
+        sha1 = "ede53b4c6f6fb3874533751ec9280d01928d03ed";
+      };
+    }
+    {
+      name = "is_whitespace___is_whitespace_0.3.0.tgz";
+      path = fetchurl {
+        name = "is_whitespace___is_whitespace_0.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-whitespace/-/is-whitespace-0.3.0.tgz";
+        sha1 = "1639ecb1be036aec69a54cbb401cfbed7114ab7f";
+      };
+    }
+    {
+      name = "is_windows___is_windows_1.0.2.tgz";
+      path = fetchurl {
+        name = "is_windows___is_windows_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz";
+        sha1 = "d1850eb9791ecd18e6182ce12a30f396634bb19d";
+      };
+    }
+    {
+      name = "is_word_character___is_word_character_1.0.2.tgz";
+      path = fetchurl {
+        name = "is_word_character___is_word_character_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-word-character/-/is-word-character-1.0.2.tgz";
+        sha1 = "46a5dac3f2a1840898b91e576cd40d493f3ae553";
+      };
+    }
+    {
+      name = "is_wsl___is_wsl_1.1.0.tgz";
+      path = fetchurl {
+        name = "is_wsl___is_wsl_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz";
+        sha1 = "1f16e4aa22b04d1336b66188a66af3c600c3a66d";
+      };
+    }
+    {
+      name = "isarray___isarray_1.0.0.tgz";
+      path = fetchurl {
+        name = "isarray___isarray_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz";
+        sha1 = "bb935d48582cba168c06834957a54a3e07124f11";
+      };
+    }
+    {
+      name = "isarray___isarray_2.0.1.tgz";
+      path = fetchurl {
+        name = "isarray___isarray_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/isarray/-/isarray-2.0.1.tgz";
+        sha1 = "a37d94ed9cda2d59865c9f76fe596ee1f338741e";
+      };
+    }
+    {
+      name = "isbinaryfile___isbinaryfile_3.0.2.tgz";
+      path = fetchurl {
+        name = "isbinaryfile___isbinaryfile_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-3.0.2.tgz";
+        sha1 = "4a3e974ec0cba9004d3fc6cde7209ea69368a621";
+      };
+    }
+    {
+      name = "isexe___isexe_2.0.0.tgz";
+      path = fetchurl {
+        name = "isexe___isexe_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz";
+        sha1 = "e8fbf374dc556ff8947a10dcb0572d633f2cfa10";
+      };
+    }
+    {
+      name = "isobject___isobject_2.1.0.tgz";
+      path = fetchurl {
+        name = "isobject___isobject_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz";
+        sha1 = "f065561096a3f1da2ef46272f815c840d87e0c89";
+      };
+    }
+    {
+      name = "isobject___isobject_3.0.1.tgz";
+      path = fetchurl {
+        name = "isobject___isobject_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz";
+        sha1 = "4e431e92b11a9731636aa1f9c8d1ccbcfdab78df";
+      };
+    }
+    {
+      name = "isstream___isstream_0.1.2.tgz";
+      path = fetchurl {
+        name = "isstream___isstream_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz";
+        sha1 = "47e63f7af55afa6f92e1500e690eb8b8529c099a";
+      };
+    }
+    {
+      name = "istanbul_api___istanbul_api_2.1.6.tgz";
+      path = fetchurl {
+        name = "istanbul_api___istanbul_api_2.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-2.1.6.tgz";
+        sha1 = "d61702a9d1c66ad89d92e66d401e16b0bda4a35f";
+      };
+    }
+    {
+      name = "istanbul_lib_coverage___istanbul_lib_coverage_2.0.5.tgz";
+      path = fetchurl {
+        name = "istanbul_lib_coverage___istanbul_lib_coverage_2.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz";
+        sha1 = "675f0ab69503fad4b1d849f736baaca803344f49";
+      };
+    }
+    {
+      name = "istanbul_lib_coverage___istanbul_lib_coverage_3.0.0.tgz";
+      path = fetchurl {
+        name = "istanbul_lib_coverage___istanbul_lib_coverage_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz";
+        sha1 = "f5944a37c70b550b02a78a5c3b2055b280cec8ec";
+      };
+    }
+    {
+      name = "istanbul_lib_hook___istanbul_lib_hook_2.0.7.tgz";
+      path = fetchurl {
+        name = "istanbul_lib_hook___istanbul_lib_hook_2.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz";
+        sha1 = "c95695f383d4f8f60df1f04252a9550e15b5b133";
+      };
+    }
+    {
+      name = "istanbul_lib_instrument___istanbul_lib_instrument_3.3.0.tgz";
+      path = fetchurl {
+        name = "istanbul_lib_instrument___istanbul_lib_instrument_3.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz";
+        sha1 = "a5f63d91f0bbc0c3e479ef4c5de027335ec6d630";
+      };
+    }
+    {
+      name = "istanbul_lib_report___istanbul_lib_report_2.0.8.tgz";
+      path = fetchurl {
+        name = "istanbul_lib_report___istanbul_lib_report_2.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz";
+        sha1 = "5a8113cd746d43c4889eba36ab10e7d50c9b4f33";
+      };
+    }
+    {
+      name = "istanbul_lib_report___istanbul_lib_report_3.0.0.tgz";
+      path = fetchurl {
+        name = "istanbul_lib_report___istanbul_lib_report_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz";
+        sha1 = "7518fe52ea44de372f460a76b5ecda9ffb73d8a6";
+      };
+    }
+    {
+      name = "istanbul_lib_source_maps___istanbul_lib_source_maps_3.0.6.tgz";
+      path = fetchurl {
+        name = "istanbul_lib_source_maps___istanbul_lib_source_maps_3.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz";
+        sha1 = "284997c48211752ec486253da97e3879defba8c8";
+      };
+    }
+    {
+      name = "istanbul_reports___istanbul_reports_2.2.6.tgz";
+      path = fetchurl {
+        name = "istanbul_reports___istanbul_reports_2.2.6.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-2.2.6.tgz";
+        sha1 = "7b4f2660d82b29303a8fe6091f8ca4bf058da1af";
+      };
+    }
+    {
+      name = "istanbul_reports___istanbul_reports_3.0.0.tgz";
+      path = fetchurl {
+        name = "istanbul_reports___istanbul_reports_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.0.tgz";
+        sha1 = "d4d16d035db99581b6194e119bbf36c963c5eb70";
+      };
+    }
+    {
+      name = "istextorbinary___istextorbinary_2.2.1.tgz";
+      path = fetchurl {
+        name = "istextorbinary___istextorbinary_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/istextorbinary/-/istextorbinary-2.2.1.tgz";
+        sha1 = "a5231a08ef6dd22b268d0895084cf8d58b5bec53";
+      };
+    }
+    {
+      name = "iterall___iterall_1.2.2.tgz";
+      path = fetchurl {
+        name = "iterall___iterall_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/iterall/-/iterall-1.2.2.tgz";
+        sha1 = "92d70deb8028e0c39ff3164fdbf4d8b088130cd7";
+      };
+    }
+    {
+      name = "jasmine_core___jasmine_core_2.9.0.tgz";
+      path = fetchurl {
+        name = "jasmine_core___jasmine_core_2.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/jasmine-core/-/jasmine-core-2.9.0.tgz";
+        sha1 = "bfbb56defcd30789adec5a3fbba8504233289c72";
+      };
+    }
+    {
+      name = "jasmine_diff___jasmine_diff_0.1.3.tgz";
+      path = fetchurl {
+        name = "jasmine_diff___jasmine_diff_0.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jasmine-diff/-/jasmine-diff-0.1.3.tgz";
+        sha1 = "93ccc2dcc41028c5ddd4606558074839f2deeaa8";
+      };
+    }
+    {
+      name = "jasmine_jquery___jasmine_jquery_2.1.1.tgz";
+      path = fetchurl {
+        name = "jasmine_jquery___jasmine_jquery_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/jasmine-jquery/-/jasmine-jquery-2.1.1.tgz";
+        sha1 = "d4095e646944a26763235769ab018d9f30f0d47b";
+      };
+    }
+    {
+      name = "jed___jed_1.1.1.tgz";
+      path = fetchurl {
+        name = "jed___jed_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/jed/-/jed-1.1.1.tgz";
+        sha1 = "7a549bbd9ffe1585b0cd0a191e203055bee574b4";
+      };
+    }
+    {
+      name = "jest_canvas_mock___jest_canvas_mock_2.1.2.tgz";
+      path = fetchurl {
+        name = "jest_canvas_mock___jest_canvas_mock_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/jest-canvas-mock/-/jest-canvas-mock-2.1.2.tgz";
+        sha1 = "0d16c9f91534f773fd132fc289f2e6b6db8faa28";
+      };
+    }
+    {
+      name = "jest_changed_files___jest_changed_files_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_changed_files___jest_changed_files_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-24.8.0.tgz";
+        sha1 = "7e7eb21cf687587a85e50f3d249d1327e15b157b";
+      };
+    }
+    {
+      name = "jest_cli___jest_cli_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_cli___jest_cli_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-cli/-/jest-cli-24.8.0.tgz";
+        sha1 = "b075ac914492ed114fa338ade7362a301693e989";
+      };
+    }
+    {
+      name = "jest_config___jest_config_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_config___jest_config_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-config/-/jest-config-24.8.0.tgz";
+        sha1 = "77db3d265a6f726294687cbbccc36f8a76ee0f4f";
+      };
+    }
+    {
+      name = "jest_diff___jest_diff_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_diff___jest_diff_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-diff/-/jest-diff-24.8.0.tgz";
+        sha1 = "146435e7d1e3ffdf293d53ff97e193f1d1546172";
+      };
+    }
+    {
+      name = "jest_docblock___jest_docblock_24.3.0.tgz";
+      path = fetchurl {
+        name = "jest_docblock___jest_docblock_24.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-24.3.0.tgz";
+        sha1 = "b9c32dac70f72e4464520d2ba4aec02ab14db5dd";
+      };
+    }
+    {
+      name = "jest_each___jest_each_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_each___jest_each_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-each/-/jest-each-24.8.0.tgz";
+        sha1 = "a05fd2bf94ddc0b1da66c6d13ec2457f35e52775";
+      };
+    }
+    {
+      name = "jest_environment_jsdom___jest_environment_jsdom_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_environment_jsdom___jest_environment_jsdom_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-24.8.0.tgz";
+        sha1 = "300f6949a146cabe1c9357ad9e9ecf9f43f38857";
+      };
+    }
+    {
+      name = "jest_environment_node___jest_environment_node_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_environment_node___jest_environment_node_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-24.8.0.tgz";
+        sha1 = "d3f726ba8bc53087a60e7a84ca08883a4c892231";
+      };
+    }
+    {
+      name = "jest_get_type___jest_get_type_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_get_type___jest_get_type_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-24.8.0.tgz";
+        sha1 = "a7440de30b651f5a70ea3ed7ff073a32dfe646fc";
+      };
+    }
+    {
+      name = "jest_haste_map___jest_haste_map_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_haste_map___jest_haste_map_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-24.8.0.tgz";
+        sha1 = "51794182d877b3ddfd6e6d23920e3fe72f305800";
+      };
+    }
+    {
+      name = "jest_jasmine2___jest_jasmine2_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_jasmine2___jest_jasmine2_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-24.8.0.tgz";
+        sha1 = "a9c7e14c83dd77d8b15e820549ce8987cc8cd898";
+      };
+    }
+    {
+      name = "jest_junit___jest_junit_6.3.0.tgz";
+      path = fetchurl {
+        name = "jest_junit___jest_junit_6.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-junit/-/jest-junit-6.3.0.tgz";
+        sha1 = "99e64ebc54eddcb21238f0cc49f5820c89a8c785";
+      };
+    }
+    {
+      name = "jest_leak_detector___jest_leak_detector_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_leak_detector___jest_leak_detector_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-24.8.0.tgz";
+        sha1 = "c0086384e1f650c2d8348095df769f29b48e6980";
+      };
+    }
+    {
+      name = "jest_matcher_utils___jest_matcher_utils_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_matcher_utils___jest_matcher_utils_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-24.8.0.tgz";
+        sha1 = "2bce42204c9af12bde46f83dc839efe8be832495";
+      };
+    }
+    {
+      name = "jest_message_util___jest_message_util_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_message_util___jest_message_util_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-24.8.0.tgz";
+        sha1 = "0d6891e72a4beacc0292b638685df42e28d6218b";
+      };
+    }
+    {
+      name = "jest_mock___jest_mock_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_mock___jest_mock_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-mock/-/jest-mock-24.8.0.tgz";
+        sha1 = "2f9d14d37699e863f1febf4e4d5a33b7fdbbde56";
+      };
+    }
+    {
+      name = "jest_pnp_resolver___jest_pnp_resolver_1.2.1.tgz";
+      path = fetchurl {
+        name = "jest_pnp_resolver___jest_pnp_resolver_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz";
+        sha1 = "ecdae604c077a7fbc70defb6d517c3c1c898923a";
+      };
+    }
+    {
+      name = "jest_regex_util___jest_regex_util_24.3.0.tgz";
+      path = fetchurl {
+        name = "jest_regex_util___jest_regex_util_24.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-24.3.0.tgz";
+        sha1 = "d5a65f60be1ae3e310d5214a0307581995227b36";
+      };
+    }
+    {
+      name = "jest_resolve_dependencies___jest_resolve_dependencies_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_resolve_dependencies___jest_resolve_dependencies_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-24.8.0.tgz";
+        sha1 = "19eec3241f2045d3f990dba331d0d7526acff8e0";
+      };
+    }
+    {
+      name = "jest_resolve___jest_resolve_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_resolve___jest_resolve_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-24.8.0.tgz";
+        sha1 = "84b8e5408c1f6a11539793e2b5feb1b6e722439f";
+      };
+    }
+    {
+      name = "jest_runner___jest_runner_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_runner___jest_runner_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-runner/-/jest-runner-24.8.0.tgz";
+        sha1 = "4f9ae07b767db27b740d7deffad0cf67ccb4c5bb";
+      };
+    }
+    {
+      name = "jest_runtime___jest_runtime_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_runtime___jest_runtime_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-24.8.0.tgz";
+        sha1 = "05f94d5b05c21f6dc54e427cd2e4980923350620";
+      };
+    }
+    {
+      name = "jest_serializer___jest_serializer_24.4.0.tgz";
+      path = fetchurl {
+        name = "jest_serializer___jest_serializer_24.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-24.4.0.tgz";
+        sha1 = "f70c5918c8ea9235ccb1276d232e459080588db3";
+      };
+    }
+    {
+      name = "jest_snapshot___jest_snapshot_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_snapshot___jest_snapshot_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-24.8.0.tgz";
+        sha1 = "3bec6a59da2ff7bc7d097a853fb67f9d415cb7c6";
+      };
+    }
+    {
+      name = "jest_transform_graphql___jest_transform_graphql_2.1.0.tgz";
+      path = fetchurl {
+        name = "jest_transform_graphql___jest_transform_graphql_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-transform-graphql/-/jest-transform-graphql-2.1.0.tgz";
+        sha1 = "903cb66bb27bc2772fd3e5dd4f7e9b57230f5829";
+      };
+    }
+    {
+      name = "jest_util___jest_util_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_util___jest_util_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-util/-/jest-util-24.8.0.tgz";
+        sha1 = "41f0e945da11df44cc76d64ffb915d0716f46cd1";
+      };
+    }
+    {
+      name = "jest_validate___jest_validate_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_validate___jest_validate_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-validate/-/jest-validate-24.8.0.tgz";
+        sha1 = "624c41533e6dfe356ffadc6e2423a35c2d3b4849";
+      };
+    }
+    {
+      name = "jest_watcher___jest_watcher_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest_watcher___jest_watcher_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-24.8.0.tgz";
+        sha1 = "58d49915ceddd2de85e238f6213cef1c93715de4";
+      };
+    }
+    {
+      name = "jest_worker___jest_worker_24.6.0.tgz";
+      path = fetchurl {
+        name = "jest_worker___jest_worker_24.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.6.0.tgz";
+        sha1 = "7f81ceae34b7cde0c9827a6980c35b7cdc0161b3";
+      };
+    }
+    {
+      name = "jest___jest_24.8.0.tgz";
+      path = fetchurl {
+        name = "jest___jest_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest/-/jest-24.8.0.tgz";
+        sha1 = "d5dff1984d0d1002196e9b7f12f75af1b2809081";
+      };
+    }
+    {
+      name = "jmespath___jmespath_0.15.0.tgz";
+      path = fetchurl {
+        name = "jmespath___jmespath_0.15.0.tgz";
+        url  = "https://registry.yarnpkg.com/jmespath/-/jmespath-0.15.0.tgz";
+        sha1 = "a3f222a9aae9f966f5d27c796510e28091764217";
+      };
+    }
+    {
+      name = "jquery_ujs___jquery_ujs_1.2.2.tgz";
+      path = fetchurl {
+        name = "jquery_ujs___jquery_ujs_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/jquery-ujs/-/jquery-ujs-1.2.2.tgz";
+        sha1 = "6a8ef1020e6b6dda385b90a4bddc128c21c56397";
+      };
+    }
+    {
+      name = "jquery.caret___jquery.caret_0.3.1.tgz";
+      path = fetchurl {
+        name = "jquery.caret___jquery.caret_0.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/jquery.caret/-/jquery.caret-0.3.1.tgz";
+        sha1 = "9c093318faf327eff322e826ca9f3241368bc7b8";
+      };
+    }
+    {
+      name = "jquery.waitforimages___jquery.waitforimages_2.2.0.tgz";
+      path = fetchurl {
+        name = "jquery.waitforimages___jquery.waitforimages_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/jquery.waitforimages/-/jquery.waitforimages-2.2.0.tgz";
+        sha1 = "63f23131055a1b060dc913e6d874bcc9b9e6b16b";
+      };
+    }
+    {
+      name = "jquery___jquery_3.4.1.tgz";
+      path = fetchurl {
+        name = "jquery___jquery_3.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/jquery/-/jquery-3.4.1.tgz";
+        sha1 = "714f1f8d9dde4bdfa55764ba37ef214630d80ef2";
+      };
+    }
+    {
+      name = "js_base64___js_base64_2.5.1.tgz";
+      path = fetchurl {
+        name = "js_base64___js_base64_2.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/js-base64/-/js-base64-2.5.1.tgz";
+        sha1 = "1efa39ef2c5f7980bb1784ade4a8af2de3291121";
+      };
+    }
+    {
+      name = "js_beautify___js_beautify_1.10.3.tgz";
+      path = fetchurl {
+        name = "js_beautify___js_beautify_1.10.3.tgz";
+        url  = "https://registry.yarnpkg.com/js-beautify/-/js-beautify-1.10.3.tgz";
+        sha1 = "c73fa10cf69d3dfa52d8ed624f23c64c0a6a94c1";
+      };
+    }
+    {
+      name = "js_cookie___js_cookie_2.2.1.tgz";
+      path = fetchurl {
+        name = "js_cookie___js_cookie_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/js-cookie/-/js-cookie-2.2.1.tgz";
+        sha1 = "69e106dc5d5806894562902aa5baec3744e9b2b8";
+      };
+    }
+    {
+      name = "js_tokens___js_tokens_4.0.0.tgz";
+      path = fetchurl {
+        name = "js_tokens___js_tokens_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz";
+        sha1 = "19203fb59991df98e3a287050d4647cdeaf32499";
+      };
+    }
+    {
+      name = "js_yaml___js_yaml_3.13.1.tgz";
+      path = fetchurl {
+        name = "js_yaml___js_yaml_3.13.1.tgz";
+        url  = "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz";
+        sha1 = "aff151b30bfdfa8e49e05da22e7415e9dfa37847";
+      };
+    }
+    {
+      name = "js2xmlparser___js2xmlparser_3.0.0.tgz";
+      path = fetchurl {
+        name = "js2xmlparser___js2xmlparser_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/js2xmlparser/-/js2xmlparser-3.0.0.tgz";
+        sha1 = "3fb60eaa089c5440f9319f51760ccd07e2499733";
+      };
+    }
+    {
+      name = "jsbn___jsbn_0.1.1.tgz";
+      path = fetchurl {
+        name = "jsbn___jsbn_0.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz";
+        sha1 = "a5e654c2e5a2deb5f201d96cefbca80c0ef2f513";
+      };
+    }
+    {
+      name = "jsdoc_vue___jsdoc_vue_1.0.0.tgz";
+      path = fetchurl {
+        name = "jsdoc_vue___jsdoc_vue_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/jsdoc-vue/-/jsdoc-vue-1.0.0.tgz";
+        sha1 = "ff3ac1ba6bc4a74079bb79058a7bf0066e346235";
+      };
+    }
+    {
+      name = "jsdoc___jsdoc_3.5.5.tgz";
+      path = fetchurl {
+        name = "jsdoc___jsdoc_3.5.5.tgz";
+        url  = "https://registry.yarnpkg.com/jsdoc/-/jsdoc-3.5.5.tgz";
+        sha1 = "484521b126e81904d632ff83ec9aaa096708fa4d";
+      };
+    }
+    {
+      name = "jsdom___jsdom_11.12.0.tgz";
+      path = fetchurl {
+        name = "jsdom___jsdom_11.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/jsdom/-/jsdom-11.12.0.tgz";
+        sha1 = "1a80d40ddd378a1de59656e9e6dc5a3ba8657bc8";
+      };
+    }
+    {
+      name = "jsesc___jsesc_2.5.2.tgz";
+      path = fetchurl {
+        name = "jsesc___jsesc_2.5.2.tgz";
+        url  = "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz";
+        sha1 = "80564d2e483dacf6e8ef209650a67df3f0c283a4";
+      };
+    }
+    {
+      name = "jsesc___jsesc_0.5.0.tgz";
+      path = fetchurl {
+        name = "jsesc___jsesc_0.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz";
+        sha1 = "e7dee66e35d6fc16f710fe91d5cf69f70f08911d";
+      };
+    }
+    {
+      name = "json_parse_better_errors___json_parse_better_errors_1.0.2.tgz";
+      path = fetchurl {
+        name = "json_parse_better_errors___json_parse_better_errors_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz";
+        sha1 = "bb867cfb3450e69107c131d1c514bab3dc8bcaa9";
+      };
+    }
+    {
+      name = "json_schema_traverse___json_schema_traverse_0.4.1.tgz";
+      path = fetchurl {
+        name = "json_schema_traverse___json_schema_traverse_0.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz";
+        sha1 = "69f6a87d9513ab8bb8fe63bdb0979c448e684660";
+      };
+    }
+    {
+      name = "json_schema___json_schema_0.2.3.tgz";
+      path = fetchurl {
+        name = "json_schema___json_schema_0.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz";
+        sha1 = "b480c892e59a2f05954ce727bd3f2a4e882f9e13";
+      };
+    }
+    {
+      name = "json_stable_stringify_without_jsonify___json_stable_stringify_without_jsonify_1.0.1.tgz";
+      path = fetchurl {
+        name = "json_stable_stringify_without_jsonify___json_stable_stringify_without_jsonify_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz";
+        sha1 = "9db7b59496ad3f3cfef30a75142d2d930ad72651";
+      };
+    }
+    {
+      name = "json_stringify_safe___json_stringify_safe_5.0.1.tgz";
+      path = fetchurl {
+        name = "json_stringify_safe___json_stringify_safe_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz";
+        sha1 = "1296a2d58fd45f19a0f6ce01d65701e2c735b6eb";
+      };
+    }
+    {
+      name = "json3___json3_3.3.2.tgz";
+      path = fetchurl {
+        name = "json3___json3_3.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz";
+        sha1 = "3c0434743df93e2f5c42aee7b19bcb483575f4e1";
+      };
+    }
+    {
+      name = "json5___json5_2.1.0.tgz";
+      path = fetchurl {
+        name = "json5___json5_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/json5/-/json5-2.1.0.tgz";
+        sha1 = "e7a0c62c48285c628d20a10b85c89bb807c32850";
+      };
+    }
+    {
+      name = "json5___json5_1.0.1.tgz";
+      path = fetchurl {
+        name = "json5___json5_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz";
+        sha1 = "779fb0018604fa854eacbf6252180d83543e3dbe";
+      };
+    }
+    {
+      name = "jsonfile___jsonfile_4.0.0.tgz";
+      path = fetchurl {
+        name = "jsonfile___jsonfile_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz";
+        sha1 = "8771aae0799b64076b76640fca058f9c10e33ecb";
+      };
+    }
+    {
+      name = "jsprim___jsprim_1.4.1.tgz";
+      path = fetchurl {
+        name = "jsprim___jsprim_1.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz";
+        sha1 = "313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2";
+      };
+    }
+    {
+      name = "jszip_utils___jszip_utils_0.0.2.tgz";
+      path = fetchurl {
+        name = "jszip_utils___jszip_utils_0.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/jszip-utils/-/jszip-utils-0.0.2.tgz";
+        sha1 = "457d5cbca60a1c2e0706e9da2b544e8e7bc50bf8";
+      };
+    }
+    {
+      name = "jszip___jszip_3.1.3.tgz";
+      path = fetchurl {
+        name = "jszip___jszip_3.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/jszip/-/jszip-3.1.3.tgz";
+        sha1 = "8a920403b2b1651c0fc126be90192d9080957c37";
+      };
+    }
+    {
+      name = "karma_chrome_launcher___karma_chrome_launcher_3.0.0.tgz";
+      path = fetchurl {
+        name = "karma_chrome_launcher___karma_chrome_launcher_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/karma-chrome-launcher/-/karma-chrome-launcher-3.0.0.tgz";
+        sha1 = "5c3a7f877a304e90781c28fcd9a49e334a890f42";
+      };
+    }
+    {
+      name = "karma_coverage_istanbul_reporter___karma_coverage_istanbul_reporter_2.1.0.tgz";
+      path = fetchurl {
+        name = "karma_coverage_istanbul_reporter___karma_coverage_istanbul_reporter_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-2.1.0.tgz";
+        sha1 = "5f1bcc13c5e14ee1d91821ee8946861674f54c75";
+      };
+    }
+    {
+      name = "karma_jasmine___karma_jasmine_1.1.2.tgz";
+      path = fetchurl {
+        name = "karma_jasmine___karma_jasmine_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/karma-jasmine/-/karma-jasmine-1.1.2.tgz";
+        sha1 = "394f2b25ffb4a644b9ada6f22d443e2fd08886c3";
+      };
+    }
+    {
+      name = "karma_junit_reporter___karma_junit_reporter_1.2.0.tgz";
+      path = fetchurl {
+        name = "karma_junit_reporter___karma_junit_reporter_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/karma-junit-reporter/-/karma-junit-reporter-1.2.0.tgz";
+        sha1 = "4f9c40cedfb1a395f8aef876abf96189917c6396";
+      };
+    }
+    {
+      name = "karma_mocha_reporter___karma_mocha_reporter_2.2.5.tgz";
+      path = fetchurl {
+        name = "karma_mocha_reporter___karma_mocha_reporter_2.2.5.tgz";
+        url  = "https://registry.yarnpkg.com/karma-mocha-reporter/-/karma-mocha-reporter-2.2.5.tgz";
+        sha1 = "15120095e8ed819186e47a0b012f3cd741895560";
+      };
+    }
+    {
+      name = "karma_sourcemap_loader___karma_sourcemap_loader_0.3.7.tgz";
+      path = fetchurl {
+        name = "karma_sourcemap_loader___karma_sourcemap_loader_0.3.7.tgz";
+        url  = "https://registry.yarnpkg.com/karma-sourcemap-loader/-/karma-sourcemap-loader-0.3.7.tgz";
+        sha1 = "91322c77f8f13d46fed062b042e1009d4c4505d8";
+      };
+    }
+    {
+      name = "karma_webpack___karma_webpack_4.0.2.tgz";
+      path = fetchurl {
+        name = "karma_webpack___karma_webpack_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/karma-webpack/-/karma-webpack-4.0.2.tgz";
+        sha1 = "23219bd95bdda853e3073d3874d34447c77bced0";
+      };
+    }
+    {
+      name = "karma___karma_4.2.0.tgz";
+      path = fetchurl {
+        name = "karma___karma_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/karma/-/karma-4.2.0.tgz";
+        sha1 = "27e88b310cde090d016980ff5444e3a239196fca";
+      };
+    }
+    {
+      name = "katex___katex_0.10.0.tgz";
+      path = fetchurl {
+        name = "katex___katex_0.10.0.tgz";
+        url  = "https://registry.yarnpkg.com/katex/-/katex-0.10.0.tgz";
+        sha1 = "da562e5d0d5cc3aa602e27af8a9b8710bfbce765";
+      };
+    }
+    {
+      name = "killable___killable_1.0.1.tgz";
+      path = fetchurl {
+        name = "killable___killable_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/killable/-/killable-1.0.1.tgz";
+        sha1 = "4c8ce441187a061c7474fb87ca08e2a638194892";
+      };
+    }
+    {
+      name = "kind_of___kind_of_3.2.2.tgz";
+      path = fetchurl {
+        name = "kind_of___kind_of_3.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz";
+        sha1 = "31ea21a734bab9bbb0f32466d893aea51e4a3c64";
+      };
+    }
+    {
+      name = "kind_of___kind_of_4.0.0.tgz";
+      path = fetchurl {
+        name = "kind_of___kind_of_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz";
+        sha1 = "20813df3d712928b207378691a45066fae72dd57";
+      };
+    }
+    {
+      name = "kind_of___kind_of_5.1.0.tgz";
+      path = fetchurl {
+        name = "kind_of___kind_of_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz";
+        sha1 = "729c91e2d857b7a419a1f9aa65685c4c33f5845d";
+      };
+    }
+    {
+      name = "kind_of___kind_of_6.0.2.tgz";
+      path = fetchurl {
+        name = "kind_of___kind_of_6.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz";
+        sha1 = "01146b36a6218e64e58f3a8d66de5d7fc6f6d051";
+      };
+    }
+    {
+      name = "klaw___klaw_2.0.0.tgz";
+      path = fetchurl {
+        name = "klaw___klaw_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/klaw/-/klaw-2.0.0.tgz";
+        sha1 = "59c128e0dc5ce410201151194eeb9cbf858650f6";
+      };
+    }
+    {
+      name = "kleur___kleur_3.0.3.tgz";
+      path = fetchurl {
+        name = "kleur___kleur_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz";
+        sha1 = "a79c9ecc86ee1ce3fa6206d1216c501f147fc07e";
+      };
+    }
+    {
+      name = "known_css_properties___known_css_properties_0.14.0.tgz";
+      path = fetchurl {
+        name = "known_css_properties___known_css_properties_0.14.0.tgz";
+        url  = "https://registry.yarnpkg.com/known-css-properties/-/known-css-properties-0.14.0.tgz";
+        sha1 = "d7032b4334a32dc22e6e46b081ec789daf18756c";
+      };
+    }
+    {
+      name = "latest_version___latest_version_3.1.0.tgz";
+      path = fetchurl {
+        name = "latest_version___latest_version_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/latest-version/-/latest-version-3.1.0.tgz";
+        sha1 = "a205383fea322b33b5ae3b18abee0dc2f356ee15";
+      };
+    }
+    {
+      name = "lcid___lcid_1.0.0.tgz";
+      path = fetchurl {
+        name = "lcid___lcid_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz";
+        sha1 = "308accafa0bc483a3867b4b6f2b9506251d1b835";
+      };
+    }
+    {
+      name = "lcid___lcid_2.0.0.tgz";
+      path = fetchurl {
+        name = "lcid___lcid_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz";
+        sha1 = "6ef5d2df60e52f82eb228a4c373e8d1f397253cf";
+      };
+    }
+    {
+      name = "left_pad___left_pad_1.3.0.tgz";
+      path = fetchurl {
+        name = "left_pad___left_pad_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/left-pad/-/left-pad-1.3.0.tgz";
+        sha1 = "5b8a3a7765dfe001261dde915589e782f8c94d1e";
+      };
+    }
+    {
+      name = "leven___leven_2.1.0.tgz";
+      path = fetchurl {
+        name = "leven___leven_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz";
+        sha1 = "c2e7a9f772094dee9d34202ae8acce4687875580";
+      };
+    }
+    {
+      name = "leven___leven_3.1.0.tgz";
+      path = fetchurl {
+        name = "leven___leven_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz";
+        sha1 = "77891de834064cccba82ae7842bb6b14a13ed7f2";
+      };
+    }
+    {
+      name = "levenary___levenary_1.1.1.tgz";
+      path = fetchurl {
+        name = "levenary___levenary_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/levenary/-/levenary-1.1.1.tgz";
+        sha1 = "842a9ee98d2075aa7faeedbe32679e9205f46f77";
+      };
+    }
+    {
+      name = "levn___levn_0.3.0.tgz";
+      path = fetchurl {
+        name = "levn___levn_0.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz";
+        sha1 = "3b09924edf9f083c0490fdd4c0bc4421e04764ee";
+      };
+    }
+    {
+      name = "lie___lie_3.1.1.tgz";
+      path = fetchurl {
+        name = "lie___lie_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/lie/-/lie-3.1.1.tgz";
+        sha1 = "9a436b2cc7746ca59de7a41fa469b3efb76bd87e";
+      };
+    }
+    {
+      name = "lightercollective___lightercollective_0.3.0.tgz";
+      path = fetchurl {
+        name = "lightercollective___lightercollective_0.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/lightercollective/-/lightercollective-0.3.0.tgz";
+        sha1 = "1f07638642ec645d70bdb69ab2777676f35a28f0";
+      };
+    }
+    {
+      name = "linkify_it___linkify_it_2.1.0.tgz";
+      path = fetchurl {
+        name = "linkify_it___linkify_it_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/linkify-it/-/linkify-it-2.1.0.tgz";
+        sha1 = "c4caf38a6cd7ac2212ef3c7d2bde30a91561f9db";
+      };
+    }
+    {
+      name = "load_json_file___load_json_file_1.1.0.tgz";
+      path = fetchurl {
+        name = "load_json_file___load_json_file_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz";
+        sha1 = "956905708d58b4bab4c2261b04f59f31c99374c0";
+      };
+    }
+    {
+      name = "load_json_file___load_json_file_2.0.0.tgz";
+      path = fetchurl {
+        name = "load_json_file___load_json_file_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz";
+        sha1 = "7947e42149af80d696cbf797bcaabcfe1fe29ca8";
+      };
+    }
+    {
+      name = "load_json_file___load_json_file_4.0.0.tgz";
+      path = fetchurl {
+        name = "load_json_file___load_json_file_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz";
+        sha1 = "2f5f45ab91e33216234fd53adab668eb4ec0993b";
+      };
+    }
+    {
+      name = "loader_runner___loader_runner_2.4.0.tgz";
+      path = fetchurl {
+        name = "loader_runner___loader_runner_2.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz";
+        sha1 = "ed47066bfe534d7e84c4c7b9998c2a75607d9357";
+      };
+    }
+    {
+      name = "loader_utils___loader_utils_1.2.3.tgz";
+      path = fetchurl {
+        name = "loader_utils___loader_utils_1.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.2.3.tgz";
+        sha1 = "1ff5dc6911c9f0a062531a4c04b609406108c2c7";
+      };
+    }
+    {
+      name = "loader_utils___loader_utils_1.4.0.tgz";
+      path = fetchurl {
+        name = "loader_utils___loader_utils_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.0.tgz";
+        sha1 = "c579b5e34cb34b1a74edc6c1fb36bfa371d5a613";
+      };
+    }
+    {
+      name = "locate_path___locate_path_2.0.0.tgz";
+      path = fetchurl {
+        name = "locate_path___locate_path_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz";
+        sha1 = "2b568b265eec944c6d9c0de9c3dbbbca0354cd8e";
+      };
+    }
+    {
+      name = "locate_path___locate_path_3.0.0.tgz";
+      path = fetchurl {
+        name = "locate_path___locate_path_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz";
+        sha1 = "dbec3b3ab759758071b58fe59fc41871af21400e";
+      };
+    }
+    {
+      name = "locate_path___locate_path_5.0.0.tgz";
+      path = fetchurl {
+        name = "locate_path___locate_path_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz";
+        sha1 = "1afba396afd676a6d42504d0a67a3a7eb9f62aa0";
+      };
+    }
+    {
+      name = "lodash.camelcase___lodash.camelcase_4.3.0.tgz";
+      path = fetchurl {
+        name = "lodash.camelcase___lodash.camelcase_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz";
+        sha1 = "b28aa6288a2b9fc651035c7711f65ab6190331a6";
+      };
+    }
+    {
+      name = "lodash.clonedeep___lodash.clonedeep_4.5.0.tgz";
+      path = fetchurl {
+        name = "lodash.clonedeep___lodash.clonedeep_4.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz";
+        sha1 = "e23f3f9c4f8fbdde872529c1071857a086e5ccef";
+      };
+    }
+    {
+      name = "lodash.differencewith___lodash.differencewith_4.5.0.tgz";
+      path = fetchurl {
+        name = "lodash.differencewith___lodash.differencewith_4.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.differencewith/-/lodash.differencewith-4.5.0.tgz";
+        sha1 = "bafafbc918b55154e179176a00bb0aefaac854b7";
+      };
+    }
+    {
+      name = "lodash.escaperegexp___lodash.escaperegexp_4.1.2.tgz";
+      path = fetchurl {
+        name = "lodash.escaperegexp___lodash.escaperegexp_4.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz";
+        sha1 = "64762c48618082518ac3df4ccf5d5886dae20347";
+      };
+    }
+    {
+      name = "lodash.flatten___lodash.flatten_4.4.0.tgz";
+      path = fetchurl {
+        name = "lodash.flatten___lodash.flatten_4.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz";
+        sha1 = "f31c22225a9632d2bbf8e4addbef240aa765a61f";
+      };
+    }
+    {
+      name = "lodash.isequal___lodash.isequal_4.5.0.tgz";
+      path = fetchurl {
+        name = "lodash.isequal___lodash.isequal_4.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz";
+        sha1 = "415c4478f2bcc30120c22ce10ed3226f7d3e18e0";
+      };
+    }
+    {
+      name = "lodash.isplainobject___lodash.isplainobject_4.0.6.tgz";
+      path = fetchurl {
+        name = "lodash.isplainobject___lodash.isplainobject_4.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz";
+        sha1 = "7c526a52d89b45c45cc690b88163be0497f550cb";
+      };
+    }
+    {
+      name = "lodash.isstring___lodash.isstring_4.0.1.tgz";
+      path = fetchurl {
+        name = "lodash.isstring___lodash.isstring_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz";
+        sha1 = "d527dfb5456eca7cc9bb95d5daeaf88ba54a5451";
+      };
+    }
+    {
+      name = "lodash.kebabcase___lodash.kebabcase_4.1.1.tgz";
+      path = fetchurl {
+        name = "lodash.kebabcase___lodash.kebabcase_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz";
+        sha1 = "8489b1cb0d29ff88195cceca448ff6d6cc295c36";
+      };
+    }
+    {
+      name = "lodash.mergewith___lodash.mergewith_4.6.2.tgz";
+      path = fetchurl {
+        name = "lodash.mergewith___lodash.mergewith_4.6.2.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz";
+        sha1 = "617121f89ac55f59047c7aec1ccd6654c6590f55";
+      };
+    }
+    {
+      name = "lodash.snakecase___lodash.snakecase_4.1.1.tgz";
+      path = fetchurl {
+        name = "lodash.snakecase___lodash.snakecase_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz";
+        sha1 = "39d714a35357147837aefd64b5dcbb16becd8f8d";
+      };
+    }
+    {
+      name = "lodash.sortby___lodash.sortby_4.7.0.tgz";
+      path = fetchurl {
+        name = "lodash.sortby___lodash.sortby_4.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz";
+        sha1 = "edd14c824e2cc9c1e0b0a1b42bb5210516a42438";
+      };
+    }
+    {
+      name = "lodash.upperfirst___lodash.upperfirst_4.3.1.tgz";
+      path = fetchurl {
+        name = "lodash.upperfirst___lodash.upperfirst_4.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz";
+        sha1 = "1365edf431480481ef0d1c68957a5ed99d49f7ce";
+      };
+    }
+    {
+      name = "lodash___lodash_4.17.15.tgz";
+      path = fetchurl {
+        name = "lodash___lodash_4.17.15.tgz";
+        url  = "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz";
+        sha1 = "b447f6670a0455bbfeedd11392eff330ea097548";
+      };
+    }
+    {
+      name = "log_symbols___log_symbols_2.2.0.tgz";
+      path = fetchurl {
+        name = "log_symbols___log_symbols_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz";
+        sha1 = "5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a";
+      };
+    }
+    {
+      name = "log_symbols___log_symbols_3.0.0.tgz";
+      path = fetchurl {
+        name = "log_symbols___log_symbols_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/log-symbols/-/log-symbols-3.0.0.tgz";
+        sha1 = "f3a08516a5dea893336a7dee14d18a1cfdab77c4";
+      };
+    }
+    {
+      name = "log4js___log4js_4.5.1.tgz";
+      path = fetchurl {
+        name = "log4js___log4js_4.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/log4js/-/log4js-4.5.1.tgz";
+        sha1 = "e543625e97d9e6f3e6e7c9fc196dd6ab2cae30b5";
+      };
+    }
+    {
+      name = "loglevel___loglevel_1.6.7.tgz";
+      path = fetchurl {
+        name = "loglevel___loglevel_1.6.7.tgz";
+        url  = "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.7.tgz";
+        sha1 = "b3e034233188c68b889f5b862415306f565e2c56";
+      };
+    }
+    {
+      name = "longest_streak___longest_streak_2.0.2.tgz";
+      path = fetchurl {
+        name = "longest_streak___longest_streak_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/longest-streak/-/longest-streak-2.0.2.tgz";
+        sha1 = "2421b6ba939a443bb9ffebf596585a50b4c38e2e";
+      };
+    }
+    {
+      name = "loose_envify___loose_envify_1.4.0.tgz";
+      path = fetchurl {
+        name = "loose_envify___loose_envify_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz";
+        sha1 = "71ee51fa7be4caec1a63839f7e682d8132d30caf";
+      };
+    }
+    {
+      name = "loud_rejection___loud_rejection_1.6.0.tgz";
+      path = fetchurl {
+        name = "loud_rejection___loud_rejection_1.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz";
+        sha1 = "5b46f80147edee578870f086d04821cf998e551f";
+      };
+    }
+    {
+      name = "lower_case___lower_case_1.1.4.tgz";
+      path = fetchurl {
+        name = "lower_case___lower_case_1.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz";
+        sha1 = "9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac";
+      };
+    }
+    {
+      name = "lowercase_keys___lowercase_keys_1.0.0.tgz";
+      path = fetchurl {
+        name = "lowercase_keys___lowercase_keys_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz";
+        sha1 = "4e3366b39e7f5457e35f1324bdf6f88d0bfc7306";
+      };
+    }
+    {
+      name = "lowlight___lowlight_1.11.0.tgz";
+      path = fetchurl {
+        name = "lowlight___lowlight_1.11.0.tgz";
+        url  = "https://registry.yarnpkg.com/lowlight/-/lowlight-1.11.0.tgz";
+        sha1 = "1304d83005126d4e8b1dc0f07981e9b689ec2efc";
+      };
+    }
+    {
+      name = "lru_cache___lru_cache_4.1.5.tgz";
+      path = fetchurl {
+        name = "lru_cache___lru_cache_4.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz";
+        sha1 = "8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd";
+      };
+    }
+    {
+      name = "lru_cache___lru_cache_5.1.1.tgz";
+      path = fetchurl {
+        name = "lru_cache___lru_cache_5.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz";
+        sha1 = "1da27e6710271947695daf6848e847f01d84b920";
+      };
+    }
+    {
+      name = "lz_string___lz_string_1.4.4.tgz";
+      path = fetchurl {
+        name = "lz_string___lz_string_1.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/lz-string/-/lz-string-1.4.4.tgz";
+        sha1 = "c0d8eaf36059f705796e1e344811cf4c498d3a26";
+      };
+    }
+    {
+      name = "make_dir___make_dir_1.3.0.tgz";
+      path = fetchurl {
+        name = "make_dir___make_dir_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz";
+        sha1 = "79c1033b80515bd6d24ec9933e860ca75ee27f0c";
+      };
+    }
+    {
+      name = "make_dir___make_dir_2.1.0.tgz";
+      path = fetchurl {
+        name = "make_dir___make_dir_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz";
+        sha1 = "5f0310e18b8be898cc07009295a30ae41e91e6f5";
+      };
+    }
+    {
+      name = "make_dir___make_dir_3.0.0.tgz";
+      path = fetchurl {
+        name = "make_dir___make_dir_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/make-dir/-/make-dir-3.0.0.tgz";
+        sha1 = "1b5f39f6b9270ed33f9f054c5c0f84304989f801";
+      };
+    }
+    {
+      name = "make_error___make_error_1.3.5.tgz";
+      path = fetchurl {
+        name = "make_error___make_error_1.3.5.tgz";
+        url  = "https://registry.yarnpkg.com/make-error/-/make-error-1.3.5.tgz";
+        sha1 = "efe4e81f6db28cadd605c70f29c831b58ef776c8";
+      };
+    }
+    {
+      name = "makeerror___makeerror_1.0.11.tgz";
+      path = fetchurl {
+        name = "makeerror___makeerror_1.0.11.tgz";
+        url  = "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz";
+        sha1 = "e01a5c9109f2af79660e4e8b9587790184f5a96c";
+      };
+    }
+    {
+      name = "mamacro___mamacro_0.0.3.tgz";
+      path = fetchurl {
+        name = "mamacro___mamacro_0.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/mamacro/-/mamacro-0.0.3.tgz";
+        sha1 = "ad2c9576197c9f1abf308d0787865bd975a3f3e4";
+      };
+    }
+    {
+      name = "map_age_cleaner___map_age_cleaner_0.1.3.tgz";
+      path = fetchurl {
+        name = "map_age_cleaner___map_age_cleaner_0.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz";
+        sha1 = "7d583a7306434c055fe474b0f45078e6e1b4b92a";
+      };
+    }
+    {
+      name = "map_cache___map_cache_0.2.2.tgz";
+      path = fetchurl {
+        name = "map_cache___map_cache_0.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz";
+        sha1 = "c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf";
+      };
+    }
+    {
+      name = "map_obj___map_obj_1.0.1.tgz";
+      path = fetchurl {
+        name = "map_obj___map_obj_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz";
+        sha1 = "d933ceb9205d82bdcf4886f6742bdc2b4dea146d";
+      };
+    }
+    {
+      name = "map_obj___map_obj_2.0.0.tgz";
+      path = fetchurl {
+        name = "map_obj___map_obj_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/map-obj/-/map-obj-2.0.0.tgz";
+        sha1 = "a65cd29087a92598b8791257a523e021222ac1f9";
+      };
+    }
+    {
+      name = "map_visit___map_visit_1.0.0.tgz";
+      path = fetchurl {
+        name = "map_visit___map_visit_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz";
+        sha1 = "ecdca8f13144e660f1b5bd41f12f3479d98dfb8f";
+      };
+    }
+    {
+      name = "markdown_escapes___markdown_escapes_1.0.2.tgz";
+      path = fetchurl {
+        name = "markdown_escapes___markdown_escapes_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/markdown-escapes/-/markdown-escapes-1.0.2.tgz";
+        sha1 = "e639cbde7b99c841c0bacc8a07982873b46d2122";
+      };
+    }
+    {
+      name = "markdown_it___markdown_it_9.0.1.tgz";
+      path = fetchurl {
+        name = "markdown_it___markdown_it_9.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/markdown-it/-/markdown-it-9.0.1.tgz";
+        sha1 = "aafe363c43718720b6575fd10625cde6e4ff2d47";
+      };
+    }
+    {
+      name = "markdown_it___markdown_it_8.4.2.tgz";
+      path = fetchurl {
+        name = "markdown_it___markdown_it_8.4.2.tgz";
+        url  = "https://registry.yarnpkg.com/markdown-it/-/markdown-it-8.4.2.tgz";
+        sha1 = "386f98998dc15a37722aa7722084f4020bdd9b54";
+      };
+    }
+    {
+      name = "markdown_table___markdown_table_1.1.2.tgz";
+      path = fetchurl {
+        name = "markdown_table___markdown_table_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/markdown-table/-/markdown-table-1.1.2.tgz";
+        sha1 = "c78db948fa879903a41bce522e3b96f801c63786";
+      };
+    }
+    {
+      name = "markdownlint_cli___markdownlint_cli_0.18.0.tgz";
+      path = fetchurl {
+        name = "markdownlint_cli___markdownlint_cli_0.18.0.tgz";
+        url  = "https://registry.yarnpkg.com/markdownlint-cli/-/markdownlint-cli-0.18.0.tgz";
+        sha1 = "bd1cee72739049d42dcea5f6db0c0f57c6eb8096";
+      };
+    }
+    {
+      name = "markdownlint___markdownlint_0.16.0.tgz";
+      path = fetchurl {
+        name = "markdownlint___markdownlint_0.16.0.tgz";
+        url  = "https://registry.yarnpkg.com/markdownlint/-/markdownlint-0.16.0.tgz";
+        sha1 = "69f73cc755a44231fbe5dc7c37a5909cedc0ac6e";
+      };
+    }
+    {
+      name = "marked___marked_0.3.19.tgz";
+      path = fetchurl {
+        name = "marked___marked_0.3.19.tgz";
+        url  = "https://registry.yarnpkg.com/marked/-/marked-0.3.19.tgz";
+        sha1 = "5d47f709c4c9fc3c216b6d46127280f40b39d790";
+      };
+    }
+    {
+      name = "mathml_tag_names___mathml_tag_names_2.1.1.tgz";
+      path = fetchurl {
+        name = "mathml_tag_names___mathml_tag_names_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/mathml-tag-names/-/mathml-tag-names-2.1.1.tgz";
+        sha1 = "6dff66c99d55ecf739ca53c492e626f1d12a33cc";
+      };
+    }
+    {
+      name = "md5.js___md5.js_1.3.4.tgz";
+      path = fetchurl {
+        name = "md5.js___md5.js_1.3.4.tgz";
+        url  = "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.4.tgz";
+        sha1 = "e9bdbde94a20a5ac18b04340fc5764d5b09d901d";
+      };
+    }
+    {
+      name = "md5___md5_2.2.1.tgz";
+      path = fetchurl {
+        name = "md5___md5_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/md5/-/md5-2.2.1.tgz";
+        sha1 = "53ab38d5fe3c8891ba465329ea23fac0540126f9";
+      };
+    }
+    {
+      name = "mdast_util_compact___mdast_util_compact_1.0.2.tgz";
+      path = fetchurl {
+        name = "mdast_util_compact___mdast_util_compact_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/mdast-util-compact/-/mdast-util-compact-1.0.2.tgz";
+        sha1 = "c12ebe16fffc84573d3e19767726de226e95f649";
+      };
+    }
+    {
+      name = "mdurl___mdurl_1.0.1.tgz";
+      path = fetchurl {
+        name = "mdurl___mdurl_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz";
+        sha1 = "fe85b2ec75a59037f2adfec100fd6c601761152e";
+      };
+    }
+    {
+      name = "media_typer___media_typer_0.3.0.tgz";
+      path = fetchurl {
+        name = "media_typer___media_typer_0.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz";
+        sha1 = "8710d7af0aa626f8fffa1ce00168545263255748";
+      };
+    }
+    {
+      name = "mem___mem_4.3.0.tgz";
+      path = fetchurl {
+        name = "mem___mem_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/mem/-/mem-4.3.0.tgz";
+        sha1 = "461af497bc4ae09608cdb2e60eefb69bff744178";
+      };
+    }
+    {
+      name = "memory_fs___memory_fs_0.2.0.tgz";
+      path = fetchurl {
+        name = "memory_fs___memory_fs_0.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.2.0.tgz";
+        sha1 = "f2bb25368bc121e391c2520de92969caee0a0290";
+      };
+    }
+    {
+      name = "memory_fs___memory_fs_0.4.1.tgz";
+      path = fetchurl {
+        name = "memory_fs___memory_fs_0.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz";
+        sha1 = "3a9a20b8462523e447cfbc7e8bb80ed667bfc552";
+      };
+    }
+    {
+      name = "meow___meow_3.7.0.tgz";
+      path = fetchurl {
+        name = "meow___meow_3.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz";
+        sha1 = "72cb668b425228290abbfa856892587308a801fb";
+      };
+    }
+    {
+      name = "meow___meow_5.0.0.tgz";
+      path = fetchurl {
+        name = "meow___meow_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/meow/-/meow-5.0.0.tgz";
+        sha1 = "dfc73d63a9afc714a5e371760eb5c88b91078aa4";
+      };
+    }
+    {
+      name = "merge_descriptors___merge_descriptors_1.0.1.tgz";
+      path = fetchurl {
+        name = "merge_descriptors___merge_descriptors_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz";
+        sha1 = "b00aaa556dd8b44568150ec9d1b953f3f90cbb61";
+      };
+    }
+    {
+      name = "merge_source_map___merge_source_map_1.1.0.tgz";
+      path = fetchurl {
+        name = "merge_source_map___merge_source_map_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/merge-source-map/-/merge-source-map-1.1.0.tgz";
+        sha1 = "2fdde7e6020939f70906a68f2d7ae685e4c8c646";
+      };
+    }
+    {
+      name = "merge_stream___merge_stream_1.0.1.tgz";
+      path = fetchurl {
+        name = "merge_stream___merge_stream_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/merge-stream/-/merge-stream-1.0.1.tgz";
+        sha1 = "4041202d508a342ba00174008df0c251b8c135e1";
+      };
+    }
+    {
+      name = "merge2___merge2_1.2.3.tgz";
+      path = fetchurl {
+        name = "merge2___merge2_1.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/merge2/-/merge2-1.2.3.tgz";
+        sha1 = "7ee99dbd69bb6481689253f018488a1b902b0ed5";
+      };
+    }
+    {
+      name = "mermaid___mermaid_8.4.8.tgz";
+      path = fetchurl {
+        name = "mermaid___mermaid_8.4.8.tgz";
+        url  = "https://registry.yarnpkg.com/mermaid/-/mermaid-8.4.8.tgz";
+        sha1 = "8adcfdbc505d6bca52df167cff690427c9727b60";
+      };
+    }
+    {
+      name = "methods___methods_1.1.2.tgz";
+      path = fetchurl {
+        name = "methods___methods_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz";
+        sha1 = "5529a4d67654134edcc5266656835b0f851afcee";
+      };
+    }
+    {
+      name = "micromatch___micromatch_3.1.10.tgz";
+      path = fetchurl {
+        name = "micromatch___micromatch_3.1.10.tgz";
+        url  = "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz";
+        sha1 = "70859bc95c9840952f359a068a3fc49f9ecfac23";
+      };
+    }
+    {
+      name = "micromatch___micromatch_4.0.2.tgz";
+      path = fetchurl {
+        name = "micromatch___micromatch_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz";
+        sha1 = "4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259";
+      };
+    }
+    {
+      name = "miller_rabin___miller_rabin_4.0.1.tgz";
+      path = fetchurl {
+        name = "miller_rabin___miller_rabin_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz";
+        sha1 = "f080351c865b0dc562a8462966daa53543c78a4d";
+      };
+    }
+    {
+      name = "mime_db___mime_db_1.40.0.tgz";
+      path = fetchurl {
+        name = "mime_db___mime_db_1.40.0.tgz";
+        url  = "https://registry.yarnpkg.com/mime-db/-/mime-db-1.40.0.tgz";
+        sha1 = "a65057e998db090f732a68f6c276d387d4126c32";
+      };
+    }
+    {
+      name = "mime_types___mime_types_2.1.24.tgz";
+      path = fetchurl {
+        name = "mime_types___mime_types_2.1.24.tgz";
+        url  = "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.24.tgz";
+        sha1 = "b6f8d0b3e951efb77dedeca194cff6d16f676f81";
+      };
+    }
+    {
+      name = "mime___mime_1.6.0.tgz";
+      path = fetchurl {
+        name = "mime___mime_1.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz";
+        sha1 = "32cd9e5c64553bd58d19a568af452acff04981b1";
+      };
+    }
+    {
+      name = "mime___mime_2.4.4.tgz";
+      path = fetchurl {
+        name = "mime___mime_2.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/mime/-/mime-2.4.4.tgz";
+        sha1 = "bd7b91135fc6b01cde3e9bae33d659b63d8857e5";
+      };
+    }
+    {
+      name = "mimic_fn___mimic_fn_2.1.0.tgz";
+      path = fetchurl {
+        name = "mimic_fn___mimic_fn_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz";
+        sha1 = "7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b";
+      };
+    }
+    {
+      name = "minify___minify_4.1.2.tgz";
+      path = fetchurl {
+        name = "minify___minify_4.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/minify/-/minify-4.1.2.tgz";
+        sha1 = "88755f4faa5f7ab6d0c64fdd659aa34ea658f180";
+      };
+    }
+    {
+      name = "minimalistic_assert___minimalistic_assert_1.0.0.tgz";
+      path = fetchurl {
+        name = "minimalistic_assert___minimalistic_assert_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz";
+        sha1 = "702be2dda6b37f4836bcb3f5db56641b64a1d3d3";
+      };
+    }
+    {
+      name = "minimalistic_crypto_utils___minimalistic_crypto_utils_1.0.1.tgz";
+      path = fetchurl {
+        name = "minimalistic_crypto_utils___minimalistic_crypto_utils_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz";
+        sha1 = "f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a";
+      };
+    }
+    {
+      name = "minimatch___minimatch_3.0.4.tgz";
+      path = fetchurl {
+        name = "minimatch___minimatch_3.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz";
+        sha1 = "5166e286457f03306064be5497e8dbb0c3d32083";
+      };
+    }
+    {
+      name = "minimist_options___minimist_options_3.0.2.tgz";
+      path = fetchurl {
+        name = "minimist_options___minimist_options_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/minimist-options/-/minimist-options-3.0.2.tgz";
+        sha1 = "fba4c8191339e13ecf4d61beb03f070103f3d954";
+      };
+    }
+    {
+      name = "minimist___minimist_0.0.8.tgz";
+      path = fetchurl {
+        name = "minimist___minimist_0.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz";
+        sha1 = "857fcabfc3397d2625b8228262e86aa7a011b05d";
+      };
+    }
+    {
+      name = "minimist___minimist_1.1.3.tgz";
+      path = fetchurl {
+        name = "minimist___minimist_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/minimist/-/minimist-1.1.3.tgz";
+        sha1 = "3bedfd91a92d39016fcfaa1c681e8faa1a1efda8";
+      };
+    }
+    {
+      name = "minimist___minimist_1.2.0.tgz";
+      path = fetchurl {
+        name = "minimist___minimist_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz";
+        sha1 = "a35008b20f41383eec1fb914f4cd5df79a264284";
+      };
+    }
+    {
+      name = "minipass_collect___minipass_collect_1.0.2.tgz";
+      path = fetchurl {
+        name = "minipass_collect___minipass_collect_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz";
+        sha1 = "22b813bf745dc6edba2576b940022ad6edc8c617";
+      };
+    }
+    {
+      name = "minipass_flush___minipass_flush_1.0.5.tgz";
+      path = fetchurl {
+        name = "minipass_flush___minipass_flush_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz";
+        sha1 = "82e7135d7e89a50ffe64610a787953c4c4cbb373";
+      };
+    }
+    {
+      name = "minipass_pipeline___minipass_pipeline_1.2.2.tgz";
+      path = fetchurl {
+        name = "minipass_pipeline___minipass_pipeline_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.2.tgz";
+        sha1 = "3dcb6bb4a546e32969c7ad710f2c79a86abba93a";
+      };
+    }
+    {
+      name = "minipass___minipass_2.3.5.tgz";
+      path = fetchurl {
+        name = "minipass___minipass_2.3.5.tgz";
+        url  = "https://registry.yarnpkg.com/minipass/-/minipass-2.3.5.tgz";
+        sha1 = "cacebe492022497f656b0f0f51e2682a9ed2d848";
+      };
+    }
+    {
+      name = "minipass___minipass_3.1.1.tgz";
+      path = fetchurl {
+        name = "minipass___minipass_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/minipass/-/minipass-3.1.1.tgz";
+        sha1 = "7607ce778472a185ad6d89082aa2070f79cedcd5";
+      };
+    }
+    {
+      name = "minizlib___minizlib_1.2.1.tgz";
+      path = fetchurl {
+        name = "minizlib___minizlib_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/minizlib/-/minizlib-1.2.1.tgz";
+        sha1 = "dd27ea6136243c7c880684e8672bb3a45fd9b614";
+      };
+    }
+    {
+      name = "mississippi___mississippi_3.0.0.tgz";
+      path = fetchurl {
+        name = "mississippi___mississippi_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz";
+        sha1 = "ea0a3291f97e0b5e8776b363d5f0a12d94c67022";
+      };
+    }
+    {
+      name = "mitt___mitt_1.2.0.tgz";
+      path = fetchurl {
+        name = "mitt___mitt_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/mitt/-/mitt-1.2.0.tgz";
+        sha1 = "cb24e6569c806e31bd4e3995787fe38a04fdf90d";
+      };
+    }
+    {
+      name = "mixin_deep___mixin_deep_1.3.2.tgz";
+      path = fetchurl {
+        name = "mixin_deep___mixin_deep_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz";
+        sha1 = "1120b43dc359a785dce65b55b82e257ccf479566";
+      };
+    }
+    {
+      name = "https___registry.npmjs.org_mkdirp___mkdirp_0.5.1.tgz";
+      path = fetchurl {
+        name = "https___registry.npmjs.org_mkdirp___mkdirp_0.5.1.tgz";
+        url  = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz";
+        sha1 = "30057438eac6cf7f8c4767f38648d6697d75c903";
+      };
+    }
+    {
+      name = "moment_mini___moment_mini_2.22.1.tgz";
+      path = fetchurl {
+        name = "moment_mini___moment_mini_2.22.1.tgz";
+        url  = "https://registry.yarnpkg.com/moment-mini/-/moment-mini-2.22.1.tgz";
+        sha1 = "bc32d73e43a4505070be6b53494b17623183420d";
+      };
+    }
+    {
+      name = "moment___moment_2.24.0.tgz";
+      path = fetchurl {
+        name = "moment___moment_2.24.0.tgz";
+        url  = "https://registry.yarnpkg.com/moment/-/moment-2.24.0.tgz";
+        sha1 = "0d055d53f5052aa653c9f6eb68bb5d12bf5c2b5b";
+      };
+    }
+    {
+      name = "monaco_editor_webpack_plugin___monaco_editor_webpack_plugin_1.7.0.tgz";
+      path = fetchurl {
+        name = "monaco_editor_webpack_plugin___monaco_editor_webpack_plugin_1.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/monaco-editor-webpack-plugin/-/monaco-editor-webpack-plugin-1.7.0.tgz";
+        sha1 = "920cbeecca25f15d70d568a7e11b0ba4daf1ae83";
+      };
+    }
+    {
+      name = "monaco_editor___monaco_editor_0.18.1.tgz";
+      path = fetchurl {
+        name = "monaco_editor___monaco_editor_0.18.1.tgz";
+        url  = "https://registry.yarnpkg.com/monaco-editor/-/monaco-editor-0.18.1.tgz";
+        sha1 = "ced7c305a23109875feeaf395a504b91f6358cfc";
+      };
+    }
+    {
+      name = "mousetrap___mousetrap_1.4.6.tgz";
+      path = fetchurl {
+        name = "mousetrap___mousetrap_1.4.6.tgz";
+        url  = "https://registry.yarnpkg.com/mousetrap/-/mousetrap-1.4.6.tgz";
+        sha1 = "eaca72e22e56d5b769b7555873b688c3332e390a";
+      };
+    }
+    {
+      name = "move_concurrently___move_concurrently_1.0.1.tgz";
+      path = fetchurl {
+        name = "move_concurrently___move_concurrently_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz";
+        sha1 = "be2c005fda32e0b29af1f05d7c4b33214c701f92";
+      };
+    }
+    {
+      name = "ms___ms_2.0.0.tgz";
+      path = fetchurl {
+        name = "ms___ms_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz";
+        sha1 = "5608aeadfc00be6c2901df5f9861788de0d597c8";
+      };
+    }
+    {
+      name = "ms___ms_2.1.1.tgz";
+      path = fetchurl {
+        name = "ms___ms_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz";
+        sha1 = "30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a";
+      };
+    }
+    {
+      name = "multicast_dns_service_types___multicast_dns_service_types_1.1.0.tgz";
+      path = fetchurl {
+        name = "multicast_dns_service_types___multicast_dns_service_types_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz";
+        sha1 = "899f11d9686e5e05cb91b35d5f0e63b773cfc901";
+      };
+    }
+    {
+      name = "multicast_dns___multicast_dns_6.1.1.tgz";
+      path = fetchurl {
+        name = "multicast_dns___multicast_dns_6.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.1.1.tgz";
+        sha1 = "6e7de86a570872ab17058adea7160bbeca814dde";
+      };
+    }
+    {
+      name = "mute_stream___mute_stream_0.0.8.tgz";
+      path = fetchurl {
+        name = "mute_stream___mute_stream_0.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz";
+        sha1 = "1630c42b2251ff81e2a283de96a5497ea92e5e0d";
+      };
+    }
+    {
+      name = "nan___nan_2.14.0.tgz";
+      path = fetchurl {
+        name = "nan___nan_2.14.0.tgz";
+        url  = "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz";
+        sha1 = "7818f722027b2459a86f0295d434d1fc2336c52c";
+      };
+    }
+    {
+      name = "nanomatch___nanomatch_1.2.13.tgz";
+      path = fetchurl {
+        name = "nanomatch___nanomatch_1.2.13.tgz";
+        url  = "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz";
+        sha1 = "b87a8aa4fc0de8fe6be88895b38983ff265bd119";
+      };
+    }
+    {
+      name = "natural_compare___natural_compare_1.4.0.tgz";
+      path = fetchurl {
+        name = "natural_compare___natural_compare_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz";
+        sha1 = "4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7";
+      };
+    }
+    {
+      name = "needle___needle_2.4.0.tgz";
+      path = fetchurl {
+        name = "needle___needle_2.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/needle/-/needle-2.4.0.tgz";
+        sha1 = "6833e74975c444642590e15a750288c5f939b57c";
+      };
+    }
+    {
+      name = "negotiator___negotiator_0.6.2.tgz";
+      path = fetchurl {
+        name = "negotiator___negotiator_0.6.2.tgz";
+        url  = "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz";
+        sha1 = "feacf7ccf525a77ae9634436a64883ffeca346fb";
+      };
+    }
+    {
+      name = "neo_async___neo_async_2.6.1.tgz";
+      path = fetchurl {
+        name = "neo_async___neo_async_2.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.1.tgz";
+        sha1 = "ac27ada66167fa8849a6addd837f6b189ad2081c";
+      };
+    }
+    {
+      name = "nice_try___nice_try_1.0.5.tgz";
+      path = fetchurl {
+        name = "nice_try___nice_try_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz";
+        sha1 = "a3378a7696ce7d223e88fc9b764bd7ef1089e366";
+      };
+    }
+    {
+      name = "no_case___no_case_2.3.2.tgz";
+      path = fetchurl {
+        name = "no_case___no_case_2.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/no-case/-/no-case-2.3.2.tgz";
+        sha1 = "60b813396be39b3f1288a4c1ed5d1e7d28b464ac";
+      };
+    }
+    {
+      name = "node_ensure___node_ensure_0.0.0.tgz";
+      path = fetchurl {
+        name = "node_ensure___node_ensure_0.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/node-ensure/-/node-ensure-0.0.0.tgz";
+        sha1 = "ecae764150de99861ec5c810fd5d096b183932a7";
+      };
+    }
+    {
+      name = "node_fetch___node_fetch_2.6.0.tgz";
+      path = fetchurl {
+        name = "node_fetch___node_fetch_2.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.0.tgz";
+        sha1 = "e633456386d4aa55863f676a7ab0daa8fdecb0fd";
+      };
+    }
+    {
+      name = "node_forge___node_forge_0.9.0.tgz";
+      path = fetchurl {
+        name = "node_forge___node_forge_0.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/node-forge/-/node-forge-0.9.0.tgz";
+        sha1 = "d624050edbb44874adca12bb9a52ec63cb782579";
+      };
+    }
+    {
+      name = "node_gyp___node_gyp_3.8.0.tgz";
+      path = fetchurl {
+        name = "node_gyp___node_gyp_3.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.8.0.tgz";
+        sha1 = "540304261c330e80d0d5edce253a68cb3964218c";
+      };
+    }
+    {
+      name = "node_int64___node_int64_0.4.0.tgz";
+      path = fetchurl {
+        name = "node_int64___node_int64_0.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz";
+        sha1 = "87a9065cdb355d3182d8f94ce11188b825c68a3b";
+      };
+    }
+    {
+      name = "node_libs_browser___node_libs_browser_2.2.1.tgz";
+      path = fetchurl {
+        name = "node_libs_browser___node_libs_browser_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.2.1.tgz";
+        sha1 = "b64f513d18338625f90346d27b0d235e631f6425";
+      };
+    }
+    {
+      name = "node_modules_regexp___node_modules_regexp_1.0.0.tgz";
+      path = fetchurl {
+        name = "node_modules_regexp___node_modules_regexp_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz";
+        sha1 = "8d9dbe28964a4ac5712e9131642107c71e90ec40";
+      };
+    }
+    {
+      name = "node_notifier___node_notifier_5.4.0.tgz";
+      path = fetchurl {
+        name = "node_notifier___node_notifier_5.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.4.0.tgz";
+        sha1 = "7b455fdce9f7de0c63538297354f3db468426e6a";
+      };
+    }
+    {
+      name = "node_pre_gyp___node_pre_gyp_0.12.0.tgz";
+      path = fetchurl {
+        name = "node_pre_gyp___node_pre_gyp_0.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz";
+        sha1 = "39ba4bb1439da030295f899e3b520b7785766149";
+      };
+    }
+    {
+      name = "node_releases___node_releases_1.1.50.tgz";
+      path = fetchurl {
+        name = "node_releases___node_releases_1.1.50.tgz";
+        url  = "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.50.tgz";
+        sha1 = "803c40d2c45db172d0410e4efec83aa8c6ad0592";
+      };
+    }
+    {
+      name = "node_sass___node_sass_4.12.0.tgz";
+      path = fetchurl {
+        name = "node_sass___node_sass_4.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/node-sass/-/node-sass-4.12.0.tgz";
+        sha1 = "0914f531932380114a30cc5fa4fa63233a25f017";
+      };
+    }
+    {
+      name = "nodemon___nodemon_1.18.9.tgz";
+      path = fetchurl {
+        name = "nodemon___nodemon_1.18.9.tgz";
+        url  = "https://registry.yarnpkg.com/nodemon/-/nodemon-1.18.9.tgz";
+        sha1 = "90b467efd3b3c81b9453380aeb2a2cba535d0ead";
+      };
+    }
+    {
+      name = "nopt___nopt_3.0.6.tgz";
+      path = fetchurl {
+        name = "nopt___nopt_3.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz";
+        sha1 = "c6465dbf08abcd4db359317f79ac68a646b28ff9";
+      };
+    }
+    {
+      name = "nopt___nopt_4.0.1.tgz";
+      path = fetchurl {
+        name = "nopt___nopt_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz";
+        sha1 = "d0d4685afd5415193c8c7505602d0d17cd64474d";
+      };
+    }
+    {
+      name = "nopt___nopt_1.0.10.tgz";
+      path = fetchurl {
+        name = "nopt___nopt_1.0.10.tgz";
+        url  = "https://registry.yarnpkg.com/nopt/-/nopt-1.0.10.tgz";
+        sha1 = "6ddd21bd2a31417b92727dd585f8a6f37608ebee";
+      };
+    }
+    {
+      name = "normalize_package_data___normalize_package_data_2.5.0.tgz";
+      path = fetchurl {
+        name = "normalize_package_data___normalize_package_data_2.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz";
+        sha1 = "e66db1838b200c1dfc233225d12cb36520e234a8";
+      };
+    }
+    {
+      name = "normalize_path___normalize_path_2.1.1.tgz";
+      path = fetchurl {
+        name = "normalize_path___normalize_path_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz";
+        sha1 = "1ab28b556e198363a8c1a6f7e6fa20137fe6aed9";
+      };
+    }
+    {
+      name = "normalize_path___normalize_path_3.0.0.tgz";
+      path = fetchurl {
+        name = "normalize_path___normalize_path_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz";
+        sha1 = "0dcd69ff23a1c9b11fd0978316644a0388216a65";
+      };
+    }
+    {
+      name = "normalize_range___normalize_range_0.1.2.tgz";
+      path = fetchurl {
+        name = "normalize_range___normalize_range_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz";
+        sha1 = "2d10c06bdfd312ea9777695a4d28439456b75942";
+      };
+    }
+    {
+      name = "normalize_selector___normalize_selector_0.2.0.tgz";
+      path = fetchurl {
+        name = "normalize_selector___normalize_selector_0.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-selector/-/normalize-selector-0.2.0.tgz";
+        sha1 = "d0b145eb691189c63a78d201dc4fdb1293ef0c03";
+      };
+    }
+    {
+      name = "npm_bundled___npm_bundled_1.0.6.tgz";
+      path = fetchurl {
+        name = "npm_bundled___npm_bundled_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.6.tgz";
+        sha1 = "e7ba9aadcef962bb61248f91721cd932b3fe6bdd";
+      };
+    }
+    {
+      name = "npm_packlist___npm_packlist_1.4.1.tgz";
+      path = fetchurl {
+        name = "npm_packlist___npm_packlist_1.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.1.tgz";
+        sha1 = "19064cdf988da80ea3cee45533879d90192bbfbc";
+      };
+    }
+    {
+      name = "npm_run_path___npm_run_path_2.0.2.tgz";
+      path = fetchurl {
+        name = "npm_run_path___npm_run_path_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz";
+        sha1 = "35a9232dfa35d7067b4cb2ddf2357b1871536c5f";
+      };
+    }
+    {
+      name = "npmlog___npmlog_4.1.2.tgz";
+      path = fetchurl {
+        name = "npmlog___npmlog_4.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz";
+        sha1 = "08a7f2a8bf734604779a9efa4ad5cc717abb954b";
+      };
+    }
+    {
+      name = "num2fraction___num2fraction_1.2.2.tgz";
+      path = fetchurl {
+        name = "num2fraction___num2fraction_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz";
+        sha1 = "6f682b6a027a4e9ddfa4564cd2589d1d4e669ede";
+      };
+    }
+    {
+      name = "number_is_nan___number_is_nan_1.0.1.tgz";
+      path = fetchurl {
+        name = "number_is_nan___number_is_nan_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz";
+        sha1 = "097b602b53422a522c1afb8790318336941a011d";
+      };
+    }
+    {
+      name = "nwsapi___nwsapi_2.0.9.tgz";
+      path = fetchurl {
+        name = "nwsapi___nwsapi_2.0.9.tgz";
+        url  = "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.0.9.tgz";
+        sha1 = "77ac0cdfdcad52b6a1151a84e73254edc33ed016";
+      };
+    }
+    {
+      name = "oauth_sign___oauth_sign_0.9.0.tgz";
+      path = fetchurl {
+        name = "oauth_sign___oauth_sign_0.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz";
+        sha1 = "47a7b016baa68b5fa0ecf3dee08a85c679ac6455";
+      };
+    }
+    {
+      name = "object_assign___object_assign_4.1.1.tgz";
+      path = fetchurl {
+        name = "object_assign___object_assign_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz";
+        sha1 = "2109adc7965887cfc05cbbd442cac8bfbb360863";
+      };
+    }
+    {
+      name = "object_component___object_component_0.0.3.tgz";
+      path = fetchurl {
+        name = "object_component___object_component_0.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/object-component/-/object-component-0.0.3.tgz";
+        sha1 = "f0c69aa50efc95b866c186f400a33769cb2f1291";
+      };
+    }
+    {
+      name = "object_copy___object_copy_0.1.0.tgz";
+      path = fetchurl {
+        name = "object_copy___object_copy_0.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz";
+        sha1 = "7e7d858b781bd7c991a41ba975ed3812754e998c";
+      };
+    }
+    {
+      name = "object_inspect___object_inspect_1.7.0.tgz";
+      path = fetchurl {
+        name = "object_inspect___object_inspect_1.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.7.0.tgz";
+        sha1 = "f4f6bd181ad77f006b5ece60bd0b6f398ff74a67";
+      };
+    }
+    {
+      name = "object_keys___object_keys_1.1.1.tgz";
+      path = fetchurl {
+        name = "object_keys___object_keys_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz";
+        sha1 = "1c47f272df277f3b1daf061677d9c82e2322c60e";
+      };
+    }
+    {
+      name = "object_visit___object_visit_1.0.1.tgz";
+      path = fetchurl {
+        name = "object_visit___object_visit_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz";
+        sha1 = "f79c4493af0c5377b59fe39d395e41042dd045bb";
+      };
+    }
+    {
+      name = "object.assign___object.assign_4.1.0.tgz";
+      path = fetchurl {
+        name = "object.assign___object.assign_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz";
+        sha1 = "968bf1100d7956bb3ca086f006f846b3bc4008da";
+      };
+    }
+    {
+      name = "object.entries___object.entries_1.1.1.tgz";
+      path = fetchurl {
+        name = "object.entries___object.entries_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.1.tgz";
+        sha1 = "ee1cf04153de02bb093fec33683900f57ce5399b";
+      };
+    }
+    {
+      name = "object.getownpropertydescriptors___object.getownpropertydescriptors_2.0.3.tgz";
+      path = fetchurl {
+        name = "object.getownpropertydescriptors___object.getownpropertydescriptors_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz";
+        sha1 = "8758c846f5b407adab0f236e0986f14b051caa16";
+      };
+    }
+    {
+      name = "object.pick___object.pick_1.3.0.tgz";
+      path = fetchurl {
+        name = "object.pick___object.pick_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz";
+        sha1 = "87a10ac4c1694bd2e1cbf53591a66141fb5dd747";
+      };
+    }
+    {
+      name = "object.values___object.values_1.1.0.tgz";
+      path = fetchurl {
+        name = "object.values___object.values_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/object.values/-/object.values-1.1.0.tgz";
+        sha1 = "bf6810ef5da3e5325790eaaa2be213ea84624da9";
+      };
+    }
+    {
+      name = "obuf___obuf_1.1.2.tgz";
+      path = fetchurl {
+        name = "obuf___obuf_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz";
+        sha1 = "09bea3343d41859ebd446292d11c9d4db619084e";
+      };
+    }
+    {
+      name = "on_finished___on_finished_2.3.0.tgz";
+      path = fetchurl {
+        name = "on_finished___on_finished_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz";
+        sha1 = "20f1336481b083cd75337992a16971aa2d906947";
+      };
+    }
+    {
+      name = "on_headers___on_headers_1.0.2.tgz";
+      path = fetchurl {
+        name = "on_headers___on_headers_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz";
+        sha1 = "772b0ae6aaa525c399e489adfad90c403eb3c28f";
+      };
+    }
+    {
+      name = "once___once_1.4.0.tgz";
+      path = fetchurl {
+        name = "once___once_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz";
+        sha1 = "583b1aa775961d4b113ac17d9c50baef9dd76bd1";
+      };
+    }
+    {
+      name = "onetime___onetime_5.1.0.tgz";
+      path = fetchurl {
+        name = "onetime___onetime_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/onetime/-/onetime-5.1.0.tgz";
+        sha1 = "fff0f3c91617fe62bb50189636e99ac8a6df7be5";
+      };
+    }
+    {
+      name = "opener___opener_1.5.1.tgz";
+      path = fetchurl {
+        name = "opener___opener_1.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/opener/-/opener-1.5.1.tgz";
+        sha1 = "6d2f0e77f1a0af0032aca716c2c1fbb8e7e8abed";
+      };
+    }
+    {
+      name = "opn___opn_5.5.0.tgz";
+      path = fetchurl {
+        name = "opn___opn_5.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/opn/-/opn-5.5.0.tgz";
+        sha1 = "fc7164fab56d235904c51c3b27da6758ca3b9bfc";
+      };
+    }
+    {
+      name = "optimism___optimism_0.10.3.tgz";
+      path = fetchurl {
+        name = "optimism___optimism_0.10.3.tgz";
+        url  = "https://registry.yarnpkg.com/optimism/-/optimism-0.10.3.tgz";
+        sha1 = "163268fdc741dea2fb50f300bedda80356445fd7";
+      };
+    }
+    {
+      name = "optimist___optimist_0.6.1.tgz";
+      path = fetchurl {
+        name = "optimist___optimist_0.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz";
+        sha1 = "da3ea74686fa21a19a111c326e90eb15a0196686";
+      };
+    }
+    {
+      name = "optionator___optionator_0.8.3.tgz";
+      path = fetchurl {
+        name = "optionator___optionator_0.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz";
+        sha1 = "84fa1d036fe9d3c7e21d99884b601167ec8fb495";
+      };
+    }
+    {
+      name = "orderedmap___orderedmap_1.0.0.tgz";
+      path = fetchurl {
+        name = "orderedmap___orderedmap_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/orderedmap/-/orderedmap-1.0.0.tgz";
+        sha1 = "d90fc2ba1ed085190907d601dec6e6a53f8d41ba";
+      };
+    }
+    {
+      name = "original___original_1.0.2.tgz";
+      path = fetchurl {
+        name = "original___original_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/original/-/original-1.0.2.tgz";
+        sha1 = "e442a61cffe1c5fd20a65f3261c26663b303f25f";
+      };
+    }
+    {
+      name = "os_browserify___os_browserify_0.3.0.tgz";
+      path = fetchurl {
+        name = "os_browserify___os_browserify_0.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz";
+        sha1 = "854373c7f5c2315914fc9bfc6bd8238fdda1ec27";
+      };
+    }
+    {
+      name = "os_homedir___os_homedir_1.0.2.tgz";
+      path = fetchurl {
+        name = "os_homedir___os_homedir_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz";
+        sha1 = "ffbc4988336e0e833de0c168c7ef152121aa7fb3";
+      };
+    }
+    {
+      name = "os_locale___os_locale_1.4.0.tgz";
+      path = fetchurl {
+        name = "os_locale___os_locale_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz";
+        sha1 = "20f9f17ae29ed345e8bde583b13d2009803c14d9";
+      };
+    }
+    {
+      name = "os_locale___os_locale_3.1.0.tgz";
+      path = fetchurl {
+        name = "os_locale___os_locale_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz";
+        sha1 = "a802a6ee17f24c10483ab9935719cef4ed16bf1a";
+      };
+    }
+    {
+      name = "os_tmpdir___os_tmpdir_1.0.2.tgz";
+      path = fetchurl {
+        name = "os_tmpdir___os_tmpdir_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz";
+        sha1 = "bbe67406c79aa85c5cfec766fe5734555dfa1274";
+      };
+    }
+    {
+      name = "osenv___osenv_0.1.5.tgz";
+      path = fetchurl {
+        name = "osenv___osenv_0.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz";
+        sha1 = "85cdfafaeb28e8677f416e287592b5f3f49ea410";
+      };
+    }
+    {
+      name = "p_defer___p_defer_1.0.0.tgz";
+      path = fetchurl {
+        name = "p_defer___p_defer_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz";
+        sha1 = "9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c";
+      };
+    }
+    {
+      name = "p_each_series___p_each_series_1.0.0.tgz";
+      path = fetchurl {
+        name = "p_each_series___p_each_series_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-each-series/-/p-each-series-1.0.0.tgz";
+        sha1 = "930f3d12dd1f50e7434457a22cd6f04ac6ad7f71";
+      };
+    }
+    {
+      name = "p_finally___p_finally_1.0.0.tgz";
+      path = fetchurl {
+        name = "p_finally___p_finally_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz";
+        sha1 = "3fbcfb15b899a44123b34b6dcc18b724336a2cae";
+      };
+    }
+    {
+      name = "p_is_promise___p_is_promise_2.1.0.tgz";
+      path = fetchurl {
+        name = "p_is_promise___p_is_promise_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz";
+        sha1 = "918cebaea248a62cf7ffab8e3bca8c5f882fc42e";
+      };
+    }
+    {
+      name = "p_limit___p_limit_1.2.0.tgz";
+      path = fetchurl {
+        name = "p_limit___p_limit_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-limit/-/p-limit-1.2.0.tgz";
+        sha1 = "0e92b6bedcb59f022c13d0f1949dc82d15909f1c";
+      };
+    }
+    {
+      name = "p_limit___p_limit_2.2.2.tgz";
+      path = fetchurl {
+        name = "p_limit___p_limit_2.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.2.tgz";
+        sha1 = "61279b67721f5287aa1c13a9a7fbbc48c9291b1e";
+      };
+    }
+    {
+      name = "p_locate___p_locate_2.0.0.tgz";
+      path = fetchurl {
+        name = "p_locate___p_locate_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz";
+        sha1 = "20a0103b222a70c8fd39cc2e580680f3dde5ec43";
+      };
+    }
+    {
+      name = "p_locate___p_locate_3.0.0.tgz";
+      path = fetchurl {
+        name = "p_locate___p_locate_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz";
+        sha1 = "322d69a05c0264b25997d9f40cd8a891ab0064a4";
+      };
+    }
+    {
+      name = "p_locate___p_locate_4.1.0.tgz";
+      path = fetchurl {
+        name = "p_locate___p_locate_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz";
+        sha1 = "a3428bb7088b3a60292f66919278b7c297ad4f07";
+      };
+    }
+    {
+      name = "p_map___p_map_2.1.0.tgz";
+      path = fetchurl {
+        name = "p_map___p_map_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz";
+        sha1 = "310928feef9c9ecc65b68b17693018a665cea175";
+      };
+    }
+    {
+      name = "p_map___p_map_3.0.0.tgz";
+      path = fetchurl {
+        name = "p_map___p_map_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-map/-/p-map-3.0.0.tgz";
+        sha1 = "d704d9af8a2ba684e2600d9a215983d4141a979d";
+      };
+    }
+    {
+      name = "p_reduce___p_reduce_1.0.0.tgz";
+      path = fetchurl {
+        name = "p_reduce___p_reduce_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-reduce/-/p-reduce-1.0.0.tgz";
+        sha1 = "18c2b0dd936a4690a529f8231f58a0fdb6a47dfa";
+      };
+    }
+    {
+      name = "p_retry___p_retry_3.0.1.tgz";
+      path = fetchurl {
+        name = "p_retry___p_retry_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/p-retry/-/p-retry-3.0.1.tgz";
+        sha1 = "316b4c8893e2c8dc1cfa891f406c4b422bebf328";
+      };
+    }
+    {
+      name = "p_try___p_try_1.0.0.tgz";
+      path = fetchurl {
+        name = "p_try___p_try_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz";
+        sha1 = "cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3";
+      };
+    }
+    {
+      name = "p_try___p_try_2.2.0.tgz";
+      path = fetchurl {
+        name = "p_try___p_try_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz";
+        sha1 = "cb2868540e313d61de58fafbe35ce9004d5540e6";
+      };
+    }
+    {
+      name = "package_json___package_json_4.0.1.tgz";
+      path = fetchurl {
+        name = "package_json___package_json_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/package-json/-/package-json-4.0.1.tgz";
+        sha1 = "8869a0401253661c4c4ca3da6c2121ed555f5eed";
+      };
+    }
+    {
+      name = "pako___pako_1.0.6.tgz";
+      path = fetchurl {
+        name = "pako___pako_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/pako/-/pako-1.0.6.tgz";
+        sha1 = "0101211baa70c4bca4a0f63f2206e97b7dfaf258";
+      };
+    }
+    {
+      name = "parallel_transform___parallel_transform_1.1.0.tgz";
+      path = fetchurl {
+        name = "parallel_transform___parallel_transform_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.1.0.tgz";
+        sha1 = "d410f065b05da23081fcd10f28854c29bda33b06";
+      };
+    }
+    {
+      name = "param_case___param_case_2.1.1.tgz";
+      path = fetchurl {
+        name = "param_case___param_case_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz";
+        sha1 = "df94fd8cf6531ecf75e6bef9a0858fbc72be2247";
+      };
+    }
+    {
+      name = "parent_module___parent_module_1.0.1.tgz";
+      path = fetchurl {
+        name = "parent_module___parent_module_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz";
+        sha1 = "691d2709e78c79fae3a156622452d00762caaaa2";
+      };
+    }
+    {
+      name = "parse_asn1___parse_asn1_5.1.0.tgz";
+      path = fetchurl {
+        name = "parse_asn1___parse_asn1_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.0.tgz";
+        sha1 = "37c4f9b7ed3ab65c74817b5f2480937fbf97c712";
+      };
+    }
+    {
+      name = "parse_color___parse_color_1.0.0.tgz";
+      path = fetchurl {
+        name = "parse_color___parse_color_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse-color/-/parse-color-1.0.0.tgz";
+        sha1 = "7b748b95a83f03f16a94f535e52d7f3d94658619";
+      };
+    }
+    {
+      name = "parse_entities___parse_entities_1.2.0.tgz";
+      path = fetchurl {
+        name = "parse_entities___parse_entities_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse-entities/-/parse-entities-1.2.0.tgz";
+        sha1 = "9deac087661b2e36814153cb78d7e54a4c5fd6f4";
+      };
+    }
+    {
+      name = "parse_json___parse_json_2.2.0.tgz";
+      path = fetchurl {
+        name = "parse_json___parse_json_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz";
+        sha1 = "f480f40434ef80741f8469099f8dea18f55a4dc9";
+      };
+    }
+    {
+      name = "parse_json___parse_json_4.0.0.tgz";
+      path = fetchurl {
+        name = "parse_json___parse_json_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz";
+        sha1 = "be35f5425be1f7f6c747184f98a788cb99477ee0";
+      };
+    }
+    {
+      name = "parse_passwd___parse_passwd_1.0.0.tgz";
+      path = fetchurl {
+        name = "parse_passwd___parse_passwd_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz";
+        sha1 = "6d5b934a456993b23d37f40a382d6f1666a8e5c6";
+      };
+    }
+    {
+      name = "parse5___parse5_4.0.0.tgz";
+      path = fetchurl {
+        name = "parse5___parse5_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz";
+        sha1 = "6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608";
+      };
+    }
+    {
+      name = "parse5___parse5_5.0.0.tgz";
+      path = fetchurl {
+        name = "parse5___parse5_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse5/-/parse5-5.0.0.tgz";
+        sha1 = "4d02710d44f3c3846197a11e205d4ef17842b81a";
+      };
+    }
+    {
+      name = "parseqs___parseqs_0.0.5.tgz";
+      path = fetchurl {
+        name = "parseqs___parseqs_0.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/parseqs/-/parseqs-0.0.5.tgz";
+        sha1 = "d5208a3738e46766e291ba2ea173684921a8b89d";
+      };
+    }
+    {
+      name = "parseuri___parseuri_0.0.5.tgz";
+      path = fetchurl {
+        name = "parseuri___parseuri_0.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/parseuri/-/parseuri-0.0.5.tgz";
+        sha1 = "80204a50d4dbb779bfdc6ebe2778d90e4bce320a";
+      };
+    }
+    {
+      name = "parseurl___parseurl_1.3.3.tgz";
+      path = fetchurl {
+        name = "parseurl___parseurl_1.3.3.tgz";
+        url  = "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz";
+        sha1 = "9da19e7bee8d12dff0513ed5b76957793bc2e8d4";
+      };
+    }
+    {
+      name = "pascalcase___pascalcase_0.1.1.tgz";
+      path = fetchurl {
+        name = "pascalcase___pascalcase_0.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz";
+        sha1 = "b363e55e8006ca6fe21784d2db22bd15d7917f14";
+      };
+    }
+    {
+      name = "path_browserify___path_browserify_0.0.1.tgz";
+      path = fetchurl {
+        name = "path_browserify___path_browserify_0.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.1.tgz";
+        sha1 = "e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a";
+      };
+    }
+    {
+      name = "path_dirname___path_dirname_1.0.2.tgz";
+      path = fetchurl {
+        name = "path_dirname___path_dirname_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz";
+        sha1 = "cc33d24d525e099a5388c0336c6e32b9160609e0";
+      };
+    }
+    {
+      name = "path_exists___path_exists_2.1.0.tgz";
+      path = fetchurl {
+        name = "path_exists___path_exists_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz";
+        sha1 = "0feb6c64f0fc518d9a754dd5efb62c7022761f4b";
+      };
+    }
+    {
+      name = "path_exists___path_exists_3.0.0.tgz";
+      path = fetchurl {
+        name = "path_exists___path_exists_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz";
+        sha1 = "ce0ebeaa5f78cb18925ea7d810d7b59b010fd515";
+      };
+    }
+    {
+      name = "path_exists___path_exists_4.0.0.tgz";
+      path = fetchurl {
+        name = "path_exists___path_exists_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz";
+        sha1 = "513bdbe2d3b95d7762e8c1137efa195c6c61b5b3";
+      };
+    }
+    {
+      name = "path_is_absolute___path_is_absolute_1.0.1.tgz";
+      path = fetchurl {
+        name = "path_is_absolute___path_is_absolute_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz";
+        sha1 = "174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f";
+      };
+    }
+    {
+      name = "path_is_inside___path_is_inside_1.0.2.tgz";
+      path = fetchurl {
+        name = "path_is_inside___path_is_inside_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz";
+        sha1 = "365417dede44430d1c11af61027facf074bdfc53";
+      };
+    }
+    {
+      name = "path_key___path_key_2.0.1.tgz";
+      path = fetchurl {
+        name = "path_key___path_key_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz";
+        sha1 = "411cadb574c5a140d3a4b1910d40d80cc9f40b40";
+      };
+    }
+    {
+      name = "path_parse___path_parse_1.0.6.tgz";
+      path = fetchurl {
+        name = "path_parse___path_parse_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz";
+        sha1 = "d62dbb5679405d72c4737ec58600e9ddcf06d24c";
+      };
+    }
+    {
+      name = "path_to_regexp___path_to_regexp_0.1.7.tgz";
+      path = fetchurl {
+        name = "path_to_regexp___path_to_regexp_0.1.7.tgz";
+        url  = "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz";
+        sha1 = "df604178005f522f15eb4490e7247a1bfaa67f8c";
+      };
+    }
+    {
+      name = "path_type___path_type_1.1.0.tgz";
+      path = fetchurl {
+        name = "path_type___path_type_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz";
+        sha1 = "59c44f7ee491da704da415da5a4070ba4f8fe441";
+      };
+    }
+    {
+      name = "path_type___path_type_2.0.0.tgz";
+      path = fetchurl {
+        name = "path_type___path_type_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz";
+        sha1 = "f012ccb8415b7096fc2daa1054c3d72389594c73";
+      };
+    }
+    {
+      name = "path_type___path_type_3.0.0.tgz";
+      path = fetchurl {
+        name = "path_type___path_type_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz";
+        sha1 = "cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f";
+      };
+    }
+    {
+      name = "pbkdf2___pbkdf2_3.0.14.tgz";
+      path = fetchurl {
+        name = "pbkdf2___pbkdf2_3.0.14.tgz";
+        url  = "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.14.tgz";
+        sha1 = "a35e13c64799b06ce15320f459c230e68e73bade";
+      };
+    }
+    {
+      name = "pdfjs_dist___pdfjs_dist_2.1.266.tgz";
+      path = fetchurl {
+        name = "pdfjs_dist___pdfjs_dist_2.1.266.tgz";
+        url  = "https://registry.yarnpkg.com/pdfjs-dist/-/pdfjs-dist-2.1.266.tgz";
+        sha1 = "cded02268b389559e807f410d2a729db62160026";
+      };
+    }
+    {
+      name = "performance_now___performance_now_2.1.0.tgz";
+      path = fetchurl {
+        name = "performance_now___performance_now_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz";
+        sha1 = "6309f4e0e5fa913ec1c69307ae364b4b377c9e7b";
+      };
+    }
+    {
+      name = "picomatch___picomatch_2.0.7.tgz";
+      path = fetchurl {
+        name = "picomatch___picomatch_2.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/picomatch/-/picomatch-2.0.7.tgz";
+        sha1 = "514169d8c7cd0bdbeecc8a2609e34a7163de69f6";
+      };
+    }
+    {
+      name = "pify___pify_2.3.0.tgz";
+      path = fetchurl {
+        name = "pify___pify_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz";
+        sha1 = "ed141a6ac043a849ea588498e7dca8b15330e90c";
+      };
+    }
+    {
+      name = "pify___pify_3.0.0.tgz";
+      path = fetchurl {
+        name = "pify___pify_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz";
+        sha1 = "e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176";
+      };
+    }
+    {
+      name = "pify___pify_4.0.1.tgz";
+      path = fetchurl {
+        name = "pify___pify_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz";
+        sha1 = "4b2cd25c50d598735c50292224fd8c6df41e3231";
+      };
+    }
+    {
+      name = "pikaday___pikaday_1.8.0.tgz";
+      path = fetchurl {
+        name = "pikaday___pikaday_1.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/pikaday/-/pikaday-1.8.0.tgz";
+        sha1 = "ce930e257042e852e6aadee1115e01554b2d71c5";
+      };
+    }
+    {
+      name = "pinkie_promise___pinkie_promise_2.0.1.tgz";
+      path = fetchurl {
+        name = "pinkie_promise___pinkie_promise_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz";
+        sha1 = "2135d6dfa7a358c069ac9b178776288228450ffa";
+      };
+    }
+    {
+      name = "pinkie___pinkie_2.0.4.tgz";
+      path = fetchurl {
+        name = "pinkie___pinkie_2.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz";
+        sha1 = "72556b80cfa0d48a974e80e77248e80ed4f7f870";
+      };
+    }
+    {
+      name = "pirates___pirates_4.0.1.tgz";
+      path = fetchurl {
+        name = "pirates___pirates_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz";
+        sha1 = "643a92caf894566f91b2b986d2c66950a8e2fb87";
+      };
+    }
+    {
+      name = "pixelmatch___pixelmatch_4.0.2.tgz";
+      path = fetchurl {
+        name = "pixelmatch___pixelmatch_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/pixelmatch/-/pixelmatch-4.0.2.tgz";
+        sha1 = "8f47dcec5011b477b67db03c243bc1f3085e8854";
+      };
+    }
+    {
+      name = "pkg_dir___pkg_dir_2.0.0.tgz";
+      path = fetchurl {
+        name = "pkg_dir___pkg_dir_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz";
+        sha1 = "f6d5d1109e19d63edf428e0bd57e12777615334b";
+      };
+    }
+    {
+      name = "pkg_dir___pkg_dir_3.0.0.tgz";
+      path = fetchurl {
+        name = "pkg_dir___pkg_dir_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz";
+        sha1 = "2749020f239ed990881b1f71210d51eb6523bea3";
+      };
+    }
+    {
+      name = "pkg_dir___pkg_dir_4.2.0.tgz";
+      path = fetchurl {
+        name = "pkg_dir___pkg_dir_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz";
+        sha1 = "f099133df7ede422e81d1d8448270eeb3e4261f3";
+      };
+    }
+    {
+      name = "pn___pn_1.1.0.tgz";
+      path = fetchurl {
+        name = "pn___pn_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz";
+        sha1 = "e2f4cef0e219f463c179ab37463e4e1ecdccbafb";
+      };
+    }
+    {
+      name = "pngjs___pngjs_3.3.3.tgz";
+      path = fetchurl {
+        name = "pngjs___pngjs_3.3.3.tgz";
+        url  = "https://registry.yarnpkg.com/pngjs/-/pngjs-3.3.3.tgz";
+        sha1 = "85173703bde3edac8998757b96e5821d0966a21b";
+      };
+    }
+    {
+      name = "pofile___pofile_1.0.11.tgz";
+      path = fetchurl {
+        name = "pofile___pofile_1.0.11.tgz";
+        url  = "https://registry.yarnpkg.com/pofile/-/pofile-1.0.11.tgz";
+        sha1 = "35aff58c17491d127a07336d5522ebc9df57c954";
+      };
+    }
+    {
+      name = "popper.js___popper.js_1.16.1.tgz";
+      path = fetchurl {
+        name = "popper.js___popper.js_1.16.1.tgz";
+        url  = "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.1.tgz";
+        sha1 = "2a223cb3dc7b6213d740e40372be40de43e65b1b";
+      };
+    }
+    {
+      name = "portal_vue___portal_vue_2.1.6.tgz";
+      path = fetchurl {
+        name = "portal_vue___portal_vue_2.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/portal-vue/-/portal-vue-2.1.6.tgz";
+        sha1 = "a7d4790b14a79af7fd159a60ec88c30cddc6c639";
+      };
+    }
+    {
+      name = "portfinder___portfinder_1.0.25.tgz";
+      path = fetchurl {
+        name = "portfinder___portfinder_1.0.25.tgz";
+        url  = "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.25.tgz";
+        sha1 = "254fd337ffba869f4b9d37edc298059cb4d35eca";
+      };
+    }
+    {
+      name = "posix_character_classes___posix_character_classes_0.1.1.tgz";
+      path = fetchurl {
+        name = "posix_character_classes___posix_character_classes_0.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz";
+        sha1 = "01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab";
+      };
+    }
+    {
+      name = "postcss_html___postcss_html_0.36.0.tgz";
+      path = fetchurl {
+        name = "postcss_html___postcss_html_0.36.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-html/-/postcss-html-0.36.0.tgz";
+        sha1 = "b40913f94eaacc2453fd30a1327ad6ee1f88b204";
+      };
+    }
+    {
+      name = "postcss_jsx___postcss_jsx_0.36.2.tgz";
+      path = fetchurl {
+        name = "postcss_jsx___postcss_jsx_0.36.2.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-jsx/-/postcss-jsx-0.36.2.tgz";
+        sha1 = "34bcd6752426a60b8df73f069e7595383060a794";
+      };
+    }
+    {
+      name = "postcss_less___postcss_less_3.1.4.tgz";
+      path = fetchurl {
+        name = "postcss_less___postcss_less_3.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-less/-/postcss-less-3.1.4.tgz";
+        sha1 = "369f58642b5928ef898ffbc1a6e93c958304c5ad";
+      };
+    }
+    {
+      name = "postcss_markdown___postcss_markdown_0.36.0.tgz";
+      path = fetchurl {
+        name = "postcss_markdown___postcss_markdown_0.36.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-markdown/-/postcss-markdown-0.36.0.tgz";
+        sha1 = "7f22849ae0e3db18820b7b0d5e7833f13a447560";
+      };
+    }
+    {
+      name = "postcss_media_query_parser___postcss_media_query_parser_0.2.3.tgz";
+      path = fetchurl {
+        name = "postcss_media_query_parser___postcss_media_query_parser_0.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz";
+        sha1 = "27b39c6f4d94f81b1a73b8f76351c609e5cef244";
+      };
+    }
+    {
+      name = "postcss_modules_extract_imports___postcss_modules_extract_imports_2.0.0.tgz";
+      path = fetchurl {
+        name = "postcss_modules_extract_imports___postcss_modules_extract_imports_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz";
+        sha1 = "818719a1ae1da325f9832446b01136eeb493cd7e";
+      };
+    }
+    {
+      name = "postcss_modules_local_by_default___postcss_modules_local_by_default_2.0.6.tgz";
+      path = fetchurl {
+        name = "postcss_modules_local_by_default___postcss_modules_local_by_default_2.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-2.0.6.tgz";
+        sha1 = "dd9953f6dd476b5fd1ef2d8830c8929760b56e63";
+      };
+    }
+    {
+      name = "postcss_modules_scope___postcss_modules_scope_2.2.0.tgz";
+      path = fetchurl {
+        name = "postcss_modules_scope___postcss_modules_scope_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz";
+        sha1 = "385cae013cc7743f5a7d7602d1073a89eaae62ee";
+      };
+    }
+    {
+      name = "postcss_modules_values___postcss_modules_values_2.0.0.tgz";
+      path = fetchurl {
+        name = "postcss_modules_values___postcss_modules_values_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-2.0.0.tgz";
+        sha1 = "479b46dc0c5ca3dc7fa5270851836b9ec7152f64";
+      };
+    }
+    {
+      name = "postcss_reporter___postcss_reporter_6.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_reporter___postcss_reporter_6.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-reporter/-/postcss-reporter-6.0.1.tgz";
+        sha1 = "7c055120060a97c8837b4e48215661aafb74245f";
+      };
+    }
+    {
+      name = "postcss_resolve_nested_selector___postcss_resolve_nested_selector_0.1.1.tgz";
+      path = fetchurl {
+        name = "postcss_resolve_nested_selector___postcss_resolve_nested_selector_0.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz";
+        sha1 = "29ccbc7c37dedfac304e9fff0bf1596b3f6a0e4e";
+      };
+    }
+    {
+      name = "postcss_safe_parser___postcss_safe_parser_4.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_safe_parser___postcss_safe_parser_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-safe-parser/-/postcss-safe-parser-4.0.1.tgz";
+        sha1 = "8756d9e4c36fdce2c72b091bbc8ca176ab1fcdea";
+      };
+    }
+    {
+      name = "postcss_sass___postcss_sass_0.3.5.tgz";
+      path = fetchurl {
+        name = "postcss_sass___postcss_sass_0.3.5.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-sass/-/postcss-sass-0.3.5.tgz";
+        sha1 = "6d3e39f101a53d2efa091f953493116d32beb68c";
+      };
+    }
+    {
+      name = "postcss_scss___postcss_scss_2.0.0.tgz";
+      path = fetchurl {
+        name = "postcss_scss___postcss_scss_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-scss/-/postcss-scss-2.0.0.tgz";
+        sha1 = "248b0a28af77ea7b32b1011aba0f738bda27dea1";
+      };
+    }
+    {
+      name = "postcss_selector_parser___postcss_selector_parser_3.1.1.tgz";
+      path = fetchurl {
+        name = "postcss_selector_parser___postcss_selector_parser_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-3.1.1.tgz";
+        sha1 = "4f875f4afb0c96573d5cf4d74011aee250a7e865";
+      };
+    }
+    {
+      name = "postcss_selector_parser___postcss_selector_parser_5.0.0.tgz";
+      path = fetchurl {
+        name = "postcss_selector_parser___postcss_selector_parser_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz";
+        sha1 = "249044356697b33b64f1a8f7c80922dddee7195c";
+      };
+    }
+    {
+      name = "postcss_selector_parser___postcss_selector_parser_6.0.2.tgz";
+      path = fetchurl {
+        name = "postcss_selector_parser___postcss_selector_parser_6.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz";
+        sha1 = "934cf799d016c83411859e09dcecade01286ec5c";
+      };
+    }
+    {
+      name = "postcss_syntax___postcss_syntax_0.36.2.tgz";
+      path = fetchurl {
+        name = "postcss_syntax___postcss_syntax_0.36.2.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-syntax/-/postcss-syntax-0.36.2.tgz";
+        sha1 = "f08578c7d95834574e5593a82dfbfa8afae3b51c";
+      };
+    }
+    {
+      name = "postcss_value_parser___postcss_value_parser_3.3.1.tgz";
+      path = fetchurl {
+        name = "postcss_value_parser___postcss_value_parser_3.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz";
+        sha1 = "9ff822547e2893213cf1c30efa51ac5fd1ba8281";
+      };
+    }
+    {
+      name = "postcss_value_parser___postcss_value_parser_4.0.0.tgz";
+      path = fetchurl {
+        name = "postcss_value_parser___postcss_value_parser_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.0.0.tgz";
+        sha1 = "99a983d365f7b2ad8d0f9b8c3094926eab4b936d";
+      };
+    }
+    {
+      name = "postcss___postcss_7.0.27.tgz";
+      path = fetchurl {
+        name = "postcss___postcss_7.0.27.tgz";
+        url  = "https://registry.yarnpkg.com/postcss/-/postcss-7.0.27.tgz";
+        sha1 = "cc67cdc6b0daa375105b7c424a85567345fc54d9";
+      };
+    }
+    {
+      name = "postcss___postcss_7.0.30.tgz";
+      path = fetchurl {
+        name = "postcss___postcss_7.0.30.tgz";
+        url  = "https://registry.yarnpkg.com/postcss/-/postcss-7.0.30.tgz";
+        sha1 = "cc9378beffe46a02cbc4506a0477d05fcea9a8e2";
+      };
+    }
+    {
+      name = "prelude_ls___prelude_ls_1.1.2.tgz";
+      path = fetchurl {
+        name = "prelude_ls___prelude_ls_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz";
+        sha1 = "21932a549f5e52ffd9a827f570e04be62a97da54";
+      };
+    }
+    {
+      name = "prepend_http___prepend_http_1.0.4.tgz";
+      path = fetchurl {
+        name = "prepend_http___prepend_http_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz";
+        sha1 = "d4f4562b0ce3696e41ac52d0e002e57a635dc6dc";
+      };
+    }
+    {
+      name = "prettier___prettier_1.16.3.tgz";
+      path = fetchurl {
+        name = "prettier___prettier_1.16.3.tgz";
+        url  = "https://registry.yarnpkg.com/prettier/-/prettier-1.16.3.tgz";
+        sha1 = "8c62168453badef702f34b45b6ee899574a6a65d";
+      };
+    }
+    {
+      name = "prettier___prettier_1.18.2.tgz";
+      path = fetchurl {
+        name = "prettier___prettier_1.18.2.tgz";
+        url  = "https://registry.yarnpkg.com/prettier/-/prettier-1.18.2.tgz";
+        sha1 = "6823e7c5900017b4bd3acf46fe9ac4b4d7bda9ea";
+      };
+    }
+    {
+      name = "pretty_format___pretty_format_24.8.0.tgz";
+      path = fetchurl {
+        name = "pretty_format___pretty_format_24.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/pretty-format/-/pretty-format-24.8.0.tgz";
+        sha1 = "8dae7044f58db7cb8be245383b565a963e3c27f2";
+      };
+    }
+    {
+      name = "pretty___pretty_2.0.0.tgz";
+      path = fetchurl {
+        name = "pretty___pretty_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/pretty/-/pretty-2.0.0.tgz";
+        sha1 = "adbc7960b7bbfe289a557dc5f737619a220d06a5";
+      };
+    }
+    {
+      name = "prismjs___prismjs_1.6.0.tgz";
+      path = fetchurl {
+        name = "prismjs___prismjs_1.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/prismjs/-/prismjs-1.6.0.tgz";
+        sha1 = "118d95fb7a66dba2272e343b345f5236659db365";
+      };
+    }
+    {
+      name = "private___private_0.1.8.tgz";
+      path = fetchurl {
+        name = "private___private_0.1.8.tgz";
+        url  = "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz";
+        sha1 = "2381edb3689f7a53d653190060fcf822d2f368ff";
+      };
+    }
+    {
+      name = "process_nextick_args___process_nextick_args_1.0.7.tgz";
+      path = fetchurl {
+        name = "process_nextick_args___process_nextick_args_1.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz";
+        sha1 = "150e20b756590ad3f91093f25a4f2ad8bff30ba3";
+      };
+    }
+    {
+      name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
+      path = fetchurl {
+        name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz";
+        sha1 = "7820d9b16120cc55ca9ae7792680ae7dba6d7fe2";
+      };
+    }
+    {
+      name = "process___process_0.11.10.tgz";
+      path = fetchurl {
+        name = "process___process_0.11.10.tgz";
+        url  = "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz";
+        sha1 = "7332300e840161bda3e69a1d1d91a7d4bc16f182";
+      };
+    }
+    {
+      name = "progress___progress_2.0.3.tgz";
+      path = fetchurl {
+        name = "progress___progress_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz";
+        sha1 = "7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8";
+      };
+    }
+    {
+      name = "promise_inflight___promise_inflight_1.0.1.tgz";
+      path = fetchurl {
+        name = "promise_inflight___promise_inflight_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz";
+        sha1 = "98472870bf228132fcbdd868129bad12c3c029e3";
+      };
+    }
+    {
+      name = "prompts___prompts_2.1.0.tgz";
+      path = fetchurl {
+        name = "prompts___prompts_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/prompts/-/prompts-2.1.0.tgz";
+        sha1 = "bf90bc71f6065d255ea2bdc0fe6520485c1b45db";
+      };
+    }
+    {
+      name = "prosemirror_commands___prosemirror_commands_1.0.7.tgz";
+      path = fetchurl {
+        name = "prosemirror_commands___prosemirror_commands_1.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/prosemirror-commands/-/prosemirror-commands-1.0.7.tgz";
+        sha1 = "e5a2ba821e29ea7065c88277fe2c3d7f6b0b9d37";
+      };
+    }
+    {
+      name = "prosemirror_dropcursor___prosemirror_dropcursor_1.1.1.tgz";
+      path = fetchurl {
+        name = "prosemirror_dropcursor___prosemirror_dropcursor_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/prosemirror-dropcursor/-/prosemirror-dropcursor-1.1.1.tgz";
+        sha1 = "c60ed1ed6c58804a06a75db06a0d993b087b7622";
+      };
+    }
+    {
+      name = "prosemirror_gapcursor___prosemirror_gapcursor_1.0.3.tgz";
+      path = fetchurl {
+        name = "prosemirror_gapcursor___prosemirror_gapcursor_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/prosemirror-gapcursor/-/prosemirror-gapcursor-1.0.3.tgz";
+        sha1 = "acc6537fc5a35e9b38966f91a199a382dfc715c4";
+      };
+    }
+    {
+      name = "prosemirror_history___prosemirror_history_1.0.3.tgz";
+      path = fetchurl {
+        name = "prosemirror_history___prosemirror_history_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/prosemirror-history/-/prosemirror-history-1.0.3.tgz";
+        sha1 = "5fb8591adfc272afaaf0b41bec64ee7d9522a118";
+      };
+    }
+    {
+      name = "prosemirror_inputrules___prosemirror_inputrules_1.0.1.tgz";
+      path = fetchurl {
+        name = "prosemirror_inputrules___prosemirror_inputrules_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/prosemirror-inputrules/-/prosemirror-inputrules-1.0.1.tgz";
+        sha1 = "f63305fd966379f218e82ca76a2a9b328b66dc7b";
+      };
+    }
+    {
+      name = "prosemirror_keymap___prosemirror_keymap_1.0.1.tgz";
+      path = fetchurl {
+        name = "prosemirror_keymap___prosemirror_keymap_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/prosemirror-keymap/-/prosemirror-keymap-1.0.1.tgz";
+        sha1 = "03ef32b828e3a859dfb570eb84928bf2e5330bc2";
+      };
+    }
+    {
+      name = "prosemirror_markdown___prosemirror_markdown_1.3.0.tgz";
+      path = fetchurl {
+        name = "prosemirror_markdown___prosemirror_markdown_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/prosemirror-markdown/-/prosemirror-markdown-1.3.0.tgz";
+        sha1 = "a100d14c27da7d8fb70818230d786898eeadb7fa";
+      };
+    }
+    {
+      name = "prosemirror_model___prosemirror_model_1.6.4.tgz";
+      path = fetchurl {
+        name = "prosemirror_model___prosemirror_model_1.6.4.tgz";
+        url  = "https://registry.yarnpkg.com/prosemirror-model/-/prosemirror-model-1.6.4.tgz";
+        sha1 = "2ac37a629448a7dbfd1635450e2fdd63c3450d7d";
+      };
+    }
+    {
+      name = "prosemirror_schema_list___prosemirror_schema_list_1.0.1.tgz";
+      path = fetchurl {
+        name = "prosemirror_schema_list___prosemirror_schema_list_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/prosemirror-schema-list/-/prosemirror-schema-list-1.0.1.tgz";
+        sha1 = "f216e0cf4809b6074aa27912449ac89897f1ae94";
+      };
+    }
+    {
+      name = "prosemirror_state___prosemirror_state_1.2.2.tgz";
+      path = fetchurl {
+        name = "prosemirror_state___prosemirror_state_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/prosemirror-state/-/prosemirror-state-1.2.2.tgz";
+        sha1 = "8df26d95fd6fd327c0f9984a760e84d863204154";
+      };
+    }
+    {
+      name = "prosemirror_tables___prosemirror_tables_0.7.10.tgz";
+      path = fetchurl {
+        name = "prosemirror_tables___prosemirror_tables_0.7.10.tgz";
+        url  = "https://registry.yarnpkg.com/prosemirror-tables/-/prosemirror-tables-0.7.10.tgz";
+        sha1 = "4b0f623422b4b8f84cdc9c559f8a87579846b3ba";
+      };
+    }
+    {
+      name = "prosemirror_transform___prosemirror_transform_1.1.3.tgz";
+      path = fetchurl {
+        name = "prosemirror_transform___prosemirror_transform_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/prosemirror-transform/-/prosemirror-transform-1.1.3.tgz";
+        sha1 = "28cfdf1f9ee514edc40466be7b7db39eed545fdf";
+      };
+    }
+    {
+      name = "prosemirror_utils___prosemirror_utils_0.7.5.tgz";
+      path = fetchurl {
+        name = "prosemirror_utils___prosemirror_utils_0.7.5.tgz";
+        url  = "https://registry.yarnpkg.com/prosemirror-utils/-/prosemirror-utils-0.7.5.tgz";
+        sha1 = "11b477647b672ec8f10679ab298a5823dad6457a";
+      };
+    }
+    {
+      name = "prosemirror_view___prosemirror_view_1.6.8.tgz";
+      path = fetchurl {
+        name = "prosemirror_view___prosemirror_view_1.6.8.tgz";
+        url  = "https://registry.yarnpkg.com/prosemirror-view/-/prosemirror-view-1.6.8.tgz";
+        sha1 = "33fc1a6e2731633e5d6dc1af1967378f15810b74";
+      };
+    }
+    {
+      name = "proto_list___proto_list_1.2.4.tgz";
+      path = fetchurl {
+        name = "proto_list___proto_list_1.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz";
+        sha1 = "212d5bfe1318306a420f6402b8e26ff39647a849";
+      };
+    }
+    {
+      name = "proxy_addr___proxy_addr_2.0.5.tgz";
+      path = fetchurl {
+        name = "proxy_addr___proxy_addr_2.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.5.tgz";
+        sha1 = "34cbd64a2d81f4b1fd21e76f9f06c8a45299ee34";
+      };
+    }
+    {
+      name = "prr___prr_1.0.1.tgz";
+      path = fetchurl {
+        name = "prr___prr_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz";
+        sha1 = "d3fc114ba06995a45ec6893f484ceb1d78f5f476";
+      };
+    }
+    {
+      name = "pseudomap___pseudomap_1.0.2.tgz";
+      path = fetchurl {
+        name = "pseudomap___pseudomap_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz";
+        sha1 = "f052a28da70e618917ef0a8ac34c1ae5a68286b3";
+      };
+    }
+    {
+      name = "psl___psl_1.1.29.tgz";
+      path = fetchurl {
+        name = "psl___psl_1.1.29.tgz";
+        url  = "https://registry.yarnpkg.com/psl/-/psl-1.1.29.tgz";
+        sha1 = "60f580d360170bb722a797cc704411e6da850c67";
+      };
+    }
+    {
+      name = "pstree.remy___pstree.remy_1.1.6.tgz";
+      path = fetchurl {
+        name = "pstree.remy___pstree.remy_1.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/pstree.remy/-/pstree.remy-1.1.6.tgz";
+        sha1 = "73a55aad9e2d95814927131fbf4dc1b62d259f47";
+      };
+    }
+    {
+      name = "public_encrypt___public_encrypt_4.0.0.tgz";
+      path = fetchurl {
+        name = "public_encrypt___public_encrypt_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.0.tgz";
+        sha1 = "39f699f3a46560dd5ebacbca693caf7c65c18cc6";
+      };
+    }
+    {
+      name = "pump___pump_2.0.1.tgz";
+      path = fetchurl {
+        name = "pump___pump_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz";
+        sha1 = "12399add6e4cf7526d973cbc8b5ce2e2908b3909";
+      };
+    }
+    {
+      name = "pump___pump_3.0.0.tgz";
+      path = fetchurl {
+        name = "pump___pump_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz";
+        sha1 = "b4a2116815bde2f4e1ea602354e8c75565107a64";
+      };
+    }
+    {
+      name = "pumpify___pumpify_1.5.1.tgz";
+      path = fetchurl {
+        name = "pumpify___pumpify_1.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz";
+        sha1 = "36513be246ab27570b1a374a5ce278bfd74370ce";
+      };
+    }
+    {
+      name = "punycode___punycode_1.3.2.tgz";
+      path = fetchurl {
+        name = "punycode___punycode_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz";
+        sha1 = "9653a036fb7c1ee42342f2325cceefea3926c48d";
+      };
+    }
+    {
+      name = "punycode___punycode_1.4.1.tgz";
+      path = fetchurl {
+        name = "punycode___punycode_1.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz";
+        sha1 = "c0d5a63b2718800ad8e1eb0fa5269c84dd41845e";
+      };
+    }
+    {
+      name = "punycode___punycode_2.1.1.tgz";
+      path = fetchurl {
+        name = "punycode___punycode_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz";
+        sha1 = "b58b010ac40c22c5657616c8d2c2c02c7bf479ec";
+      };
+    }
+    {
+      name = "qjobs___qjobs_1.2.0.tgz";
+      path = fetchurl {
+        name = "qjobs___qjobs_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/qjobs/-/qjobs-1.2.0.tgz";
+        sha1 = "c45e9c61800bd087ef88d7e256423bdd49e5d071";
+      };
+    }
+    {
+      name = "qs___qs_6.7.0.tgz";
+      path = fetchurl {
+        name = "qs___qs_6.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz";
+        sha1 = "41dc1a015e3d581f1621776be31afb2876a9b1bc";
+      };
+    }
+    {
+      name = "qs___qs_6.5.2.tgz";
+      path = fetchurl {
+        name = "qs___qs_6.5.2.tgz";
+        url  = "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz";
+        sha1 = "cb3ae806e8740444584ef154ce8ee98d403f3e36";
+      };
+    }
+    {
+      name = "querystring_es3___querystring_es3_0.2.1.tgz";
+      path = fetchurl {
+        name = "querystring_es3___querystring_es3_0.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz";
+        sha1 = "9ec61f79049875707d69414596fd907a4d711e73";
+      };
+    }
+    {
+      name = "querystring___querystring_0.2.0.tgz";
+      path = fetchurl {
+        name = "querystring___querystring_0.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz";
+        sha1 = "b209849203bb25df820da756e747005878521620";
+      };
+    }
+    {
+      name = "querystringify___querystringify_2.1.0.tgz";
+      path = fetchurl {
+        name = "querystringify___querystringify_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/querystringify/-/querystringify-2.1.0.tgz";
+        sha1 = "7ded8dfbf7879dcc60d0a644ac6754b283ad17ef";
+      };
+    }
+    {
+      name = "quick_lru___quick_lru_1.1.0.tgz";
+      path = fetchurl {
+        name = "quick_lru___quick_lru_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/quick-lru/-/quick-lru-1.1.0.tgz";
+        sha1 = "4360b17c61136ad38078397ff11416e186dcfbb8";
+      };
+    }
+    {
+      name = "randombytes___randombytes_2.0.6.tgz";
+      path = fetchurl {
+        name = "randombytes___randombytes_2.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.6.tgz";
+        sha1 = "d302c522948588848a8d300c932b44c24231da80";
+      };
+    }
+    {
+      name = "randomfill___randomfill_1.0.4.tgz";
+      path = fetchurl {
+        name = "randomfill___randomfill_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz";
+        sha1 = "c92196fc86ab42be983f1bf31778224931d61458";
+      };
+    }
+    {
+      name = "range_parser___range_parser_1.2.1.tgz";
+      path = fetchurl {
+        name = "range_parser___range_parser_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz";
+        sha1 = "3cf37023d199e1c24d1a55b84800c2f3e6468031";
+      };
+    }
+    {
+      name = "raphael___raphael_2.2.7.tgz";
+      path = fetchurl {
+        name = "raphael___raphael_2.2.7.tgz";
+        url  = "https://registry.yarnpkg.com/raphael/-/raphael-2.2.7.tgz";
+        sha1 = "231b19141f8d086986d8faceb66f8b562ee2c810";
+      };
+    }
+    {
+      name = "raw_body___raw_body_2.4.0.tgz";
+      path = fetchurl {
+        name = "raw_body___raw_body_2.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.0.tgz";
+        sha1 = "a1ce6fb9c9bc356ca52e89256ab59059e13d0332";
+      };
+    }
+    {
+      name = "raw_loader___raw_loader_4.0.0.tgz";
+      path = fetchurl {
+        name = "raw_loader___raw_loader_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/raw-loader/-/raw-loader-4.0.0.tgz";
+        sha1 = "d639c40fb9d72b5c7f8abc1fb2ddb25b29d3d540";
+      };
+    }
+    {
+      name = "rc___rc_1.2.8.tgz";
+      path = fetchurl {
+        name = "rc___rc_1.2.8.tgz";
+        url  = "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz";
+        sha1 = "cd924bf5200a075b83c188cd6b9e211b7fc0d3ed";
+      };
+    }
+    {
+      name = "react_is___react_is_16.8.6.tgz";
+      path = fetchurl {
+        name = "react_is___react_is_16.8.6.tgz";
+        url  = "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz";
+        sha1 = "5bbc1e2d29141c9fbdfed456343fe2bc430a6a16";
+      };
+    }
+    {
+      name = "read_pkg_up___read_pkg_up_1.0.1.tgz";
+      path = fetchurl {
+        name = "read_pkg_up___read_pkg_up_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz";
+        sha1 = "9d63c13276c065918d57f002a57f40a1b643fb02";
+      };
+    }
+    {
+      name = "read_pkg_up___read_pkg_up_2.0.0.tgz";
+      path = fetchurl {
+        name = "read_pkg_up___read_pkg_up_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz";
+        sha1 = "6b72a8048984e0c41e79510fd5e9fa99b3b549be";
+      };
+    }
+    {
+      name = "read_pkg_up___read_pkg_up_3.0.0.tgz";
+      path = fetchurl {
+        name = "read_pkg_up___read_pkg_up_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz";
+        sha1 = "3ed496685dba0f8fe118d0691dc51f4a1ff96f07";
+      };
+    }
+    {
+      name = "read_pkg_up___read_pkg_up_4.0.0.tgz";
+      path = fetchurl {
+        name = "read_pkg_up___read_pkg_up_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-4.0.0.tgz";
+        sha1 = "1b221c6088ba7799601c808f91161c66e58f8978";
+      };
+    }
+    {
+      name = "read_pkg___read_pkg_1.1.0.tgz";
+      path = fetchurl {
+        name = "read_pkg___read_pkg_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz";
+        sha1 = "f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28";
+      };
+    }
+    {
+      name = "read_pkg___read_pkg_2.0.0.tgz";
+      path = fetchurl {
+        name = "read_pkg___read_pkg_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz";
+        sha1 = "8ef1c0623c6a6db0dc6713c4bfac46332b2368f8";
+      };
+    }
+    {
+      name = "read_pkg___read_pkg_3.0.0.tgz";
+      path = fetchurl {
+        name = "read_pkg___read_pkg_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz";
+        sha1 = "9cbc686978fee65d16c00e2b19c237fcf6e38389";
+      };
+    }
+    {
+      name = "readable_stream___readable_stream_2.3.6.tgz";
+      path = fetchurl {
+        name = "readable_stream___readable_stream_2.3.6.tgz";
+        url  = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz";
+        sha1 = "b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf";
+      };
+    }
+    {
+      name = "readable_stream___readable_stream_3.0.6.tgz";
+      path = fetchurl {
+        name = "readable_stream___readable_stream_3.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.0.6.tgz";
+        sha1 = "351302e4c68b5abd6a2ed55376a7f9a25be3057a";
+      };
+    }
+    {
+      name = "readable_stream___readable_stream_2.0.6.tgz";
+      path = fetchurl {
+        name = "readable_stream___readable_stream_2.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.0.6.tgz";
+        sha1 = "8f90341e68a53ccc928788dacfcd11b36eb9b78e";
+      };
+    }
+    {
+      name = "readdir_enhanced___readdir_enhanced_2.2.4.tgz";
+      path = fetchurl {
+        name = "readdir_enhanced___readdir_enhanced_2.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/readdir-enhanced/-/readdir-enhanced-2.2.4.tgz";
+        sha1 = "773fb8a8de5f645fb13d9403746d490d4facb3e6";
+      };
+    }
+    {
+      name = "readdirp___readdirp_2.2.1.tgz";
+      path = fetchurl {
+        name = "readdirp___readdirp_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz";
+        sha1 = "0e87622a3325aa33e892285caf8b4e846529a525";
+      };
+    }
+    {
+      name = "readdirp___readdirp_3.1.1.tgz";
+      path = fetchurl {
+        name = "readdirp___readdirp_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/readdirp/-/readdirp-3.1.1.tgz";
+        sha1 = "b158123ac343c8b0f31d65680269cc0fc1025db1";
+      };
+    }
+    {
+      name = "realpath_native___realpath_native_1.1.0.tgz";
+      path = fetchurl {
+        name = "realpath_native___realpath_native_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/realpath-native/-/realpath-native-1.1.0.tgz";
+        sha1 = "2003294fea23fb0672f2476ebe22fcf498a2d65c";
+      };
+    }
+    {
+      name = "redent___redent_1.0.0.tgz";
+      path = fetchurl {
+        name = "redent___redent_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz";
+        sha1 = "cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde";
+      };
+    }
+    {
+      name = "redent___redent_2.0.0.tgz";
+      path = fetchurl {
+        name = "redent___redent_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/redent/-/redent-2.0.0.tgz";
+        sha1 = "c1b2007b42d57eb1389079b3c8333639d5e1ccaa";
+      };
+    }
+    {
+      name = "regenerate_unicode_properties___regenerate_unicode_properties_8.1.0.tgz";
+      path = fetchurl {
+        name = "regenerate_unicode_properties___regenerate_unicode_properties_8.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz";
+        sha1 = "ef51e0f0ea4ad424b77bf7cb41f3e015c70a3f0e";
+      };
+    }
+    {
+      name = "regenerate___regenerate_1.4.0.tgz";
+      path = fetchurl {
+        name = "regenerate___regenerate_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz";
+        sha1 = "4a856ec4b56e4077c557589cae85e7a4c8869a11";
+      };
+    }
+    {
+      name = "regenerator_transform___regenerator_transform_0.14.1.tgz";
+      path = fetchurl {
+        name = "regenerator_transform___regenerator_transform_0.14.1.tgz";
+        url  = "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.1.tgz";
+        sha1 = "3b2fce4e1ab7732c08f665dfdb314749c7ddd2fb";
+      };
+    }
+    {
+      name = "regex_not___regex_not_1.0.2.tgz";
+      path = fetchurl {
+        name = "regex_not___regex_not_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz";
+        sha1 = "1f4ece27e00b0b65e0247a6810e6a85d83a5752c";
+      };
+    }
+    {
+      name = "regexpp___regexpp_2.0.1.tgz";
+      path = fetchurl {
+        name = "regexpp___regexpp_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz";
+        sha1 = "8d19d31cf632482b589049f8281f93dbcba4d07f";
+      };
+    }
+    {
+      name = "regexpu_core___regexpu_core_4.6.0.tgz";
+      path = fetchurl {
+        name = "regexpu_core___regexpu_core_4.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.6.0.tgz";
+        sha1 = "2037c18b327cfce8a6fea2a4ec441f2432afb8b6";
+      };
+    }
+    {
+      name = "registry_auth_token___registry_auth_token_3.3.2.tgz";
+      path = fetchurl {
+        name = "registry_auth_token___registry_auth_token_3.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-3.3.2.tgz";
+        sha1 = "851fd49038eecb586911115af845260eec983f20";
+      };
+    }
+    {
+      name = "registry_url___registry_url_3.1.0.tgz";
+      path = fetchurl {
+        name = "registry_url___registry_url_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/registry-url/-/registry-url-3.1.0.tgz";
+        sha1 = "3d4ef870f73dde1d77f0cf9a381432444e174942";
+      };
+    }
+    {
+      name = "regjsgen___regjsgen_0.5.0.tgz";
+      path = fetchurl {
+        name = "regjsgen___regjsgen_0.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.0.tgz";
+        sha1 = "a7634dc08f89209c2049adda3525711fb97265dd";
+      };
+    }
+    {
+      name = "regjsparser___regjsparser_0.6.0.tgz";
+      path = fetchurl {
+        name = "regjsparser___regjsparser_0.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.0.tgz";
+        sha1 = "f1e6ae8b7da2bae96c99399b868cd6c933a2ba9c";
+      };
+    }
+    {
+      name = "relateurl___relateurl_0.2.7.tgz";
+      path = fetchurl {
+        name = "relateurl___relateurl_0.2.7.tgz";
+        url  = "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz";
+        sha1 = "54dbf377e51440aca90a4cd274600d3ff2d888a9";
+      };
+    }
+    {
+      name = "remark_parse___remark_parse_6.0.3.tgz";
+      path = fetchurl {
+        name = "remark_parse___remark_parse_6.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/remark-parse/-/remark-parse-6.0.3.tgz";
+        sha1 = "c99131052809da482108413f87b0ee7f52180a3a";
+      };
+    }
+    {
+      name = "remark_stringify___remark_stringify_6.0.4.tgz";
+      path = fetchurl {
+        name = "remark_stringify___remark_stringify_6.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/remark-stringify/-/remark-stringify-6.0.4.tgz";
+        sha1 = "16ac229d4d1593249018663c7bddf28aafc4e088";
+      };
+    }
+    {
+      name = "remark___remark_10.0.1.tgz";
+      path = fetchurl {
+        name = "remark___remark_10.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/remark/-/remark-10.0.1.tgz";
+        sha1 = "3058076dc41781bf505d8978c291485fe47667df";
+      };
+    }
+    {
+      name = "remove_trailing_separator___remove_trailing_separator_1.1.0.tgz";
+      path = fetchurl {
+        name = "remove_trailing_separator___remove_trailing_separator_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz";
+        sha1 = "c24bce2a283adad5bc3f58e0d48249b92379d8ef";
+      };
+    }
+    {
+      name = "repeat_element___repeat_element_1.1.3.tgz";
+      path = fetchurl {
+        name = "repeat_element___repeat_element_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz";
+        sha1 = "782e0d825c0c5a3bb39731f84efee6b742e6b1ce";
+      };
+    }
+    {
+      name = "repeat_string___repeat_string_1.6.1.tgz";
+      path = fetchurl {
+        name = "repeat_string___repeat_string_1.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz";
+        sha1 = "8dcae470e1c88abc2d600fff4a776286da75e637";
+      };
+    }
+    {
+      name = "repeating___repeating_2.0.1.tgz";
+      path = fetchurl {
+        name = "repeating___repeating_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz";
+        sha1 = "5214c53a926d3552707527fbab415dbc08d06dda";
+      };
+    }
+    {
+      name = "replace_ext___replace_ext_1.0.0.tgz";
+      path = fetchurl {
+        name = "replace_ext___replace_ext_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz";
+        sha1 = "de63128373fcbf7c3ccfa4de5a480c45a67958eb";
+      };
+    }
+    {
+      name = "request_promise_core___request_promise_core_1.1.1.tgz";
+      path = fetchurl {
+        name = "request_promise_core___request_promise_core_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.1.tgz";
+        sha1 = "3eee00b2c5aa83239cfb04c5700da36f81cd08b6";
+      };
+    }
+    {
+      name = "request_promise_native___request_promise_native_1.0.5.tgz";
+      path = fetchurl {
+        name = "request_promise_native___request_promise_native_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.5.tgz";
+        sha1 = "5281770f68e0c9719e5163fd3fab482215f4fda5";
+      };
+    }
+    {
+      name = "request___request_2.88.0.tgz";
+      path = fetchurl {
+        name = "request___request_2.88.0.tgz";
+        url  = "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz";
+        sha1 = "9c2fca4f7d35b592efe57c7f0a55e81052124fef";
+      };
+    }
+    {
+      name = "require_directory___require_directory_2.1.1.tgz";
+      path = fetchurl {
+        name = "require_directory___require_directory_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz";
+        sha1 = "8c64ad5fd30dab1c976e2344ffe7f792a6a6df42";
+      };
+    }
+    {
+      name = "require_main_filename___require_main_filename_1.0.1.tgz";
+      path = fetchurl {
+        name = "require_main_filename___require_main_filename_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz";
+        sha1 = "97f717b69d48784f5f526a6c5aa8ffdda055a4d1";
+      };
+    }
+    {
+      name = "require_main_filename___require_main_filename_2.0.0.tgz";
+      path = fetchurl {
+        name = "require_main_filename___require_main_filename_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz";
+        sha1 = "d0b329ecc7cc0f61649f62215be69af54aa8989b";
+      };
+    }
+    {
+      name = "require_package_name___require_package_name_2.0.1.tgz";
+      path = fetchurl {
+        name = "require_package_name___require_package_name_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/require-package-name/-/require-package-name-2.0.1.tgz";
+        sha1 = "c11e97276b65b8e2923f75dabf5fb2ef0c3841b9";
+      };
+    }
+    {
+      name = "requires_port___requires_port_1.0.0.tgz";
+      path = fetchurl {
+        name = "requires_port___requires_port_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz";
+        sha1 = "925d2601d39ac485e091cf0da5c6e694dc3dcaff";
+      };
+    }
+    {
+      name = "requizzle___requizzle_0.2.1.tgz";
+      path = fetchurl {
+        name = "requizzle___requizzle_0.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/requizzle/-/requizzle-0.2.1.tgz";
+        sha1 = "6943c3530c4d9a7e46f1cddd51c158fc670cdbde";
+      };
+    }
+    {
+      name = "resize_observer_polyfill___resize_observer_polyfill_1.5.1.tgz";
+      path = fetchurl {
+        name = "resize_observer_polyfill___resize_observer_polyfill_1.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz";
+        sha1 = "0e9020dd3d21024458d4ebd27e23e40269810464";
+      };
+    }
+    {
+      name = "resolve_cwd___resolve_cwd_2.0.0.tgz";
+      path = fetchurl {
+        name = "resolve_cwd___resolve_cwd_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz";
+        sha1 = "00a9f7387556e27038eae232caa372a6a59b665a";
+      };
+    }
+    {
+      name = "resolve_dir___resolve_dir_1.0.1.tgz";
+      path = fetchurl {
+        name = "resolve_dir___resolve_dir_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz";
+        sha1 = "79a40644c362be82f26effe739c9bb5382046f43";
+      };
+    }
+    {
+      name = "resolve_from___resolve_from_3.0.0.tgz";
+      path = fetchurl {
+        name = "resolve_from___resolve_from_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz";
+        sha1 = "b22c7af7d9d6881bc8b6e653335eebcb0a188748";
+      };
+    }
+    {
+      name = "resolve_from___resolve_from_4.0.0.tgz";
+      path = fetchurl {
+        name = "resolve_from___resolve_from_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz";
+        sha1 = "4abcd852ad32dd7baabfe9b40e00a36db5f392e6";
+      };
+    }
+    {
+      name = "resolve_from___resolve_from_5.0.0.tgz";
+      path = fetchurl {
+        name = "resolve_from___resolve_from_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz";
+        sha1 = "c35225843df8f776df21c57557bc087e9dfdfc69";
+      };
+    }
+    {
+      name = "resolve_url___resolve_url_0.2.1.tgz";
+      path = fetchurl {
+        name = "resolve_url___resolve_url_0.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz";
+        sha1 = "2c637fe77c893afd2a663fe21aa9080068e2052a";
+      };
+    }
+    {
+      name = "resolve___resolve_1.1.7.tgz";
+      path = fetchurl {
+        name = "resolve___resolve_1.1.7.tgz";
+        url  = "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz";
+        sha1 = "203114d82ad2c5ed9e8e0411b3932875e889e97b";
+      };
+    }
+    {
+      name = "resolve___resolve_1.15.0.tgz";
+      path = fetchurl {
+        name = "resolve___resolve_1.15.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve/-/resolve-1.15.0.tgz";
+        sha1 = "1b7ca96073ebb52e741ffd799f6b39ea462c67f5";
+      };
+    }
+    {
+      name = "restore_cursor___restore_cursor_3.1.0.tgz";
+      path = fetchurl {
+        name = "restore_cursor___restore_cursor_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz";
+        sha1 = "39f67c54b3a7a58cea5236d95cf0034239631f7e";
+      };
+    }
+    {
+      name = "ret___ret_0.1.15.tgz";
+      path = fetchurl {
+        name = "ret___ret_0.1.15.tgz";
+        url  = "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz";
+        sha1 = "b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc";
+      };
+    }
+    {
+      name = "retry___retry_0.12.0.tgz";
+      path = fetchurl {
+        name = "retry___retry_0.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz";
+        sha1 = "1b42a6266a21f07421d1b0b54b7dc167b01c013b";
+      };
+    }
+    {
+      name = "rfdc___rfdc_1.1.4.tgz";
+      path = fetchurl {
+        name = "rfdc___rfdc_1.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/rfdc/-/rfdc-1.1.4.tgz";
+        sha1 = "ba72cc1367a0ccd9cf81a870b3b58bd3ad07f8c2";
+      };
+    }
+    {
+      name = "rimraf___rimraf_2.7.1.tgz";
+      path = fetchurl {
+        name = "rimraf___rimraf_2.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz";
+        sha1 = "35797f13a7fdadc566142c29d4f07ccad483e3ec";
+      };
+    }
+    {
+      name = "rimraf___rimraf_2.6.3.tgz";
+      path = fetchurl {
+        name = "rimraf___rimraf_2.6.3.tgz";
+        url  = "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz";
+        sha1 = "b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab";
+      };
+    }
+    {
+      name = "ripemd160___ripemd160_2.0.1.tgz";
+      path = fetchurl {
+        name = "ripemd160___ripemd160_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.1.tgz";
+        sha1 = "0f4584295c53a3628af7e6d79aca21ce57d1c6e7";
+      };
+    }
+    {
+      name = "rope_sequence___rope_sequence_1.2.2.tgz";
+      path = fetchurl {
+        name = "rope_sequence___rope_sequence_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/rope-sequence/-/rope-sequence-1.2.2.tgz";
+        sha1 = "49c4e5c2f54a48e990b050926771e2871bcb31ce";
+      };
+    }
+    {
+      name = "rsvp___rsvp_4.8.4.tgz";
+      path = fetchurl {
+        name = "rsvp___rsvp_4.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.4.tgz";
+        sha1 = "b50e6b34583f3dd89329a2f23a8a2be072845911";
+      };
+    }
+    {
+      name = "run_async___run_async_2.3.0.tgz";
+      path = fetchurl {
+        name = "run_async___run_async_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz";
+        sha1 = "0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0";
+      };
+    }
+    {
+      name = "run_queue___run_queue_1.0.3.tgz";
+      path = fetchurl {
+        name = "run_queue___run_queue_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz";
+        sha1 = "e848396f057d223f24386924618e25694161ec47";
+      };
+    }
+    {
+      name = "rw___rw_1.3.3.tgz";
+      path = fetchurl {
+        name = "rw___rw_1.3.3.tgz";
+        url  = "https://registry.yarnpkg.com/rw/-/rw-1.3.3.tgz";
+        sha1 = "3f862dfa91ab766b14885ef4d01124bfda074fb4";
+      };
+    }
+    {
+      name = "rxjs___rxjs_6.5.4.tgz";
+      path = fetchurl {
+        name = "rxjs___rxjs_6.5.4.tgz";
+        url  = "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.4.tgz";
+        sha1 = "e0777fe0d184cec7872df147f303572d414e211c";
+      };
+    }
+    {
+      name = "safe_buffer___safe_buffer_5.1.2.tgz";
+      path = fetchurl {
+        name = "safe_buffer___safe_buffer_5.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz";
+        sha1 = "991ec69d296e0313747d59bdfd2b745c35f8828d";
+      };
+    }
+    {
+      name = "safe_regex___safe_regex_1.1.0.tgz";
+      path = fetchurl {
+        name = "safe_regex___safe_regex_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz";
+        sha1 = "40a3669f3b077d1e943d44629e157dd48023bf2e";
+      };
+    }
+    {
+      name = "safer_buffer___safer_buffer_2.1.2.tgz";
+      path = fetchurl {
+        name = "safer_buffer___safer_buffer_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz";
+        sha1 = "44fa161b0187b9549dd84bb91802f9bd8385cd6a";
+      };
+    }
+    {
+      name = "sane___sane_4.1.0.tgz";
+      path = fetchurl {
+        name = "sane___sane_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz";
+        sha1 = "ed881fd922733a6c461bc189dc2b6c006f3ffded";
+      };
+    }
+    {
+      name = "sanitize_html___sanitize_html_1.22.0.tgz";
+      path = fetchurl {
+        name = "sanitize_html___sanitize_html_1.22.0.tgz";
+        url  = "https://registry.yarnpkg.com/sanitize-html/-/sanitize-html-1.22.0.tgz";
+        sha1 = "9df779c53cf5755adb2322943c21c1c1dffca7bf";
+      };
+    }
+    {
+      name = "sass_graph___sass_graph_2.2.4.tgz";
+      path = fetchurl {
+        name = "sass_graph___sass_graph_2.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/sass-graph/-/sass-graph-2.2.4.tgz";
+        sha1 = "13fbd63cd1caf0908b9fd93476ad43a51d1e0b49";
+      };
+    }
+    {
+      name = "sax___sax_1.2.1.tgz";
+      path = fetchurl {
+        name = "sax___sax_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/sax/-/sax-1.2.1.tgz";
+        sha1 = "7b8e656190b228e81a66aea748480d828cd2d37a";
+      };
+    }
+    {
+      name = "sax___sax_1.2.4.tgz";
+      path = fetchurl {
+        name = "sax___sax_1.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz";
+        sha1 = "2816234e2378bddc4e5354fab5caa895df7100d9";
+      };
+    }
+    {
+      name = "schema_utils___schema_utils_0.4.5.tgz";
+      path = fetchurl {
+        name = "schema_utils___schema_utils_0.4.5.tgz";
+        url  = "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.5.tgz";
+        sha1 = "21836f0608aac17b78f9e3e24daff14a5ca13a3e";
+      };
+    }
+    {
+      name = "schema_utils___schema_utils_1.0.0.tgz";
+      path = fetchurl {
+        name = "schema_utils___schema_utils_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz";
+        sha1 = "0b79a93204d7b600d4b2850d1f66c2a34951c770";
+      };
+    }
+    {
+      name = "schema_utils___schema_utils_2.6.4.tgz";
+      path = fetchurl {
+        name = "schema_utils___schema_utils_2.6.4.tgz";
+        url  = "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.6.4.tgz";
+        sha1 = "a27efbf6e4e78689d91872ee3ccfa57d7bdd0f53";
+      };
+    }
+    {
+      name = "scope_css___scope_css_1.2.1.tgz";
+      path = fetchurl {
+        name = "scope_css___scope_css_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/scope-css/-/scope-css-1.2.1.tgz";
+        sha1 = "c35768bc900cad030a3e0d663a818c0f6a57f40e";
+      };
+    }
+    {
+      name = "scss_tokenizer___scss_tokenizer_0.2.3.tgz";
+      path = fetchurl {
+        name = "scss_tokenizer___scss_tokenizer_0.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz";
+        sha1 = "8eb06db9a9723333824d3f5530641149847ce5d1";
+      };
+    }
+    {
+      name = "select_hose___select_hose_2.0.0.tgz";
+      path = fetchurl {
+        name = "select_hose___select_hose_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz";
+        sha1 = "625d8658f865af43ec962bfc376a37359a4994ca";
+      };
+    }
+    {
+      name = "select2___select2_3.5.2_browserify.tgz";
+      path = fetchurl {
+        name = "select2___select2_3.5.2_browserify.tgz";
+        url  = "https://registry.yarnpkg.com/select2/-/select2-3.5.2-browserify.tgz";
+        sha1 = "dc4dafda38d67a734e8a97a46f0d3529ae05391d";
+      };
+    }
+    {
+      name = "select___select_1.1.2.tgz";
+      path = fetchurl {
+        name = "select___select_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/select/-/select-1.1.2.tgz";
+        sha1 = "0e7350acdec80b1108528786ec1d4418d11b396d";
+      };
+    }
+    {
+      name = "selfsigned___selfsigned_1.10.7.tgz";
+      path = fetchurl {
+        name = "selfsigned___selfsigned_1.10.7.tgz";
+        url  = "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.7.tgz";
+        sha1 = "da5819fd049d5574f28e88a9bcc6dbc6e6f3906b";
+      };
+    }
+    {
+      name = "semver_diff___semver_diff_2.1.0.tgz";
+      path = fetchurl {
+        name = "semver_diff___semver_diff_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/semver-diff/-/semver-diff-2.1.0.tgz";
+        sha1 = "4bbb8437c8d37e4b0cf1a68fd726ec6d645d6d36";
+      };
+    }
+    {
+      name = "semver___semver_5.7.1.tgz";
+      path = fetchurl {
+        name = "semver___semver_5.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz";
+        sha1 = "a954f931aeba508d307bbf069eff0c01c96116f7";
+      };
+    }
+    {
+      name = "semver___semver_7.0.0.tgz";
+      path = fetchurl {
+        name = "semver___semver_7.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz";
+        sha1 = "5f3ca35761e47e05b206c6daff2cf814f0316b8e";
+      };
+    }
+    {
+      name = "semver___semver_6.3.0.tgz";
+      path = fetchurl {
+        name = "semver___semver_6.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz";
+        sha1 = "ee0a64c8af5e8ceea67687b133761e1becbd1d3d";
+      };
+    }
+    {
+      name = "semver___semver_5.3.0.tgz";
+      path = fetchurl {
+        name = "semver___semver_5.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz";
+        sha1 = "9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f";
+      };
+    }
+    {
+      name = "send___send_0.17.1.tgz";
+      path = fetchurl {
+        name = "send___send_0.17.1.tgz";
+        url  = "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz";
+        sha1 = "c1d8b059f7900f7466dd4938bdc44e11ddb376c8";
+      };
+    }
+    {
+      name = "serialize_javascript___serialize_javascript_2.1.2.tgz";
+      path = fetchurl {
+        name = "serialize_javascript___serialize_javascript_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.2.tgz";
+        sha1 = "ecec53b0e0317bdc95ef76ab7074b7384785fa61";
+      };
+    }
+    {
+      name = "serve_index___serve_index_1.9.1.tgz";
+      path = fetchurl {
+        name = "serve_index___serve_index_1.9.1.tgz";
+        url  = "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz";
+        sha1 = "d3768d69b1e7d82e5ce050fff5b453bea12a9239";
+      };
+    }
+    {
+      name = "serve_static___serve_static_1.14.1.tgz";
+      path = fetchurl {
+        name = "serve_static___serve_static_1.14.1.tgz";
+        url  = "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.1.tgz";
+        sha1 = "666e636dc4f010f7ef29970a88a674320898b2f9";
+      };
+    }
+    {
+      name = "set_blocking___set_blocking_2.0.0.tgz";
+      path = fetchurl {
+        name = "set_blocking___set_blocking_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz";
+        sha1 = "045f9782d011ae9a6803ddd382b24392b3d890f7";
+      };
+    }
+    {
+      name = "set_value___set_value_2.0.1.tgz";
+      path = fetchurl {
+        name = "set_value___set_value_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz";
+        sha1 = "a18d40530e6f07de4228c7defe4227af8cad005b";
+      };
+    }
+    {
+      name = "setimmediate___setimmediate_1.0.5.tgz";
+      path = fetchurl {
+        name = "setimmediate___setimmediate_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz";
+        sha1 = "290cbb232e306942d7d7ea9b83732ab7856f8285";
+      };
+    }
+    {
+      name = "setprototypeof___setprototypeof_1.0.3.tgz";
+      path = fetchurl {
+        name = "setprototypeof___setprototypeof_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz";
+        sha1 = "66567e37043eeb4f04d91bd658c0cbefb55b8e04";
+      };
+    }
+    {
+      name = "setprototypeof___setprototypeof_1.1.1.tgz";
+      path = fetchurl {
+        name = "setprototypeof___setprototypeof_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.1.tgz";
+        sha1 = "7e95acb24aa92f5885e0abef5ba131330d4ae683";
+      };
+    }
+    {
+      name = "sha.js___sha.js_2.4.10.tgz";
+      path = fetchurl {
+        name = "sha.js___sha.js_2.4.10.tgz";
+        url  = "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.10.tgz";
+        sha1 = "b1fde5cd7d11a5626638a07c604ab909cfa31f9b";
+      };
+    }
+    {
+      name = "shallow_clone___shallow_clone_3.0.1.tgz";
+      path = fetchurl {
+        name = "shallow_clone___shallow_clone_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz";
+        sha1 = "8f2981ad92531f55035b01fb230769a40e02efa3";
+      };
+    }
+    {
+      name = "shebang_command___shebang_command_1.2.0.tgz";
+      path = fetchurl {
+        name = "shebang_command___shebang_command_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz";
+        sha1 = "44aac65b695b03398968c39f363fee5deafdf1ea";
+      };
+    }
+    {
+      name = "shebang_regex___shebang_regex_1.0.0.tgz";
+      path = fetchurl {
+        name = "shebang_regex___shebang_regex_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz";
+        sha1 = "da42f49740c0b42db2ca9728571cb190c98efea3";
+      };
+    }
+    {
+      name = "shellwords___shellwords_0.1.1.tgz";
+      path = fetchurl {
+        name = "shellwords___shellwords_0.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz";
+        sha1 = "d6b9181c1a48d397324c84871efbcfc73fc0654b";
+      };
+    }
+    {
+      name = "sigmund___sigmund_1.0.1.tgz";
+      path = fetchurl {
+        name = "sigmund___sigmund_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz";
+        sha1 = "3ff21f198cad2175f9f3b781853fd94d0d19b590";
+      };
+    }
+    {
+      name = "signal_exit___signal_exit_3.0.2.tgz";
+      path = fetchurl {
+        name = "signal_exit___signal_exit_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz";
+        sha1 = "b5fdc08f1287ea1178628e415e25132b73646c6d";
+      };
+    }
+    {
+      name = "sisteransi___sisteransi_1.0.0.tgz";
+      path = fetchurl {
+        name = "sisteransi___sisteransi_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.0.tgz";
+        sha1 = "77d9622ff909080f1c19e5f4a1df0c1b0a27b88c";
+      };
+    }
+    {
+      name = "slash___slash_1.0.0.tgz";
+      path = fetchurl {
+        name = "slash___slash_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz";
+        sha1 = "c41f2f6c39fc16d1cd17ad4b5d896114ae470d55";
+      };
+    }
+    {
+      name = "slash___slash_2.0.0.tgz";
+      path = fetchurl {
+        name = "slash___slash_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz";
+        sha1 = "de552851a1759df3a8f206535442f5ec4ddeab44";
+      };
+    }
+    {
+      name = "slash___slash_3.0.0.tgz";
+      path = fetchurl {
+        name = "slash___slash_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz";
+        sha1 = "6539be870c165adbd5240220dbe361f1bc4d4634";
+      };
+    }
+    {
+      name = "slice_ansi___slice_ansi_2.1.0.tgz";
+      path = fetchurl {
+        name = "slice_ansi___slice_ansi_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz";
+        sha1 = "cacd7693461a637a5788d92a7dd4fba068e81636";
+      };
+    }
+    {
+      name = "slugify___slugify_1.3.1.tgz";
+      path = fetchurl {
+        name = "slugify___slugify_1.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/slugify/-/slugify-1.3.1.tgz";
+        sha1 = "f572127e8535329fbc6c1edb74ab856b61ad7de2";
+      };
+    }
+    {
+      name = "smooshpack___smooshpack_0.0.62.tgz";
+      path = fetchurl {
+        name = "smooshpack___smooshpack_0.0.62.tgz";
+        url  = "https://registry.yarnpkg.com/smooshpack/-/smooshpack-0.0.62.tgz";
+        sha1 = "cb31b9f808f73de3146b050f84d044eb353b5503";
+      };
+    }
+    {
+      name = "snapdragon_node___snapdragon_node_2.1.1.tgz";
+      path = fetchurl {
+        name = "snapdragon_node___snapdragon_node_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz";
+        sha1 = "6c175f86ff14bdb0724563e8f3c1b021a286853b";
+      };
+    }
+    {
+      name = "snapdragon_util___snapdragon_util_3.0.1.tgz";
+      path = fetchurl {
+        name = "snapdragon_util___snapdragon_util_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz";
+        sha1 = "f956479486f2acd79700693f6f7b805e45ab56e2";
+      };
+    }
+    {
+      name = "snapdragon___snapdragon_0.8.2.tgz";
+      path = fetchurl {
+        name = "snapdragon___snapdragon_0.8.2.tgz";
+        url  = "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz";
+        sha1 = "64922e7c565b0e14204ba1aa7d6964278d25182d";
+      };
+    }
+    {
+      name = "socket.io_adapter___socket.io_adapter_1.1.1.tgz";
+      path = fetchurl {
+        name = "socket.io_adapter___socket.io_adapter_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-1.1.1.tgz";
+        sha1 = "2a805e8a14d6372124dd9159ad4502f8cb07f06b";
+      };
+    }
+    {
+      name = "socket.io_client___socket.io_client_2.1.1.tgz";
+      path = fetchurl {
+        name = "socket.io_client___socket.io_client_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/socket.io-client/-/socket.io-client-2.1.1.tgz";
+        sha1 = "dcb38103436ab4578ddb026638ae2f21b623671f";
+      };
+    }
+    {
+      name = "socket.io_parser___socket.io_parser_3.2.0.tgz";
+      path = fetchurl {
+        name = "socket.io_parser___socket.io_parser_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-3.2.0.tgz";
+        sha1 = "e7c6228b6aa1f814e6148aea325b51aa9499e077";
+      };
+    }
+    {
+      name = "socket.io___socket.io_2.1.1.tgz";
+      path = fetchurl {
+        name = "socket.io___socket.io_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/socket.io/-/socket.io-2.1.1.tgz";
+        sha1 = "a069c5feabee3e6b214a75b40ce0652e1cfb9980";
+      };
+    }
+    {
+      name = "sockjs_client___sockjs_client_1.4.0.tgz";
+      path = fetchurl {
+        name = "sockjs_client___sockjs_client_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.4.0.tgz";
+        sha1 = "c9f2568e19c8fd8173b4997ea3420e0bb306c7d5";
+      };
+    }
+    {
+      name = "sockjs___sockjs_0.3.19.tgz";
+      path = fetchurl {
+        name = "sockjs___sockjs_0.3.19.tgz";
+        url  = "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.19.tgz";
+        sha1 = "d976bbe800af7bd20ae08598d582393508993c0d";
+      };
+    }
+    {
+      name = "sortablejs___sortablejs_1.10.2.tgz";
+      path = fetchurl {
+        name = "sortablejs___sortablejs_1.10.2.tgz";
+        url  = "https://registry.yarnpkg.com/sortablejs/-/sortablejs-1.10.2.tgz";
+        sha1 = "6e40364d913f98b85a14f6678f92b5c1221f5290";
+      };
+    }
+    {
+      name = "source_list_map___source_list_map_2.0.0.tgz";
+      path = fetchurl {
+        name = "source_list_map___source_list_map_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.0.tgz";
+        sha1 = "aaa47403f7b245a92fbc97ea08f250d6087ed085";
+      };
+    }
+    {
+      name = "source_map_resolve___source_map_resolve_0.5.2.tgz";
+      path = fetchurl {
+        name = "source_map_resolve___source_map_resolve_0.5.2.tgz";
+        url  = "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz";
+        sha1 = "72e2cc34095543e43b2c62b2c4c10d4a9054f259";
+      };
+    }
+    {
+      name = "source_map_support___source_map_support_0.5.13.tgz";
+      path = fetchurl {
+        name = "source_map_support___source_map_support_0.5.13.tgz";
+        url  = "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz";
+        sha1 = "31b24a9c2e73c2de85066c0feb7d44767ed52932";
+      };
+    }
+    {
+      name = "source_map_url___source_map_url_0.4.0.tgz";
+      path = fetchurl {
+        name = "source_map_url___source_map_url_0.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz";
+        sha1 = "3e935d7ddd73631b97659956d55128e87b5084a3";
+      };
+    }
+    {
+      name = "source_map___source_map_0.5.0.tgz";
+      path = fetchurl {
+        name = "source_map___source_map_0.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/source-map/-/source-map-0.5.0.tgz";
+        sha1 = "0fe96503ac86a5adb5de63f4e412ae4872cdbe86";
+      };
+    }
+    {
+      name = "source_map___source_map_0.4.4.tgz";
+      path = fetchurl {
+        name = "source_map___source_map_0.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz";
+        sha1 = "eba4f5da9c0dc999de68032d8b4f76173652036b";
+      };
+    }
+    {
+      name = "source_map___source_map_0.5.7.tgz";
+      path = fetchurl {
+        name = "source_map___source_map_0.5.7.tgz";
+        url  = "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz";
+        sha1 = "8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc";
+      };
+    }
+    {
+      name = "source_map___source_map_0.6.1.tgz";
+      path = fetchurl {
+        name = "source_map___source_map_0.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz";
+        sha1 = "74722af32e9614e9c287a8d0bbde48b5e2f1a263";
+      };
+    }
+    {
+      name = "source_map___source_map_0.7.3.tgz";
+      path = fetchurl {
+        name = "source_map___source_map_0.7.3.tgz";
+        url  = "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz";
+        sha1 = "5302f8169031735226544092e64981f751750383";
+      };
+    }
+    {
+      name = "spdx_correct___spdx_correct_1.0.2.tgz";
+      path = fetchurl {
+        name = "spdx_correct___spdx_correct_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz";
+        sha1 = "4b3073d933ff51f3912f03ac5519498a4150db40";
+      };
+    }
+    {
+      name = "spdx_expression_parse___spdx_expression_parse_1.0.4.tgz";
+      path = fetchurl {
+        name = "spdx_expression_parse___spdx_expression_parse_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz";
+        sha1 = "9bdf2f20e1f40ed447fbe273266191fced51626c";
+      };
+    }
+    {
+      name = "spdx_license_ids___spdx_license_ids_1.2.2.tgz";
+      path = fetchurl {
+        name = "spdx_license_ids___spdx_license_ids_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz";
+        sha1 = "c9df7a3424594ade6bd11900d596696dc06bac57";
+      };
+    }
+    {
+      name = "spdy_transport___spdy_transport_3.0.0.tgz";
+      path = fetchurl {
+        name = "spdy_transport___spdy_transport_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz";
+        sha1 = "00d4863a6400ad75df93361a1608605e5dcdcf31";
+      };
+    }
+    {
+      name = "spdy___spdy_4.0.1.tgz";
+      path = fetchurl {
+        name = "spdy___spdy_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/spdy/-/spdy-4.0.1.tgz";
+        sha1 = "6f12ed1c5db7ea4f24ebb8b89ba58c87c08257f2";
+      };
+    }
+    {
+      name = "specificity___specificity_0.4.1.tgz";
+      path = fetchurl {
+        name = "specificity___specificity_0.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/specificity/-/specificity-0.4.1.tgz";
+        sha1 = "aab5e645012db08ba182e151165738d00887b019";
+      };
+    }
+    {
+      name = "split_string___split_string_3.1.0.tgz";
+      path = fetchurl {
+        name = "split_string___split_string_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz";
+        sha1 = "7cb09dda3a86585705c64b39a6466038682e8fe2";
+      };
+    }
+    {
+      name = "sprintf_js___sprintf_js_1.0.3.tgz";
+      path = fetchurl {
+        name = "sprintf_js___sprintf_js_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz";
+        sha1 = "04e6926f662895354f3dd015203633b857297e2c";
+      };
+    }
+    {
+      name = "sql.js___sql.js_0.4.0.tgz";
+      path = fetchurl {
+        name = "sql.js___sql.js_0.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/sql.js/-/sql.js-0.4.0.tgz";
+        sha1 = "23be9635520eb0ff43a741e7e830397266e88445";
+      };
+    }
+    {
+      name = "srcset___srcset_2.0.1.tgz";
+      path = fetchurl {
+        name = "srcset___srcset_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/srcset/-/srcset-2.0.1.tgz";
+        sha1 = "8f842d357487eb797f413d9c309de7a5149df5ac";
+      };
+    }
+    {
+      name = "sshpk___sshpk_1.15.2.tgz";
+      path = fetchurl {
+        name = "sshpk___sshpk_1.15.2.tgz";
+        url  = "https://registry.yarnpkg.com/sshpk/-/sshpk-1.15.2.tgz";
+        sha1 = "c946d6bd9b1a39d0e8635763f5242d6ed6dcb629";
+      };
+    }
+    {
+      name = "ssri___ssri_6.0.1.tgz";
+      path = fetchurl {
+        name = "ssri___ssri_6.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/ssri/-/ssri-6.0.1.tgz";
+        sha1 = "2a3c41b28dd45b62b63676ecb74001265ae9edd8";
+      };
+    }
+    {
+      name = "ssri___ssri_7.1.0.tgz";
+      path = fetchurl {
+        name = "ssri___ssri_7.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/ssri/-/ssri-7.1.0.tgz";
+        sha1 = "92c241bf6de82365b5c7fb4bd76e975522e1294d";
+      };
+    }
+    {
+      name = "stack_utils___stack_utils_1.0.2.tgz";
+      path = fetchurl {
+        name = "stack_utils___stack_utils_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.2.tgz";
+        sha1 = "33eba3897788558bebfc2db059dc158ec36cebb8";
+      };
+    }
+    {
+      name = "state_toggle___state_toggle_1.0.1.tgz";
+      path = fetchurl {
+        name = "state_toggle___state_toggle_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/state-toggle/-/state-toggle-1.0.1.tgz";
+        sha1 = "c3cb0974f40a6a0f8e905b96789eb41afa1cde3a";
+      };
+    }
+    {
+      name = "static_extend___static_extend_0.1.2.tgz";
+      path = fetchurl {
+        name = "static_extend___static_extend_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz";
+        sha1 = "60809c39cbff55337226fd5e0b520f341f1fb5c6";
+      };
+    }
+    {
+      name = "statuses___statuses_1.5.0.tgz";
+      path = fetchurl {
+        name = "statuses___statuses_1.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz";
+        sha1 = "161c7dac177659fd9811f43771fa99381478628c";
+      };
+    }
+    {
+      name = "statuses___statuses_1.3.1.tgz";
+      path = fetchurl {
+        name = "statuses___statuses_1.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz";
+        sha1 = "faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e";
+      };
+    }
+    {
+      name = "stdout_stream___stdout_stream_1.4.1.tgz";
+      path = fetchurl {
+        name = "stdout_stream___stdout_stream_1.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.1.tgz";
+        sha1 = "5ac174cdd5cd726104aa0c0b2bd83815d8d535de";
+      };
+    }
+    {
+      name = "stealthy_require___stealthy_require_1.1.1.tgz";
+      path = fetchurl {
+        name = "stealthy_require___stealthy_require_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz";
+        sha1 = "35b09875b4ff49f26a777e509b3090a3226bf24b";
+      };
+    }
+    {
+      name = "stickyfilljs___stickyfilljs_2.1.0.tgz";
+      path = fetchurl {
+        name = "stickyfilljs___stickyfilljs_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/stickyfilljs/-/stickyfilljs-2.1.0.tgz";
+        sha1 = "46dabb599d8275d185bdb97db597f86a2e3afa7b";
+      };
+    }
+    {
+      name = "stream_browserify___stream_browserify_2.0.1.tgz";
+      path = fetchurl {
+        name = "stream_browserify___stream_browserify_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz";
+        sha1 = "66266ee5f9bdb9940a4e4514cafb43bb71e5c9db";
+      };
+    }
+    {
+      name = "stream_each___stream_each_1.2.2.tgz";
+      path = fetchurl {
+        name = "stream_each___stream_each_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.2.tgz";
+        sha1 = "8e8c463f91da8991778765873fe4d960d8f616bd";
+      };
+    }
+    {
+      name = "stream_http___stream_http_2.8.2.tgz";
+      path = fetchurl {
+        name = "stream_http___stream_http_2.8.2.tgz";
+        url  = "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.2.tgz";
+        sha1 = "4126e8c6b107004465918aa2fc35549e77402c87";
+      };
+    }
+    {
+      name = "stream_shift___stream_shift_1.0.0.tgz";
+      path = fetchurl {
+        name = "stream_shift___stream_shift_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz";
+        sha1 = "d5c752825e5367e786f78e18e445ea223a155952";
+      };
+    }
+    {
+      name = "streamroller___streamroller_1.0.6.tgz";
+      path = fetchurl {
+        name = "streamroller___streamroller_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/streamroller/-/streamroller-1.0.6.tgz";
+        sha1 = "8167d8496ed9f19f05ee4b158d9611321b8cacd9";
+      };
+    }
+    {
+      name = "string_length___string_length_2.0.0.tgz";
+      path = fetchurl {
+        name = "string_length___string_length_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/string-length/-/string-length-2.0.0.tgz";
+        sha1 = "d40dbb686a3ace960c1cffca562bf2c45f8363ed";
+      };
+    }
+    {
+      name = "string_width___string_width_1.0.2.tgz";
+      path = fetchurl {
+        name = "string_width___string_width_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz";
+        sha1 = "118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3";
+      };
+    }
+    {
+      name = "string_width___string_width_2.1.1.tgz";
+      path = fetchurl {
+        name = "string_width___string_width_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz";
+        sha1 = "ab93f27a8dc13d28cac815c462143a6d9012ae9e";
+      };
+    }
+    {
+      name = "string_width___string_width_3.1.0.tgz";
+      path = fetchurl {
+        name = "string_width___string_width_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz";
+        sha1 = "22767be21b62af1081574306f69ac51b62203961";
+      };
+    }
+    {
+      name = "string_width___string_width_4.1.0.tgz";
+      path = fetchurl {
+        name = "string_width___string_width_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/string-width/-/string-width-4.1.0.tgz";
+        sha1 = "ba846d1daa97c3c596155308063e075ed1c99aff";
+      };
+    }
+    {
+      name = "string.prototype.trimleft___string.prototype.trimleft_2.1.1.tgz";
+      path = fetchurl {
+        name = "string.prototype.trimleft___string.prototype.trimleft_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz";
+        sha1 = "9bdb8ac6abd6d602b17a4ed321870d2f8dcefc74";
+      };
+    }
+    {
+      name = "string.prototype.trimright___string.prototype.trimright_2.1.1.tgz";
+      path = fetchurl {
+        name = "string.prototype.trimright___string.prototype.trimright_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz";
+        sha1 = "440314b15996c866ce8a0341894d45186200c5d9";
+      };
+    }
+    {
+      name = "string_decoder___string_decoder_1.1.1.tgz";
+      path = fetchurl {
+        name = "string_decoder___string_decoder_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz";
+        sha1 = "9cf1611ba62685d7030ae9e4ba34149c3af03fc8";
+      };
+    }
+    {
+      name = "string_decoder___string_decoder_0.10.31.tgz";
+      path = fetchurl {
+        name = "string_decoder___string_decoder_0.10.31.tgz";
+        url  = "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz";
+        sha1 = "62e203bc41766c6c28c9fc84301dab1c5310fa94";
+      };
+    }
+    {
+      name = "stringify_entities___stringify_entities_1.3.2.tgz";
+      path = fetchurl {
+        name = "stringify_entities___stringify_entities_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/stringify-entities/-/stringify-entities-1.3.2.tgz";
+        sha1 = "a98417e5471fd227b3e45d3db1861c11caf668f7";
+      };
+    }
+    {
+      name = "strip_ansi___strip_ansi_3.0.1.tgz";
+      path = fetchurl {
+        name = "strip_ansi___strip_ansi_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz";
+        sha1 = "6a385fb8853d952d5ff05d0e8aaf94278dc63dcf";
+      };
+    }
+    {
+      name = "strip_ansi___strip_ansi_4.0.0.tgz";
+      path = fetchurl {
+        name = "strip_ansi___strip_ansi_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz";
+        sha1 = "a8479022eb1ac368a871389b635262c505ee368f";
+      };
+    }
+    {
+      name = "strip_ansi___strip_ansi_5.2.0.tgz";
+      path = fetchurl {
+        name = "strip_ansi___strip_ansi_5.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz";
+        sha1 = "8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae";
+      };
+    }
+    {
+      name = "strip_bom___strip_bom_2.0.0.tgz";
+      path = fetchurl {
+        name = "strip_bom___strip_bom_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz";
+        sha1 = "6219a85616520491f35788bdbf1447a99c7e6b0e";
+      };
+    }
+    {
+      name = "strip_bom___strip_bom_3.0.0.tgz";
+      path = fetchurl {
+        name = "strip_bom___strip_bom_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz";
+        sha1 = "2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3";
+      };
+    }
+    {
+      name = "strip_css_comments___strip_css_comments_3.0.0.tgz";
+      path = fetchurl {
+        name = "strip_css_comments___strip_css_comments_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/strip-css-comments/-/strip-css-comments-3.0.0.tgz";
+        sha1 = "7a5625eff8a2b226cf8947a11254da96e13dae89";
+      };
+    }
+    {
+      name = "strip_eof___strip_eof_1.0.0.tgz";
+      path = fetchurl {
+        name = "strip_eof___strip_eof_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz";
+        sha1 = "bb43ff5598a6eb05d89b59fcd129c983313606bf";
+      };
+    }
+    {
+      name = "strip_indent___strip_indent_1.0.1.tgz";
+      path = fetchurl {
+        name = "strip_indent___strip_indent_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz";
+        sha1 = "0c7962a6adefa7bbd4ac366460a638552ae1a0a2";
+      };
+    }
+    {
+      name = "strip_indent___strip_indent_2.0.0.tgz";
+      path = fetchurl {
+        name = "strip_indent___strip_indent_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/strip-indent/-/strip-indent-2.0.0.tgz";
+        sha1 = "5ef8db295d01e6ed6cbf7aab96998d7822527b68";
+      };
+    }
+    {
+      name = "strip_json_comments___strip_json_comments_3.0.1.tgz";
+      path = fetchurl {
+        name = "strip_json_comments___strip_json_comments_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.0.1.tgz";
+        sha1 = "85713975a91fb87bf1b305cca77395e40d2a64a7";
+      };
+    }
+    {
+      name = "strip_json_comments___strip_json_comments_2.0.1.tgz";
+      path = fetchurl {
+        name = "strip_json_comments___strip_json_comments_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz";
+        sha1 = "3c531942e908c2697c0ec344858c286c7ca0a60a";
+      };
+    }
+    {
+      name = "style_loader___style_loader_1.1.3.tgz";
+      path = fetchurl {
+        name = "style_loader___style_loader_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/style-loader/-/style-loader-1.1.3.tgz";
+        sha1 = "9e826e69c683c4d9bf9db924f85e9abb30d5e200";
+      };
+    }
+    {
+      name = "style_search___style_search_0.1.0.tgz";
+      path = fetchurl {
+        name = "style_search___style_search_0.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/style-search/-/style-search-0.1.0.tgz";
+        sha1 = "7958c793e47e32e07d2b5cafe5c0bf8e12e77902";
+      };
+    }
+    {
+      name = "stylelint_config_recommended___stylelint_config_recommended_2.2.0.tgz";
+      path = fetchurl {
+        name = "stylelint_config_recommended___stylelint_config_recommended_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/stylelint-config-recommended/-/stylelint-config-recommended-2.2.0.tgz";
+        sha1 = "46ab139db4a0e7151fd5f94af155512886c96d3f";
+      };
+    }
+    {
+      name = "stylelint_scss___stylelint_scss_3.9.2.tgz";
+      path = fetchurl {
+        name = "stylelint_scss___stylelint_scss_3.9.2.tgz";
+        url  = "https://registry.yarnpkg.com/stylelint-scss/-/stylelint-scss-3.9.2.tgz";
+        sha1 = "5435174a57696ee52eae40146778a4e62f7ed3a3";
+      };
+    }
+    {
+      name = "stylelint___stylelint_10.1.0.tgz";
+      path = fetchurl {
+        name = "stylelint___stylelint_10.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/stylelint/-/stylelint-10.1.0.tgz";
+        sha1 = "1bc4c4ce878107e7c396b19226d91ba28268911a";
+      };
+    }
+    {
+      name = "sugarss___sugarss_2.0.0.tgz";
+      path = fetchurl {
+        name = "sugarss___sugarss_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/sugarss/-/sugarss-2.0.0.tgz";
+        sha1 = "ddd76e0124b297d40bf3cca31c8b22ecb43bc61d";
+      };
+    }
+    {
+      name = "supports_color___supports_color_6.1.0.tgz";
+      path = fetchurl {
+        name = "supports_color___supports_color_6.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz";
+        sha1 = "0764abc69c63d5ac842dd4867e8d025e880df8f3";
+      };
+    }
+    {
+      name = "supports_color___supports_color_2.0.0.tgz";
+      path = fetchurl {
+        name = "supports_color___supports_color_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz";
+        sha1 = "535d045ce6b6363fa40117084629995e9df324c7";
+      };
+    }
+    {
+      name = "supports_color___supports_color_5.5.0.tgz";
+      path = fetchurl {
+        name = "supports_color___supports_color_5.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz";
+        sha1 = "e2e69a44ac8772f78a1ec0b35b689df6530efc8f";
+      };
+    }
+    {
+      name = "supports_color___supports_color_7.1.0.tgz";
+      path = fetchurl {
+        name = "supports_color___supports_color_7.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz";
+        sha1 = "68e32591df73e25ad1c4b49108a2ec507962bfd1";
+      };
+    }
+    {
+      name = "svg_tags___svg_tags_1.0.0.tgz";
+      path = fetchurl {
+        name = "svg_tags___svg_tags_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/svg-tags/-/svg-tags-1.0.0.tgz";
+        sha1 = "58f71cee3bd519b59d4b2a843b6c7de64ac04764";
+      };
+    }
+    {
+      name = "svg4everybody___svg4everybody_2.1.9.tgz";
+      path = fetchurl {
+        name = "svg4everybody___svg4everybody_2.1.9.tgz";
+        url  = "https://registry.yarnpkg.com/svg4everybody/-/svg4everybody-2.1.9.tgz";
+        sha1 = "5bd9f6defc133859a044646d4743fabc28db7e2d";
+      };
+    }
+    {
+      name = "swagger_ui_dist___swagger_ui_dist_3.26.2.tgz";
+      path = fetchurl {
+        name = "swagger_ui_dist___swagger_ui_dist_3.26.2.tgz";
+        url  = "https://registry.yarnpkg.com/swagger-ui-dist/-/swagger-ui-dist-3.26.2.tgz";
+        sha1 = "22c700906c8911b1c9956da6c3fca371dba6219f";
+      };
+    }
+    {
+      name = "symbol_observable___symbol_observable_1.2.0.tgz";
+      path = fetchurl {
+        name = "symbol_observable___symbol_observable_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz";
+        sha1 = "c22688aed4eab3cdc2dfeacbb561660560a00804";
+      };
+    }
+    {
+      name = "symbol_tree___symbol_tree_3.2.2.tgz";
+      path = fetchurl {
+        name = "symbol_tree___symbol_tree_3.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz";
+        sha1 = "ae27db38f660a7ae2e1c3b7d1bc290819b8519e6";
+      };
+    }
+    {
+      name = "table___table_5.4.4.tgz";
+      path = fetchurl {
+        name = "table___table_5.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/table/-/table-5.4.4.tgz";
+        sha1 = "6e0f88fdae3692793d1077fd172a4667afe986a6";
+      };
+    }
+    {
+      name = "taffydb___taffydb_2.6.2.tgz";
+      path = fetchurl {
+        name = "taffydb___taffydb_2.6.2.tgz";
+        url  = "https://registry.yarnpkg.com/taffydb/-/taffydb-2.6.2.tgz";
+        sha1 = "7cbcb64b5a141b6a2efc2c5d2c67b4e150b2a268";
+      };
+    }
+    {
+      name = "tapable___tapable_0.1.10.tgz";
+      path = fetchurl {
+        name = "tapable___tapable_0.1.10.tgz";
+        url  = "https://registry.yarnpkg.com/tapable/-/tapable-0.1.10.tgz";
+        sha1 = "29c35707c2b70e50d07482b5d202e8ed446dafd4";
+      };
+    }
+    {
+      name = "tapable___tapable_1.1.3.tgz";
+      path = fetchurl {
+        name = "tapable___tapable_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz";
+        sha1 = "a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2";
+      };
+    }
+    {
+      name = "tar___tar_2.2.2.tgz";
+      path = fetchurl {
+        name = "tar___tar_2.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/tar/-/tar-2.2.2.tgz";
+        sha1 = "0ca8848562c7299b8b446ff6a4d60cdbb23edc40";
+      };
+    }
+    {
+      name = "tar___tar_4.4.8.tgz";
+      path = fetchurl {
+        name = "tar___tar_4.4.8.tgz";
+        url  = "https://registry.yarnpkg.com/tar/-/tar-4.4.8.tgz";
+        sha1 = "b19eec3fde2a96e64666df9fdb40c5ca1bc3747d";
+      };
+    }
+    {
+      name = "term_size___term_size_1.2.0.tgz";
+      path = fetchurl {
+        name = "term_size___term_size_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/term-size/-/term-size-1.2.0.tgz";
+        sha1 = "458b83887f288fc56d6fffbfad262e26638efa69";
+      };
+    }
+    {
+      name = "terser_webpack_plugin___terser_webpack_plugin_1.4.3.tgz";
+      path = fetchurl {
+        name = "terser_webpack_plugin___terser_webpack_plugin_1.4.3.tgz";
+        url  = "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.3.tgz";
+        sha1 = "5ecaf2dbdc5fb99745fd06791f46fc9ddb1c9a7c";
+      };
+    }
+    {
+      name = "terser___terser_4.3.1.tgz";
+      path = fetchurl {
+        name = "terser___terser_4.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/terser/-/terser-4.3.1.tgz";
+        sha1 = "09820bcb3398299c4b48d9a86aefc65127d0ed65";
+      };
+    }
+    {
+      name = "test_exclude___test_exclude_5.0.0.tgz";
+      path = fetchurl {
+        name = "test_exclude___test_exclude_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/test-exclude/-/test-exclude-5.0.0.tgz";
+        sha1 = "cdce7cece785e0e829cd5c2b27baf18bc583cfb7";
+      };
+    }
+    {
+      name = "text_table___text_table_0.2.0.tgz";
+      path = fetchurl {
+        name = "text_table___text_table_0.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz";
+        sha1 = "7f5ee823ae805207c00af2df4a84ec3fcfa570b4";
+      };
+    }
+    {
+      name = "textextensions___textextensions_2.2.0.tgz";
+      path = fetchurl {
+        name = "textextensions___textextensions_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/textextensions/-/textextensions-2.2.0.tgz";
+        sha1 = "38ac676151285b658654581987a0ce1a4490d286";
+      };
+    }
+    {
+      name = "three_orbit_controls___three_orbit_controls_82.1.0.tgz";
+      path = fetchurl {
+        name = "three_orbit_controls___three_orbit_controls_82.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/three-orbit-controls/-/three-orbit-controls-82.1.0.tgz";
+        sha1 = "11a7f33d0a20ecec98f098b37780f6537374fab4";
+      };
+    }
+    {
+      name = "three_stl_loader___three_stl_loader_1.0.4.tgz";
+      path = fetchurl {
+        name = "three_stl_loader___three_stl_loader_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/three-stl-loader/-/three-stl-loader-1.0.4.tgz";
+        sha1 = "6b3319a31e3b910aab1883d19b00c81a663c3e03";
+      };
+    }
+    {
+      name = "three___three_0.84.0.tgz";
+      path = fetchurl {
+        name = "three___three_0.84.0.tgz";
+        url  = "https://registry.yarnpkg.com/three/-/three-0.84.0.tgz";
+        sha1 = "95be85a55a0fa002aa625ed559130957dcffd918";
+      };
+    }
+    {
+      name = "throat___throat_4.1.0.tgz";
+      path = fetchurl {
+        name = "throat___throat_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz";
+        sha1 = "89037cbc92c56ab18926e6ba4cbb200e15672a6a";
+      };
+    }
+    {
+      name = "throttle_debounce___throttle_debounce_2.1.0.tgz";
+      path = fetchurl {
+        name = "throttle_debounce___throttle_debounce_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/throttle-debounce/-/throttle-debounce-2.1.0.tgz";
+        sha1 = "257e648f0a56bd9e54fe0f132c4ab8611df4e1d5";
+      };
+    }
+    {
+      name = "through2___through2_2.0.5.tgz";
+      path = fetchurl {
+        name = "through2___through2_2.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz";
+        sha1 = "01c1e39eb31d07cb7d03a96a70823260b23132cd";
+      };
+    }
+    {
+      name = "through___through_2.3.8.tgz";
+      path = fetchurl {
+        name = "through___through_2.3.8.tgz";
+        url  = "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz";
+        sha1 = "0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5";
+      };
+    }
+    {
+      name = "thunky___thunky_0.1.0.tgz";
+      path = fetchurl {
+        name = "thunky___thunky_0.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/thunky/-/thunky-0.1.0.tgz";
+        sha1 = "bf30146824e2b6e67b0f2d7a4ac8beb26908684e";
+      };
+    }
+    {
+      name = "timeago.js___timeago.js_4.0.2.tgz";
+      path = fetchurl {
+        name = "timeago.js___timeago.js_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/timeago.js/-/timeago.js-4.0.2.tgz";
+        sha1 = "724e8c8833e3490676c7bb0a75f5daf20e558028";
+      };
+    }
+    {
+      name = "timed_out___timed_out_4.0.1.tgz";
+      path = fetchurl {
+        name = "timed_out___timed_out_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz";
+        sha1 = "f32eacac5a175bea25d7fab565ab3ed8741ef56f";
+      };
+    }
+    {
+      name = "timers_browserify___timers_browserify_2.0.10.tgz";
+      path = fetchurl {
+        name = "timers_browserify___timers_browserify_2.0.10.tgz";
+        url  = "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.10.tgz";
+        sha1 = "1d28e3d2aadf1d5a5996c4e9f95601cd053480ae";
+      };
+    }
+    {
+      name = "timezone_mock___timezone_mock_1.0.8.tgz";
+      path = fetchurl {
+        name = "timezone_mock___timezone_mock_1.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/timezone-mock/-/timezone-mock-1.0.8.tgz";
+        sha1 = "1b9f7af13f2bf84b7aa3d3d6e24aa17255b6037d";
+      };
+    }
+    {
+      name = "tiny_emitter___tiny_emitter_2.0.2.tgz";
+      path = fetchurl {
+        name = "tiny_emitter___tiny_emitter_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.0.2.tgz";
+        sha1 = "82d27468aca5ade8e5fd1e6d22b57dd43ebdfb7c";
+      };
+    }
+    {
+      name = "tiptap_commands___tiptap_commands_1.4.0.tgz";
+      path = fetchurl {
+        name = "tiptap_commands___tiptap_commands_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/tiptap-commands/-/tiptap-commands-1.4.0.tgz";
+        sha1 = "0cfb3ac138ee3099de56114cb119abd841fbcbe7";
+      };
+    }
+    {
+      name = "tiptap_extensions___tiptap_extensions_1.8.0.tgz";
+      path = fetchurl {
+        name = "tiptap_extensions___tiptap_extensions_1.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/tiptap-extensions/-/tiptap-extensions-1.8.0.tgz";
+        sha1 = "3067620a024f1a9e5fae4450790b143d7ebe4394";
+      };
+    }
+    {
+      name = "tiptap_utils___tiptap_utils_1.1.1.tgz";
+      path = fetchurl {
+        name = "tiptap_utils___tiptap_utils_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/tiptap-utils/-/tiptap-utils-1.1.1.tgz";
+        sha1 = "e7aad3e84eb35f7abed704d15da0420029789d0d";
+      };
+    }
+    {
+      name = "tiptap___tiptap_1.8.0.tgz";
+      path = fetchurl {
+        name = "tiptap___tiptap_1.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/tiptap/-/tiptap-1.8.0.tgz";
+        sha1 = "c671188075ffa5ee4f86470f95818fd9ce6f1040";
+      };
+    }
+    {
+      name = "tmp___tmp_0.0.33.tgz";
+      path = fetchurl {
+        name = "tmp___tmp_0.0.33.tgz";
+        url  = "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz";
+        sha1 = "6d34335889768d21b2bcda0aa277ced3b1bfadf9";
+      };
+    }
+    {
+      name = "tmpl___tmpl_1.0.4.tgz";
+      path = fetchurl {
+        name = "tmpl___tmpl_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz";
+        sha1 = "23640dd7b42d00433911140820e5cf440e521dd1";
+      };
+    }
+    {
+      name = "to_array___to_array_0.1.4.tgz";
+      path = fetchurl {
+        name = "to_array___to_array_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/to-array/-/to-array-0.1.4.tgz";
+        sha1 = "17e6c11f73dd4f3d74cda7a4ff3238e9ad9bf890";
+      };
+    }
+    {
+      name = "to_arraybuffer___to_arraybuffer_1.0.1.tgz";
+      path = fetchurl {
+        name = "to_arraybuffer___to_arraybuffer_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz";
+        sha1 = "7d229b1fcc637e466ca081180836a7aabff83f43";
+      };
+    }
+    {
+      name = "to_fast_properties___to_fast_properties_2.0.0.tgz";
+      path = fetchurl {
+        name = "to_fast_properties___to_fast_properties_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz";
+        sha1 = "dc5e698cbd079265bc73e0377681a4e4e83f616e";
+      };
+    }
+    {
+      name = "to_object_path___to_object_path_0.3.0.tgz";
+      path = fetchurl {
+        name = "to_object_path___to_object_path_0.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz";
+        sha1 = "297588b7b0e7e0ac08e04e672f85c1f4999e17af";
+      };
+    }
+    {
+      name = "to_regex_range___to_regex_range_2.1.1.tgz";
+      path = fetchurl {
+        name = "to_regex_range___to_regex_range_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz";
+        sha1 = "7c80c17b9dfebe599e27367e0d4dd5590141db38";
+      };
+    }
+    {
+      name = "to_regex_range___to_regex_range_5.0.1.tgz";
+      path = fetchurl {
+        name = "to_regex_range___to_regex_range_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz";
+        sha1 = "1648c44aae7c8d988a326018ed72f5b4dd0392e4";
+      };
+    }
+    {
+      name = "to_regex___to_regex_3.0.2.tgz";
+      path = fetchurl {
+        name = "to_regex___to_regex_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz";
+        sha1 = "13cfdd9b336552f30b51f33a8ae1b42a7a7599ce";
+      };
+    }
+    {
+      name = "toggle_selection___toggle_selection_1.0.6.tgz";
+      path = fetchurl {
+        name = "toggle_selection___toggle_selection_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/toggle-selection/-/toggle-selection-1.0.6.tgz";
+        sha1 = "6e45b1263f2017fa0acc7d89d78b15b8bf77da32";
+      };
+    }
+    {
+      name = "toidentifier___toidentifier_1.0.0.tgz";
+      path = fetchurl {
+        name = "toidentifier___toidentifier_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz";
+        sha1 = "7e1be3470f1e77948bc43d94a3c8f4d7752ba553";
+      };
+    }
+    {
+      name = "touch___touch_3.1.0.tgz";
+      path = fetchurl {
+        name = "touch___touch_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/touch/-/touch-3.1.0.tgz";
+        sha1 = "fe365f5f75ec9ed4e56825e0bb76d24ab74af83b";
+      };
+    }
+    {
+      name = "tough_cookie___tough_cookie_2.4.3.tgz";
+      path = fetchurl {
+        name = "tough_cookie___tough_cookie_2.4.3.tgz";
+        url  = "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz";
+        sha1 = "53f36da3f47783b0925afa06ff9f3b165280f781";
+      };
+    }
+    {
+      name = "tr46___tr46_1.0.1.tgz";
+      path = fetchurl {
+        name = "tr46___tr46_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz";
+        sha1 = "a8b13fd6bfd2489519674ccde55ba3693b706d09";
+      };
+    }
+    {
+      name = "tributejs___tributejs_4.1.3.tgz";
+      path = fetchurl {
+        name = "tributejs___tributejs_4.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/tributejs/-/tributejs-4.1.3.tgz";
+        sha1 = "2e1be7d9a1e403ed4c394f91d859812267e4691c";
+      };
+    }
+    {
+      name = "trim_newlines___trim_newlines_1.0.0.tgz";
+      path = fetchurl {
+        name = "trim_newlines___trim_newlines_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz";
+        sha1 = "5887966bb582a4503a41eb524f7d35011815a613";
+      };
+    }
+    {
+      name = "trim_newlines___trim_newlines_2.0.0.tgz";
+      path = fetchurl {
+        name = "trim_newlines___trim_newlines_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-2.0.0.tgz";
+        sha1 = "b403d0b91be50c331dfc4b82eeceb22c3de16d20";
+      };
+    }
+    {
+      name = "trim_trailing_lines___trim_trailing_lines_1.1.1.tgz";
+      path = fetchurl {
+        name = "trim_trailing_lines___trim_trailing_lines_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/trim-trailing-lines/-/trim-trailing-lines-1.1.1.tgz";
+        sha1 = "e0ec0810fd3c3f1730516b45f49083caaf2774d9";
+      };
+    }
+    {
+      name = "trim___trim_0.0.1.tgz";
+      path = fetchurl {
+        name = "trim___trim_0.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/trim/-/trim-0.0.1.tgz";
+        sha1 = "5858547f6b290757ee95cccc666fb50084c460dd";
+      };
+    }
+    {
+      name = "trough___trough_1.0.3.tgz";
+      path = fetchurl {
+        name = "trough___trough_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/trough/-/trough-1.0.3.tgz";
+        sha1 = "e29bd1614c6458d44869fc28b255ab7857ef7c24";
+      };
+    }
+    {
+      name = "true_case_path___true_case_path_1.0.3.tgz";
+      path = fetchurl {
+        name = "true_case_path___true_case_path_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/true-case-path/-/true-case-path-1.0.3.tgz";
+        sha1 = "f813b5a8c86b40da59606722b144e3225799f47d";
+      };
+    }
+    {
+      name = "try_catch___try_catch_2.0.0.tgz";
+      path = fetchurl {
+        name = "try_catch___try_catch_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/try-catch/-/try-catch-2.0.0.tgz";
+        sha1 = "a491141d597f8b72b46757fe1c47059341a16aed";
+      };
+    }
+    {
+      name = "try_to_catch___try_to_catch_1.1.1.tgz";
+      path = fetchurl {
+        name = "try_to_catch___try_to_catch_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/try-to-catch/-/try-to-catch-1.1.1.tgz";
+        sha1 = "770162dd13b9a0e55da04db5b7f888956072038a";
+      };
+    }
+    {
+      name = "tryer___tryer_1.0.0.tgz";
+      path = fetchurl {
+        name = "tryer___tryer_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/tryer/-/tryer-1.0.0.tgz";
+        sha1 = "027b69fa823225e551cace3ef03b11f6ab37c1d7";
+      };
+    }
+    {
+      name = "ts_invariant___ts_invariant_0.3.2.tgz";
+      path = fetchurl {
+        name = "ts_invariant___ts_invariant_0.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/ts-invariant/-/ts-invariant-0.3.2.tgz";
+        sha1 = "89a2ffeb70879b777258df1df1c59383c35209b0";
+      };
+    }
+    {
+      name = "ts_invariant___ts_invariant_0.4.4.tgz";
+      path = fetchurl {
+        name = "ts_invariant___ts_invariant_0.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/ts-invariant/-/ts-invariant-0.4.4.tgz";
+        sha1 = "97a523518688f93aafad01b0e80eb803eb2abd86";
+      };
+    }
+    {
+      name = "ts_jest___ts_jest_24.0.0.tgz";
+      path = fetchurl {
+        name = "ts_jest___ts_jest_24.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/ts-jest/-/ts-jest-24.0.0.tgz";
+        sha1 = "3f26bf2ec1fa584863a5a9c29bd8717d549efbf6";
+      };
+    }
+    {
+      name = "tslib___tslib_1.11.1.tgz";
+      path = fetchurl {
+        name = "tslib___tslib_1.11.1.tgz";
+        url  = "https://registry.yarnpkg.com/tslib/-/tslib-1.11.1.tgz";
+        sha1 = "eb15d128827fbee2841549e171f45ed338ac7e35";
+      };
+    }
+    {
+      name = "tsutils___tsutils_3.17.1.tgz";
+      path = fetchurl {
+        name = "tsutils___tsutils_3.17.1.tgz";
+        url  = "https://registry.yarnpkg.com/tsutils/-/tsutils-3.17.1.tgz";
+        sha1 = "ed719917f11ca0dee586272b2ac49e015a2dd759";
+      };
+    }
+    {
+      name = "tty_browserify___tty_browserify_0.0.0.tgz";
+      path = fetchurl {
+        name = "tty_browserify___tty_browserify_0.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz";
+        sha1 = "a157ba402da24e9bf957f9aa69d524eed42901a6";
+      };
+    }
+    {
+      name = "tunnel_agent___tunnel_agent_0.6.0.tgz";
+      path = fetchurl {
+        name = "tunnel_agent___tunnel_agent_0.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz";
+        sha1 = "27a5dea06b36b04a0a9966774b290868f0fc40fd";
+      };
+    }
+    {
+      name = "tweetnacl___tweetnacl_0.14.5.tgz";
+      path = fetchurl {
+        name = "tweetnacl___tweetnacl_0.14.5.tgz";
+        url  = "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz";
+        sha1 = "5ae68177f192d4456269d108afa93ff8743f4f64";
+      };
+    }
+    {
+      name = "type_check___type_check_0.3.2.tgz";
+      path = fetchurl {
+        name = "type_check___type_check_0.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz";
+        sha1 = "5884cab512cf1d355e3fb784f30804b2b520db72";
+      };
+    }
+    {
+      name = "type_fest___type_fest_0.5.2.tgz";
+      path = fetchurl {
+        name = "type_fest___type_fest_0.5.2.tgz";
+        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.5.2.tgz";
+        sha1 = "d6ef42a0356c6cd45f49485c3b6281fc148e48a2";
+      };
+    }
+    {
+      name = "type_fest___type_fest_0.8.1.tgz";
+      path = fetchurl {
+        name = "type_fest___type_fest_0.8.1.tgz";
+        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz";
+        sha1 = "09e249ebde851d3b1e48d27c105444667f17b83d";
+      };
+    }
+    {
+      name = "type_is___type_is_1.6.18.tgz";
+      path = fetchurl {
+        name = "type_is___type_is_1.6.18.tgz";
+        url  = "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz";
+        sha1 = "4e552cd05df09467dcbc4ef739de89f2cf37c131";
+      };
+    }
+    {
+      name = "typedarray___typedarray_0.0.6.tgz";
+      path = fetchurl {
+        name = "typedarray___typedarray_0.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz";
+        sha1 = "867ac74e3864187b1d3d47d996a78ec5c8830777";
+      };
+    }
+    {
+      name = "typescript___typescript_3.3.4000.tgz";
+      path = fetchurl {
+        name = "typescript___typescript_3.3.4000.tgz";
+        url  = "https://registry.yarnpkg.com/typescript/-/typescript-3.3.4000.tgz";
+        sha1 = "76b0f89cfdbf97827e1112d64f283f1151d6adf0";
+      };
+    }
+    {
+      name = "uc.micro___uc.micro_1.0.5.tgz";
+      path = fetchurl {
+        name = "uc.micro___uc.micro_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.5.tgz";
+        sha1 = "0c65f15f815aa08b560a61ce8b4db7ffc3f45376";
+      };
+    }
+    {
+      name = "uglify_js___uglify_js_3.6.0.tgz";
+      path = fetchurl {
+        name = "uglify_js___uglify_js_3.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.6.0.tgz";
+        sha1 = "704681345c53a8b2079fb6cec294b05ead242ff5";
+      };
+    }
+    {
+      name = "ultron___ultron_1.1.1.tgz";
+      path = fetchurl {
+        name = "ultron___ultron_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz";
+        sha1 = "9fe1536a10a664a65266a1e3ccf85fd36302bc9c";
+      };
+    }
+    {
+      name = "undefsafe___undefsafe_2.0.2.tgz";
+      path = fetchurl {
+        name = "undefsafe___undefsafe_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/undefsafe/-/undefsafe-2.0.2.tgz";
+        sha1 = "225f6b9e0337663e0d8e7cfd686fc2836ccace76";
+      };
+    }
+    {
+      name = "underscore_contrib___underscore_contrib_0.3.0.tgz";
+      path = fetchurl {
+        name = "underscore_contrib___underscore_contrib_0.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/underscore-contrib/-/underscore-contrib-0.3.0.tgz";
+        sha1 = "665b66c24783f8fa2b18c9f8cbb0e2c7d48c26c7";
+      };
+    }
+    {
+      name = "underscore___underscore_1.6.0.tgz";
+      path = fetchurl {
+        name = "underscore___underscore_1.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/underscore/-/underscore-1.6.0.tgz";
+        sha1 = "8b38b10cacdef63337b8b24e4ff86d45aea529a8";
+      };
+    }
+    {
+      name = "underscore___underscore_1.8.3.tgz";
+      path = fetchurl {
+        name = "underscore___underscore_1.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/underscore/-/underscore-1.8.3.tgz";
+        sha1 = "4f3fb53b106e6097fcf9cb4109f2a5e9bdfa5022";
+      };
+    }
+    {
+      name = "unfetch___unfetch_4.1.0.tgz";
+      path = fetchurl {
+        name = "unfetch___unfetch_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/unfetch/-/unfetch-4.1.0.tgz";
+        sha1 = "6ec2dd0de887e58a4dee83a050ded80ffc4137db";
+      };
+    }
+    {
+      name = "unherit___unherit_1.1.1.tgz";
+      path = fetchurl {
+        name = "unherit___unherit_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/unherit/-/unherit-1.1.1.tgz";
+        sha1 = "132748da3e88eab767e08fabfbb89c5e9d28628c";
+      };
+    }
+    {
+      name = "unicode_canonical_property_names_ecmascript___unicode_canonical_property_names_ecmascript_1.0.4.tgz";
+      path = fetchurl {
+        name = "unicode_canonical_property_names_ecmascript___unicode_canonical_property_names_ecmascript_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz";
+        sha1 = "2619800c4c825800efdd8343af7dd9933cbe2818";
+      };
+    }
+    {
+      name = "unicode_match_property_ecmascript___unicode_match_property_ecmascript_1.0.4.tgz";
+      path = fetchurl {
+        name = "unicode_match_property_ecmascript___unicode_match_property_ecmascript_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz";
+        sha1 = "8ed2a32569961bce9227d09cd3ffbb8fed5f020c";
+      };
+    }
+    {
+      name = "unicode_match_property_value_ecmascript___unicode_match_property_value_ecmascript_1.1.0.tgz";
+      path = fetchurl {
+        name = "unicode_match_property_value_ecmascript___unicode_match_property_value_ecmascript_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz";
+        sha1 = "5b4b426e08d13a80365e0d657ac7a6c1ec46a277";
+      };
+    }
+    {
+      name = "unicode_property_aliases_ecmascript___unicode_property_aliases_ecmascript_1.0.4.tgz";
+      path = fetchurl {
+        name = "unicode_property_aliases_ecmascript___unicode_property_aliases_ecmascript_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.4.tgz";
+        sha1 = "5a533f31b4317ea76f17d807fa0d116546111dd0";
+      };
+    }
+    {
+      name = "unified___unified_7.1.0.tgz";
+      path = fetchurl {
+        name = "unified___unified_7.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/unified/-/unified-7.1.0.tgz";
+        sha1 = "5032f1c1ee3364bd09da12e27fdd4a7553c7be13";
+      };
+    }
+    {
+      name = "union_value___union_value_1.0.1.tgz";
+      path = fetchurl {
+        name = "union_value___union_value_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz";
+        sha1 = "0b6fe7b835aecda61c6ea4d4f02c14221e109847";
+      };
+    }
+    {
+      name = "uniq___uniq_1.0.1.tgz";
+      path = fetchurl {
+        name = "uniq___uniq_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz";
+        sha1 = "b31c5ae8254844a3a8281541ce2b04b865a734ff";
+      };
+    }
+    {
+      name = "unique_filename___unique_filename_1.1.1.tgz";
+      path = fetchurl {
+        name = "unique_filename___unique_filename_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz";
+        sha1 = "1d69769369ada0583103a1e6ae87681b56573230";
+      };
+    }
+    {
+      name = "unique_slug___unique_slug_2.0.0.tgz";
+      path = fetchurl {
+        name = "unique_slug___unique_slug_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.0.tgz";
+        sha1 = "db6676e7c7cc0629878ff196097c78855ae9f4ab";
+      };
+    }
+    {
+      name = "unique_string___unique_string_1.0.0.tgz";
+      path = fetchurl {
+        name = "unique_string___unique_string_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/unique-string/-/unique-string-1.0.0.tgz";
+        sha1 = "9e1057cca851abb93398f8b33ae187b99caec11a";
+      };
+    }
+    {
+      name = "unist_util_find_all_after___unist_util_find_all_after_1.0.2.tgz";
+      path = fetchurl {
+        name = "unist_util_find_all_after___unist_util_find_all_after_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/unist-util-find-all-after/-/unist-util-find-all-after-1.0.2.tgz";
+        sha1 = "9be49cfbae5ca1566b27536670a92836bf2f8d6d";
+      };
+    }
+    {
+      name = "unist_util_is___unist_util_is_2.1.2.tgz";
+      path = fetchurl {
+        name = "unist_util_is___unist_util_is_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-2.1.2.tgz";
+        sha1 = "1193fa8f2bfbbb82150633f3a8d2eb9a1c1d55db";
+      };
+    }
+    {
+      name = "unist_util_remove_position___unist_util_remove_position_1.1.2.tgz";
+      path = fetchurl {
+        name = "unist_util_remove_position___unist_util_remove_position_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/unist-util-remove-position/-/unist-util-remove-position-1.1.2.tgz";
+        sha1 = "86b5dad104d0bbfbeb1db5f5c92f3570575c12cb";
+      };
+    }
+    {
+      name = "unist_util_stringify_position___unist_util_stringify_position_1.1.2.tgz";
+      path = fetchurl {
+        name = "unist_util_stringify_position___unist_util_stringify_position_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-1.1.2.tgz";
+        sha1 = "3f37fcf351279dcbca7480ab5889bb8a832ee1c6";
+      };
+    }
+    {
+      name = "unist_util_visit_parents___unist_util_visit_parents_2.0.1.tgz";
+      path = fetchurl {
+        name = "unist_util_visit_parents___unist_util_visit_parents_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-2.0.1.tgz";
+        sha1 = "63fffc8929027bee04bfef7d2cce474f71cb6217";
+      };
+    }
+    {
+      name = "unist_util_visit___unist_util_visit_1.4.1.tgz";
+      path = fetchurl {
+        name = "unist_util_visit___unist_util_visit_1.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-1.4.1.tgz";
+        sha1 = "4724aaa8486e6ee6e26d7ff3c8685960d560b1e3";
+      };
+    }
+    {
+      name = "universalify___universalify_0.1.2.tgz";
+      path = fetchurl {
+        name = "universalify___universalify_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz";
+        sha1 = "b646f69be3942dabcecc9d6639c80dc105efaa66";
+      };
+    }
+    {
+      name = "unpipe___unpipe_1.0.0.tgz";
+      path = fetchurl {
+        name = "unpipe___unpipe_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz";
+        sha1 = "b2bf4ee8514aae6165b4817829d21b2ef49904ec";
+      };
+    }
+    {
+      name = "unset_value___unset_value_1.0.0.tgz";
+      path = fetchurl {
+        name = "unset_value___unset_value_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz";
+        sha1 = "8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559";
+      };
+    }
+    {
+      name = "unzip_response___unzip_response_2.0.1.tgz";
+      path = fetchurl {
+        name = "unzip_response___unzip_response_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/unzip-response/-/unzip-response-2.0.1.tgz";
+        sha1 = "d2f0f737d16b0615e72a6935ed04214572d56f97";
+      };
+    }
+    {
+      name = "upath___upath_1.2.0.tgz";
+      path = fetchurl {
+        name = "upath___upath_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz";
+        sha1 = "8f66dbcd55a883acdae4408af8b035a5044c1894";
+      };
+    }
+    {
+      name = "update_notifier___update_notifier_2.5.0.tgz";
+      path = fetchurl {
+        name = "update_notifier___update_notifier_2.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/update-notifier/-/update-notifier-2.5.0.tgz";
+        sha1 = "d0744593e13f161e406acb1d9408b72cad08aff6";
+      };
+    }
+    {
+      name = "upper_case___upper_case_1.1.3.tgz";
+      path = fetchurl {
+        name = "upper_case___upper_case_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz";
+        sha1 = "f6b4501c2ec4cdd26ba78be7222961de77621598";
+      };
+    }
+    {
+      name = "uri_js___uri_js_4.2.2.tgz";
+      path = fetchurl {
+        name = "uri_js___uri_js_4.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz";
+        sha1 = "94c540e1ff772956e2299507c010aea6c8838eb0";
+      };
+    }
+    {
+      name = "urix___urix_0.1.0.tgz";
+      path = fetchurl {
+        name = "urix___urix_0.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz";
+        sha1 = "da937f7a62e21fec1fd18d49b35c2935067a6c72";
+      };
+    }
+    {
+      name = "url_loader___url_loader_3.0.0.tgz";
+      path = fetchurl {
+        name = "url_loader___url_loader_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/url-loader/-/url-loader-3.0.0.tgz";
+        sha1 = "9f1f11b371acf6e51ed15a50db635e02eec18368";
+      };
+    }
+    {
+      name = "url_parse_lax___url_parse_lax_1.0.0.tgz";
+      path = fetchurl {
+        name = "url_parse_lax___url_parse_lax_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz";
+        sha1 = "7af8f303645e9bd79a272e7a14ac68bc0609da73";
+      };
+    }
+    {
+      name = "url_parse___url_parse_1.4.4.tgz";
+      path = fetchurl {
+        name = "url_parse___url_parse_1.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/url-parse/-/url-parse-1.4.4.tgz";
+        sha1 = "cac1556e95faa0303691fec5cf9d5a1bc34648f8";
+      };
+    }
+    {
+      name = "url_search_params_polyfill___url_search_params_polyfill_5.1.0.tgz";
+      path = fetchurl {
+        name = "url_search_params_polyfill___url_search_params_polyfill_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/url-search-params-polyfill/-/url-search-params-polyfill-5.1.0.tgz";
+        sha1 = "f0405dcc2e921bf7f5fdf8c4e616f1e8088ef31b";
+      };
+    }
+    {
+      name = "url___url_0.10.3.tgz";
+      path = fetchurl {
+        name = "url___url_0.10.3.tgz";
+        url  = "https://registry.yarnpkg.com/url/-/url-0.10.3.tgz";
+        sha1 = "021e4d9c7705f21bbf37d03ceb58767402774c64";
+      };
+    }
+    {
+      name = "url___url_0.11.0.tgz";
+      path = fetchurl {
+        name = "url___url_0.11.0.tgz";
+        url  = "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz";
+        sha1 = "3838e97cfc60521eb73c525a8e55bfdd9e2e28f1";
+      };
+    }
+    {
+      name = "use___use_3.1.1.tgz";
+      path = fetchurl {
+        name = "use___use_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz";
+        sha1 = "d50c8cac79a19fbc20f2911f56eb973f4e10070f";
+      };
+    }
+    {
+      name = "useragent___useragent_2.3.0.tgz";
+      path = fetchurl {
+        name = "useragent___useragent_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/useragent/-/useragent-2.3.0.tgz";
+        sha1 = "217f943ad540cb2128658ab23fc960f6a88c9972";
+      };
+    }
+    {
+      name = "util_deprecate___util_deprecate_1.0.2.tgz";
+      path = fetchurl {
+        name = "util_deprecate___util_deprecate_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz";
+        sha1 = "450d4dc9fa70de732762fbd2d4a28981419a0ccf";
+      };
+    }
+    {
+      name = "util.promisify___util.promisify_1.0.0.tgz";
+      path = fetchurl {
+        name = "util.promisify___util.promisify_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz";
+        sha1 = "440f7165a459c9a16dc145eb8e72f35687097030";
+      };
+    }
+    {
+      name = "util___util_0.10.3.tgz";
+      path = fetchurl {
+        name = "util___util_0.10.3.tgz";
+        url  = "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz";
+        sha1 = "7afb1afe50805246489e3db7fe0ed379336ac0f9";
+      };
+    }
+    {
+      name = "util___util_0.11.1.tgz";
+      path = fetchurl {
+        name = "util___util_0.11.1.tgz";
+        url  = "https://registry.yarnpkg.com/util/-/util-0.11.1.tgz";
+        sha1 = "3236733720ec64bb27f6e26f421aaa2e1b588d61";
+      };
+    }
+    {
+      name = "utils_merge___utils_merge_1.0.1.tgz";
+      path = fetchurl {
+        name = "utils_merge___utils_merge_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz";
+        sha1 = "9f95710f50a267947b2ccc124741c1028427e713";
+      };
+    }
+    {
+      name = "uuid___uuid_3.3.2.tgz";
+      path = fetchurl {
+        name = "uuid___uuid_3.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz";
+        sha1 = "1b4af4955eb3077c501c23872fc6513811587131";
+      };
+    }
+    {
+      name = "v8_compile_cache___v8_compile_cache_2.0.3.tgz";
+      path = fetchurl {
+        name = "v8_compile_cache___v8_compile_cache_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.0.3.tgz";
+        sha1 = "00f7494d2ae2b688cfe2899df6ed2c54bef91dbe";
+      };
+    }
+    {
+      name = "validate_npm_package_license___validate_npm_package_license_3.0.1.tgz";
+      path = fetchurl {
+        name = "validate_npm_package_license___validate_npm_package_license_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz";
+        sha1 = "2804babe712ad3379459acfbe24746ab2c303fbc";
+      };
+    }
+    {
+      name = "vary___vary_1.1.2.tgz";
+      path = fetchurl {
+        name = "vary___vary_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz";
+        sha1 = "2299f02c6ded30d4a5961b0b9f74524a18f634fc";
+      };
+    }
+    {
+      name = "verror___verror_1.10.0.tgz";
+      path = fetchurl {
+        name = "verror___verror_1.10.0.tgz";
+        url  = "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz";
+        sha1 = "3a105ca17053af55d6e270c1f8288682e18da400";
+      };
+    }
+    {
+      name = "vfile_location___vfile_location_2.0.4.tgz";
+      path = fetchurl {
+        name = "vfile_location___vfile_location_2.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/vfile-location/-/vfile-location-2.0.4.tgz";
+        sha1 = "2a5e7297dd0d9e2da4381464d04acc6b834d3e55";
+      };
+    }
+    {
+      name = "vfile_message___vfile_message_1.1.1.tgz";
+      path = fetchurl {
+        name = "vfile_message___vfile_message_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/vfile-message/-/vfile-message-1.1.1.tgz";
+        sha1 = "5833ae078a1dfa2d96e9647886cd32993ab313e1";
+      };
+    }
+    {
+      name = "vfile___vfile_3.0.1.tgz";
+      path = fetchurl {
+        name = "vfile___vfile_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/vfile/-/vfile-3.0.1.tgz";
+        sha1 = "47331d2abe3282424f4a4bb6acd20a44c4121803";
+      };
+    }
+    {
+      name = "visibilityjs___visibilityjs_1.2.4.tgz";
+      path = fetchurl {
+        name = "visibilityjs___visibilityjs_1.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/visibilityjs/-/visibilityjs-1.2.4.tgz";
+        sha1 = "bff8663da62c8c10ad4ee5ae6a1ae6fac4259d63";
+      };
+    }
+    {
+      name = "vm_browserify___vm_browserify_1.1.0.tgz";
+      path = fetchurl {
+        name = "vm_browserify___vm_browserify_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.0.tgz";
+        sha1 = "bd76d6a23323e2ca8ffa12028dc04559c75f9019";
+      };
+    }
+    {
+      name = "void_elements___void_elements_2.0.1.tgz";
+      path = fetchurl {
+        name = "void_elements___void_elements_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/void-elements/-/void-elements-2.0.1.tgz";
+        sha1 = "c066afb582bb1cb4128d60ea92392e94d5e9dbec";
+      };
+    }
+    {
+      name = "vue_apollo___vue_apollo_3.0.3.tgz";
+      path = fetchurl {
+        name = "vue_apollo___vue_apollo_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/vue-apollo/-/vue-apollo-3.0.3.tgz";
+        sha1 = "7f29558df76eec0f03251847eef153816a261827";
+      };
+    }
+    {
+      name = "vue_eslint_parser___vue_eslint_parser_7.0.0.tgz";
+      path = fetchurl {
+        name = "vue_eslint_parser___vue_eslint_parser_7.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/vue-eslint-parser/-/vue-eslint-parser-7.0.0.tgz";
+        sha1 = "a4ed2669f87179dedd06afdd8736acbb3a3864d6";
+      };
+    }
+    {
+      name = "vue_functional_data_merge___vue_functional_data_merge_3.1.0.tgz";
+      path = fetchurl {
+        name = "vue_functional_data_merge___vue_functional_data_merge_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/vue-functional-data-merge/-/vue-functional-data-merge-3.1.0.tgz";
+        sha1 = "08a7797583b7f35680587f8a1d51d729aa1dc657";
+      };
+    }
+    {
+      name = "vue_hot_reload_api___vue_hot_reload_api_2.3.0.tgz";
+      path = fetchurl {
+        name = "vue_hot_reload_api___vue_hot_reload_api_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.0.tgz";
+        sha1 = "97976142405d13d8efae154749e88c4e358cf926";
+      };
+    }
+    {
+      name = "vue_jest___vue_jest_4.0.0_beta.2.tgz";
+      path = fetchurl {
+        name = "vue_jest___vue_jest_4.0.0_beta.2.tgz";
+        url  = "https://registry.yarnpkg.com/vue-jest/-/vue-jest-4.0.0-beta.2.tgz";
+        sha1 = "f2120ea9d24224aad3a100c2010b0760d47ee6fe";
+      };
+    }
+    {
+      name = "vue_loader___vue_loader_15.9.0.tgz";
+      path = fetchurl {
+        name = "vue_loader___vue_loader_15.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/vue-loader/-/vue-loader-15.9.0.tgz";
+        sha1 = "5d4b0378a4606188fc83e587ed23c94bc3a10998";
+      };
+    }
+    {
+      name = "vue_router___vue_router_3.0.2.tgz";
+      path = fetchurl {
+        name = "vue_router___vue_router_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/vue-router/-/vue-router-3.0.2.tgz";
+        sha1 = "dedc67afe6c4e2bc25682c8b1c2a8c0d7c7e56be";
+      };
+    }
+    {
+      name = "vue_runtime_helpers___vue_runtime_helpers_1.1.2.tgz";
+      path = fetchurl {
+        name = "vue_runtime_helpers___vue_runtime_helpers_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/vue-runtime-helpers/-/vue-runtime-helpers-1.1.2.tgz";
+        sha1 = "446b7b820888ab0c5264d2c3a32468e72e4100f3";
+      };
+    }
+    {
+      name = "vue_style_loader___vue_style_loader_4.1.0.tgz";
+      path = fetchurl {
+        name = "vue_style_loader___vue_style_loader_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/vue-style-loader/-/vue-style-loader-4.1.0.tgz";
+        sha1 = "7588bd778e2c9f8d87bfc3c5a4a039638da7a863";
+      };
+    }
+    {
+      name = "vue_template_compiler___vue_template_compiler_2.6.10.tgz";
+      path = fetchurl {
+        name = "vue_template_compiler___vue_template_compiler_2.6.10.tgz";
+        url  = "https://registry.yarnpkg.com/vue-template-compiler/-/vue-template-compiler-2.6.10.tgz";
+        sha1 = "323b4f3495f04faa3503337a82f5d6507799c9cc";
+      };
+    }
+    {
+      name = "vue_template_es2015_compiler___vue_template_es2015_compiler_1.9.1.tgz";
+      path = fetchurl {
+        name = "vue_template_es2015_compiler___vue_template_es2015_compiler_1.9.1.tgz";
+        url  = "https://registry.yarnpkg.com/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz";
+        sha1 = "1ee3bc9a16ecbf5118be334bb15f9c46f82f5825";
+      };
+    }
+    {
+      name = "vue_virtual_scroll_list___vue_virtual_scroll_list_1.4.4.tgz";
+      path = fetchurl {
+        name = "vue_virtual_scroll_list___vue_virtual_scroll_list_1.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/vue-virtual-scroll-list/-/vue-virtual-scroll-list-1.4.4.tgz";
+        sha1 = "5fca7a13f785899bbfb70471ec4fe222437d8495";
+      };
+    }
+    {
+      name = "vue___vue_2.6.10.tgz";
+      path = fetchurl {
+        name = "vue___vue_2.6.10.tgz";
+        url  = "https://registry.yarnpkg.com/vue/-/vue-2.6.10.tgz";
+        sha1 = "a72b1a42a4d82a721ea438d1b6bf55e66195c637";
+      };
+    }
+    {
+      name = "vuedraggable___vuedraggable_2.23.0.tgz";
+      path = fetchurl {
+        name = "vuedraggable___vuedraggable_2.23.0.tgz";
+        url  = "https://registry.yarnpkg.com/vuedraggable/-/vuedraggable-2.23.0.tgz";
+        sha1 = "1f4a5a601675a5dbf0d96ee61aebfffa43445262";
+      };
+    }
+    {
+      name = "vuex___vuex_3.1.0.tgz";
+      path = fetchurl {
+        name = "vuex___vuex_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/vuex/-/vuex-3.1.0.tgz";
+        sha1 = "634b81515cf0cfe976bd1ffe9601755e51f843b9";
+      };
+    }
+    {
+      name = "w3c_hr_time___w3c_hr_time_1.0.1.tgz";
+      path = fetchurl {
+        name = "w3c_hr_time___w3c_hr_time_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz";
+        sha1 = "82ac2bff63d950ea9e3189a58a65625fedf19045";
+      };
+    }
+    {
+      name = "w3c_keyname___w3c_keyname_1.1.8.tgz";
+      path = fetchurl {
+        name = "w3c_keyname___w3c_keyname_1.1.8.tgz";
+        url  = "https://registry.yarnpkg.com/w3c-keyname/-/w3c-keyname-1.1.8.tgz";
+        sha1 = "4e2219663760fd6535b7a1550f1552d71fc9372c";
+      };
+    }
+    {
+      name = "walker___walker_1.0.7.tgz";
+      path = fetchurl {
+        name = "walker___walker_1.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz";
+        sha1 = "2f7f9b8fd10d677262b18a884e28d19618e028fb";
+      };
+    }
+    {
+      name = "watchpack___watchpack_1.6.0.tgz";
+      path = fetchurl {
+        name = "watchpack___watchpack_1.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/watchpack/-/watchpack-1.6.0.tgz";
+        sha1 = "4bc12c2ebe8aa277a71f1d3f14d685c7b446cd00";
+      };
+    }
+    {
+      name = "wbuf___wbuf_1.7.3.tgz";
+      path = fetchurl {
+        name = "wbuf___wbuf_1.7.3.tgz";
+        url  = "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz";
+        sha1 = "c1d8d149316d3ea852848895cb6a0bfe887b87df";
+      };
+    }
+    {
+      name = "webidl_conversions___webidl_conversions_4.0.2.tgz";
+      path = fetchurl {
+        name = "webidl_conversions___webidl_conversions_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz";
+        sha1 = "a855980b1f0b6b359ba1d5d9fb39ae941faa63ad";
+      };
+    }
+    {
+      name = "webpack_bundle_analyzer___webpack_bundle_analyzer_3.6.0.tgz";
+      path = fetchurl {
+        name = "webpack_bundle_analyzer___webpack_bundle_analyzer_3.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.6.0.tgz";
+        sha1 = "39b3a8f829ca044682bc6f9e011c95deb554aefd";
+      };
+    }
+    {
+      name = "webpack_cli___webpack_cli_3.3.11.tgz";
+      path = fetchurl {
+        name = "webpack_cli___webpack_cli_3.3.11.tgz";
+        url  = "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.11.tgz";
+        sha1 = "3bf21889bf597b5d82c38f215135a411edfdc631";
+      };
+    }
+    {
+      name = "webpack_dev_middleware___webpack_dev_middleware_3.7.2.tgz";
+      path = fetchurl {
+        name = "webpack_dev_middleware___webpack_dev_middleware_3.7.2.tgz";
+        url  = "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz";
+        sha1 = "0019c3db716e3fa5cecbf64f2ab88a74bab331f3";
+      };
+    }
+    {
+      name = "webpack_dev_server___webpack_dev_server_3.10.3.tgz";
+      path = fetchurl {
+        name = "webpack_dev_server___webpack_dev_server_3.10.3.tgz";
+        url  = "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.10.3.tgz";
+        sha1 = "f35945036813e57ef582c2420ef7b470e14d3af0";
+      };
+    }
+    {
+      name = "webpack_log___webpack_log_2.0.0.tgz";
+      path = fetchurl {
+        name = "webpack_log___webpack_log_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/webpack-log/-/webpack-log-2.0.0.tgz";
+        sha1 = "5b7928e0637593f119d32f6227c1e0ac31e1b47f";
+      };
+    }
+    {
+      name = "webpack_sources___webpack_sources_1.4.3.tgz";
+      path = fetchurl {
+        name = "webpack_sources___webpack_sources_1.4.3.tgz";
+        url  = "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz";
+        sha1 = "eedd8ec0b928fbf1cbfe994e22d2d890f330a933";
+      };
+    }
+    {
+      name = "webpack_stats_plugin___webpack_stats_plugin_0.3.1.tgz";
+      path = fetchurl {
+        name = "webpack_stats_plugin___webpack_stats_plugin_0.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/webpack-stats-plugin/-/webpack-stats-plugin-0.3.1.tgz";
+        sha1 = "1103c39a305a4e6ba15d5078db84bc0b35447417";
+      };
+    }
+    {
+      name = "webpack___webpack_4.42.0.tgz";
+      path = fetchurl {
+        name = "webpack___webpack_4.42.0.tgz";
+        url  = "https://registry.yarnpkg.com/webpack/-/webpack-4.42.0.tgz";
+        sha1 = "b901635dd6179391d90740a63c93f76f39883eb8";
+      };
+    }
+    {
+      name = "websocket_driver___websocket_driver_0.6.5.tgz";
+      path = fetchurl {
+        name = "websocket_driver___websocket_driver_0.6.5.tgz";
+        url  = "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.6.5.tgz";
+        sha1 = "5cb2556ceb85f4373c6d8238aa691c8454e13a36";
+      };
+    }
+    {
+      name = "websocket_extensions___websocket_extensions_0.1.1.tgz";
+      path = fetchurl {
+        name = "websocket_extensions___websocket_extensions_0.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.1.tgz";
+        sha1 = "76899499c184b6ef754377c2dbb0cd6cb55d29e7";
+      };
+    }
+    {
+      name = "whatwg_encoding___whatwg_encoding_1.0.5.tgz";
+      path = fetchurl {
+        name = "whatwg_encoding___whatwg_encoding_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz";
+        sha1 = "5abacf777c32166a51d085d6b4f3e7d27113ddb0";
+      };
+    }
+    {
+      name = "whatwg_mimetype___whatwg_mimetype_2.3.0.tgz";
+      path = fetchurl {
+        name = "whatwg_mimetype___whatwg_mimetype_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz";
+        sha1 = "3d4b1e0312d2079879f826aff18dbeeca5960fbf";
+      };
+    }
+    {
+      name = "whatwg_url___whatwg_url_6.5.0.tgz";
+      path = fetchurl {
+        name = "whatwg_url___whatwg_url_6.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-6.5.0.tgz";
+        sha1 = "f2df02bff176fd65070df74ad5ccbb5a199965a8";
+      };
+    }
+    {
+      name = "whatwg_url___whatwg_url_7.0.0.tgz";
+      path = fetchurl {
+        name = "whatwg_url___whatwg_url_7.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.0.0.tgz";
+        sha1 = "fde926fa54a599f3adf82dff25a9f7be02dc6edd";
+      };
+    }
+    {
+      name = "which_module___which_module_1.0.0.tgz";
+      path = fetchurl {
+        name = "which_module___which_module_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz";
+        sha1 = "bba63ca861948994ff307736089e3b96026c2a4f";
+      };
+    }
+    {
+      name = "which_module___which_module_2.0.0.tgz";
+      path = fetchurl {
+        name = "which_module___which_module_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz";
+        sha1 = "d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a";
+      };
+    }
+    {
+      name = "which___which_1.3.1.tgz";
+      path = fetchurl {
+        name = "which___which_1.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz";
+        sha1 = "a45043d54f5805316da8d62f9f50918d3da70b0a";
+      };
+    }
+    {
+      name = "wide_align___wide_align_1.1.3.tgz";
+      path = fetchurl {
+        name = "wide_align___wide_align_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz";
+        sha1 = "ae074e6bdc0c14a431e804e624549c633b000457";
+      };
+    }
+    {
+      name = "widest_line___widest_line_2.0.0.tgz";
+      path = fetchurl {
+        name = "widest_line___widest_line_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/widest-line/-/widest-line-2.0.0.tgz";
+        sha1 = "0142a4e8a243f8882c0233aa0e0281aa76152273";
+      };
+    }
+    {
+      name = "word_wrap___word_wrap_1.2.3.tgz";
+      path = fetchurl {
+        name = "word_wrap___word_wrap_1.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz";
+        sha1 = "610636f6b1f703891bd34771ccb17fb93b47079c";
+      };
+    }
+    {
+      name = "wordwrap___wordwrap_0.0.3.tgz";
+      path = fetchurl {
+        name = "wordwrap___wordwrap_0.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz";
+        sha1 = "a3d5da6cd5c0bc0008d37234bbaf1bed63059107";
+      };
+    }
+    {
+      name = "worker_farm___worker_farm_1.7.0.tgz";
+      path = fetchurl {
+        name = "worker_farm___worker_farm_1.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.7.0.tgz";
+        sha1 = "26a94c5391bbca926152002f69b84a4bf772e5a8";
+      };
+    }
+    {
+      name = "worker_loader___worker_loader_2.0.0.tgz";
+      path = fetchurl {
+        name = "worker_loader___worker_loader_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/worker-loader/-/worker-loader-2.0.0.tgz";
+        sha1 = "45fda3ef76aca815771a89107399ee4119b430ac";
+      };
+    }
+    {
+      name = "wrap_ansi___wrap_ansi_2.1.0.tgz";
+      path = fetchurl {
+        name = "wrap_ansi___wrap_ansi_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz";
+        sha1 = "d8fc3d284dd05794fe84973caecdd1cf824fdd85";
+      };
+    }
+    {
+      name = "wrap_ansi___wrap_ansi_5.1.0.tgz";
+      path = fetchurl {
+        name = "wrap_ansi___wrap_ansi_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz";
+        sha1 = "1fd1f67235d5b6d0fee781056001bfb694c03b09";
+      };
+    }
+    {
+      name = "wrappy___wrappy_1.0.2.tgz";
+      path = fetchurl {
+        name = "wrappy___wrappy_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz";
+        sha1 = "b5243d8f3ec1aa35f1364605bc0d1036e30ab69f";
+      };
+    }
+    {
+      name = "write_file_atomic___write_file_atomic_2.4.1.tgz";
+      path = fetchurl {
+        name = "write_file_atomic___write_file_atomic_2.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.1.tgz";
+        sha1 = "d0b05463c188ae804396fd5ab2a370062af87529";
+      };
+    }
+    {
+      name = "write___write_1.0.3.tgz";
+      path = fetchurl {
+        name = "write___write_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz";
+        sha1 = "0800e14523b923a387e415123c865616aae0f5c3";
+      };
+    }
+    {
+      name = "ws___ws_5.2.2.tgz";
+      path = fetchurl {
+        name = "ws___ws_5.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/ws/-/ws-5.2.2.tgz";
+        sha1 = "dffef14866b8e8dc9133582514d1befaf96e980f";
+      };
+    }
+    {
+      name = "ws___ws_6.2.1.tgz";
+      path = fetchurl {
+        name = "ws___ws_6.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/ws/-/ws-6.2.1.tgz";
+        sha1 = "442fdf0a47ed64f59b6a5d8ff130f4748ed524fb";
+      };
+    }
+    {
+      name = "ws___ws_3.3.3.tgz";
+      path = fetchurl {
+        name = "ws___ws_3.3.3.tgz";
+        url  = "https://registry.yarnpkg.com/ws/-/ws-3.3.3.tgz";
+        sha1 = "f1cf84fe2d5e901ebce94efaece785f187a228f2";
+      };
+    }
+    {
+      name = "x_is_string___x_is_string_0.1.0.tgz";
+      path = fetchurl {
+        name = "x_is_string___x_is_string_0.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/x-is-string/-/x-is-string-0.1.0.tgz";
+        sha1 = "474b50865af3a49a9c4657f05acd145458f77d82";
+      };
+    }
+    {
+      name = "xdg_basedir___xdg_basedir_3.0.0.tgz";
+      path = fetchurl {
+        name = "xdg_basedir___xdg_basedir_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz";
+        sha1 = "496b2cc109eca8dbacfe2dc72b603c17c5870ad4";
+      };
+    }
+    {
+      name = "xml_name_validator___xml_name_validator_3.0.0.tgz";
+      path = fetchurl {
+        name = "xml_name_validator___xml_name_validator_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz";
+        sha1 = "6ae73e06de4d8c6e47f9fb181f78d648ad457c6a";
+      };
+    }
+    {
+      name = "xml2js___xml2js_0.4.19.tgz";
+      path = fetchurl {
+        name = "xml2js___xml2js_0.4.19.tgz";
+        url  = "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.19.tgz";
+        sha1 = "686c20f213209e94abf0d1bcf1efaa291c7827a7";
+      };
+    }
+    {
+      name = "xml___xml_1.0.1.tgz";
+      path = fetchurl {
+        name = "xml___xml_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/xml/-/xml-1.0.1.tgz";
+        sha1 = "78ba72020029c5bc87b8a81a3cfcd74b4a2fc1e5";
+      };
+    }
+    {
+      name = "xmlbuilder___xmlbuilder_8.2.2.tgz";
+      path = fetchurl {
+        name = "xmlbuilder___xmlbuilder_8.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-8.2.2.tgz";
+        sha1 = "69248673410b4ba42e1a6136551d2922335aa773";
+      };
+    }
+    {
+      name = "xmlbuilder___xmlbuilder_9.0.7.tgz";
+      path = fetchurl {
+        name = "xmlbuilder___xmlbuilder_9.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz";
+        sha1 = "132ee63d2ec5565c557e20f4c22df9aca686b10d";
+      };
+    }
+    {
+      name = "xmlcreate___xmlcreate_1.0.2.tgz";
+      path = fetchurl {
+        name = "xmlcreate___xmlcreate_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/xmlcreate/-/xmlcreate-1.0.2.tgz";
+        sha1 = "fa6bf762a60a413fb3dd8f4b03c5b269238d308f";
+      };
+    }
+    {
+      name = "xmlhttprequest_ssl___xmlhttprequest_ssl_1.5.5.tgz";
+      path = fetchurl {
+        name = "xmlhttprequest_ssl___xmlhttprequest_ssl_1.5.5.tgz";
+        url  = "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz";
+        sha1 = "c2876b06168aadc40e57d97e81191ac8f4398b3e";
+      };
+    }
+    {
+      name = "xtend___xtend_4.0.2.tgz";
+      path = fetchurl {
+        name = "xtend___xtend_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz";
+        sha1 = "bb72779f5fa465186b1f438f674fa347fdb5db54";
+      };
+    }
+    {
+      name = "xterm___xterm_3.14.5.tgz";
+      path = fetchurl {
+        name = "xterm___xterm_3.14.5.tgz";
+        url  = "https://registry.yarnpkg.com/xterm/-/xterm-3.14.5.tgz";
+        sha1 = "c9d14e48be6873aa46fb429f22f2165557fd2dea";
+      };
+    }
+    {
+      name = "y18n___y18n_3.2.1.tgz";
+      path = fetchurl {
+        name = "y18n___y18n_3.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz";
+        sha1 = "6d15fba884c08679c0d77e88e7759e811e07fa41";
+      };
+    }
+    {
+      name = "y18n___y18n_4.0.0.tgz";
+      path = fetchurl {
+        name = "y18n___y18n_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz";
+        sha1 = "95ef94f85ecc81d007c264e190a120f0a3c8566b";
+      };
+    }
+    {
+      name = "yallist___yallist_2.1.2.tgz";
+      path = fetchurl {
+        name = "yallist___yallist_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz";
+        sha1 = "1c11f9218f076089a47dd512f93c6699a6a81d52";
+      };
+    }
+    {
+      name = "yallist___yallist_3.0.3.tgz";
+      path = fetchurl {
+        name = "yallist___yallist_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/yallist/-/yallist-3.0.3.tgz";
+        sha1 = "b4b049e314be545e3ce802236d6cd22cd91c3de9";
+      };
+    }
+    {
+      name = "yallist___yallist_4.0.0.tgz";
+      path = fetchurl {
+        name = "yallist___yallist_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz";
+        sha1 = "9bb92790d9c0effec63be73519e11a35019a3a72";
+      };
+    }
+    {
+      name = "yargs_parser___yargs_parser_10.1.0.tgz";
+      path = fetchurl {
+        name = "yargs_parser___yargs_parser_10.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.1.0.tgz";
+        sha1 = "7202265b89f7e9e9f2e5765e0fe735a905edbaa8";
+      };
+    }
+    {
+      name = "yargs_parser___yargs_parser_11.1.1.tgz";
+      path = fetchurl {
+        name = "yargs_parser___yargs_parser_11.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz";
+        sha1 = "879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4";
+      };
+    }
+    {
+      name = "yargs_parser___yargs_parser_13.1.1.tgz";
+      path = fetchurl {
+        name = "yargs_parser___yargs_parser_13.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz";
+        sha1 = "d26058532aa06d365fe091f6a1fc06b2f7e5eca0";
+      };
+    }
+    {
+      name = "yargs_parser___yargs_parser_5.0.0.tgz";
+      path = fetchurl {
+        name = "yargs_parser___yargs_parser_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz";
+        sha1 = "275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a";
+      };
+    }
+    {
+      name = "yargs___yargs_12.0.5.tgz";
+      path = fetchurl {
+        name = "yargs___yargs_12.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz";
+        sha1 = "05f5997b609647b64f66b81e3b4b10a368e7ad13";
+      };
+    }
+    {
+      name = "yargs___yargs_13.2.4.tgz";
+      path = fetchurl {
+        name = "yargs___yargs_13.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/yargs/-/yargs-13.2.4.tgz";
+        sha1 = "0b562b794016eb9651b98bd37acf364aa5d6dc83";
+      };
+    }
+    {
+      name = "yargs___yargs_7.1.0.tgz";
+      path = fetchurl {
+        name = "yargs___yargs_7.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz";
+        sha1 = "6ba318eb16961727f5d284f8ea003e8d6154d0c8";
+      };
+    }
+    {
+      name = "yarn_check_webpack_plugin___yarn_check_webpack_plugin_1.2.0.tgz";
+      path = fetchurl {
+        name = "yarn_check_webpack_plugin___yarn_check_webpack_plugin_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/yarn-check-webpack-plugin/-/yarn-check-webpack-plugin-1.2.0.tgz";
+        sha1 = "0eb00cdcdb430f0494222a3eab1d2832737840cc";
+      };
+    }
+    {
+      name = "yarn_deduplicate___yarn_deduplicate_1.1.1.tgz";
+      path = fetchurl {
+        name = "yarn_deduplicate___yarn_deduplicate_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/yarn-deduplicate/-/yarn-deduplicate-1.1.1.tgz";
+        sha1 = "19b4a87654b66f55bf3a4bd6b153b4e4ab1b6e6d";
+      };
+    }
+    {
+      name = "yeast___yeast_0.1.2.tgz";
+      path = fetchurl {
+        name = "yeast___yeast_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/yeast/-/yeast-0.1.2.tgz";
+        sha1 = "008e06d8094320c372dbc2f8ed76a0ca6c8ac419";
+      };
+    }
+    {
+      name = "zen_observable_ts___zen_observable_ts_0.8.18.tgz";
+      path = fetchurl {
+        name = "zen_observable_ts___zen_observable_ts_0.8.18.tgz";
+        url  = "https://registry.yarnpkg.com/zen-observable-ts/-/zen-observable-ts-0.8.18.tgz";
+        sha1 = "ade44b1060cc4a800627856ec10b9c67f5f639c8";
+      };
+    }
+    {
+      name = "zen_observable___zen_observable_0.8.11.tgz";
+      path = fetchurl {
+        name = "zen_observable___zen_observable_0.8.11.tgz";
+        url  = "https://registry.yarnpkg.com/zen-observable/-/zen-observable-0.8.11.tgz";
+        sha1 = "d3415885eeeb42ee5abb9821c95bb518fcd6d199";
+      };
+    }
+    {
+      name = "zrender___zrender_4.2.0.tgz";
+      path = fetchurl {
+        name = "zrender___zrender_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/zrender/-/zrender-4.2.0.tgz";
+        sha1 = "d001302e155f28de1f9fc7fcd5c254bad28471cf";
+      };
+    }
+  ];
+}