ソースを参照

removing node modules

chootka 8 年 前
コミット
7743aa29bc
100 ファイル変更0 行追加13474 行削除
  1. 0 1
      node_modules/.bin/keybase
  2. 0 1
      node_modules/.bin/keybase-installer
  3. 0 16
      node_modules/keybase-installer/.npmignore
  4. 0 216
      node_modules/keybase-installer/CHANGELOG.md
  5. 0 27
      node_modules/keybase-installer/LICENSE
  6. 0 43
      node_modules/keybase-installer/Makefile
  7. 0 8
      node_modules/keybase-installer/README.md
  8. 0 1016
      node_modules/keybase-installer/SIGNED.md
  9. 0 10
      node_modules/keybase-installer/bin/main.js
  10. 0 18
      node_modules/keybase-installer/bin/main.sh
  11. 0 0
      node_modules/keybase-installer/json/keyset.json
  12. 0 24
      node_modules/keybase-installer/lib/base.js
  13. 0 498
      node_modules/keybase-installer/lib/config.js
  14. 0 20
      node_modules/keybase-installer/lib/constants.js
  15. 0 129
      node_modules/keybase-installer/lib/get_index.js
  16. 0 423
      node_modules/keybase-installer/lib/installer.js
  17. 0 421
      node_modules/keybase-installer/lib/key_install.js
  18. 0 353
      node_modules/keybase-installer/lib/key_setup.js
  19. 0 181
      node_modules/keybase-installer/lib/key_upgrade.js
  20. 0 5
      node_modules/keybase-installer/lib/log.js
  21. 0 223
      node_modules/keybase-installer/lib/main.js
  22. 0 186
      node_modules/keybase-installer/lib/npm.js
  23. 0 25
      node_modules/keybase-installer/lib/package.js
  24. 0 318
      node_modules/keybase-installer/lib/request.js
  25. 0 399
      node_modules/keybase-installer/lib/software_upgrade.js
  26. 0 11
      node_modules/keybase-installer/lib/top.js
  27. 0 24
      node_modules/keybase-installer/lib/util.js
  28. 0 1
      node_modules/keybase-installer/node_modules/.bin/semver
  29. 0 28
      node_modules/keybase-installer/node_modules/badnode/.npmignore
  30. 0 28
      node_modules/keybase-installer/node_modules/badnode/LICENSE
  31. 0 20
      node_modules/keybase-installer/node_modules/badnode/Makefile
  32. 0 4
      node_modules/keybase-installer/node_modules/badnode/README.md
  33. 0 77
      node_modules/keybase-installer/node_modules/badnode/SIGNED.md
  34. 0 28
      node_modules/keybase-installer/node_modules/badnode/index.iced
  35. 0 49
      node_modules/keybase-installer/node_modules/badnode/index.js
  36. 0 63
      node_modules/keybase-installer/node_modules/badnode/package.json
  37. 0 22
      node_modules/keybase-installer/node_modules/badnode/test/files/0_badnode.iced
  38. 0 3
      node_modules/keybase-installer/node_modules/badnode/test/run.iced
  39. 0 22
      node_modules/keybase-installer/node_modules/colors/MIT-LICENSE.txt
  40. 0 77
      node_modules/keybase-installer/node_modules/colors/ReadMe.md
  41. 0 342
      node_modules/keybase-installer/node_modules/colors/colors.js
  42. 0 76
      node_modules/keybase-installer/node_modules/colors/example.html
  43. 0 77
      node_modules/keybase-installer/node_modules/colors/example.js
  44. 0 56
      node_modules/keybase-installer/node_modules/colors/package.json
  45. 0 70
      node_modules/keybase-installer/node_modules/colors/test.js
  46. 0 12
      node_modules/keybase-installer/node_modules/colors/themes/winston-dark.js
  47. 0 12
      node_modules/keybase-installer/node_modules/colors/themes/winston-light.js
  48. 0 16
      node_modules/keybase-installer/node_modules/gpg-wrapper/.npmignore
  49. 0 158
      node_modules/keybase-installer/node_modules/gpg-wrapper/CHANGELOG.md
  50. 0 27
      node_modules/keybase-installer/node_modules/gpg-wrapper/LICENSE
  51. 0 35
      node_modules/keybase-installer/node_modules/gpg-wrapper/Makefile
  52. 0 4
      node_modules/keybase-installer/node_modules/gpg-wrapper/README.md
  53. 0 97
      node_modules/keybase-installer/node_modules/gpg-wrapper/SIGNED.md
  54. 0 41
      node_modules/keybase-installer/node_modules/gpg-wrapper/lib/colgrep.js
  55. 0 17
      node_modules/keybase-installer/node_modules/gpg-wrapper/lib/err.js
  56. 0 314
      node_modules/keybase-installer/node_modules/gpg-wrapper/lib/gpg.js
  57. 0 470
      node_modules/keybase-installer/node_modules/gpg-wrapper/lib/index.js
  58. 0 2561
      node_modules/keybase-installer/node_modules/gpg-wrapper/lib/keyring.js
  59. 0 17
      node_modules/keybase-installer/node_modules/gpg-wrapper/lib/main.js
  60. 0 164
      node_modules/keybase-installer/node_modules/gpg-wrapper/lib/parse.js
  61. 0 64
      node_modules/keybase-installer/node_modules/gpg-wrapper/package.json
  62. 0 19
      node_modules/keybase-installer/node_modules/gpg-wrapper/src/colgrep.iced
  63. 0 13
      node_modules/keybase-installer/node_modules/gpg-wrapper/src/err.iced
  64. 0 105
      node_modules/keybase-installer/node_modules/gpg-wrapper/src/gpg.iced
  65. 0 236
      node_modules/keybase-installer/node_modules/gpg-wrapper/src/index.iced
  66. 0 946
      node_modules/keybase-installer/node_modules/gpg-wrapper/src/keyring.iced
  67. 0 12
      node_modules/keybase-installer/node_modules/gpg-wrapper/src/main.iced
  68. 0 62
      node_modules/keybase-installer/node_modules/gpg-wrapper/src/parse.iced
  69. 0 26
      node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/colgrep.iced
  70. 0 10
      node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/error.iced
  71. 0 61
      node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/gpg.iced
  72. 0 186
      node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/index.iced
  73. 0 707
      node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/keyring.iced
  74. 0 33
      node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/parse.iced
  75. 0 3
      node_modules/keybase-installer/node_modules/gpg-wrapper/test/run.iced
  76. 0 2
      node_modules/keybase-installer/node_modules/iced-data-structures/.npmignore
  77. 0 20
      node_modules/keybase-installer/node_modules/iced-data-structures/LICENSE
  78. 0 25
      node_modules/keybase-installer/node_modules/iced-data-structures/Makefile
  79. 0 4
      node_modules/keybase-installer/node_modules/iced-data-structures/README.md
  80. 0 7
      node_modules/keybase-installer/node_modules/iced-data-structures/lib/index.js
  81. 0 68
      node_modules/keybase-installer/node_modules/iced-data-structures/lib/list.js
  82. 0 55
      node_modules/keybase-installer/node_modules/iced-data-structures/package.json
  83. 0 2
      node_modules/keybase-installer/node_modules/iced-data-structures/src/index.iced
  84. 0 54
      node_modules/keybase-installer/node_modules/iced-data-structures/src/list.iced
  85. 0 1
      node_modules/keybase-installer/node_modules/iced-error/.npmignore
  86. 0 18
      node_modules/keybase-installer/node_modules/iced-error/Makefile
  87. 0 65
      node_modules/keybase-installer/node_modules/iced-error/README.md
  88. 0 73
      node_modules/keybase-installer/node_modules/iced-error/SIGNED.md
  89. 0 160
      node_modules/keybase-installer/node_modules/iced-error/index.iced
  90. 0 270
      node_modules/keybase-installer/node_modules/iced-error/index.js
  91. 0 8
      node_modules/keybase-installer/node_modules/iced-error/index.map
  92. 0 57
      node_modules/keybase-installer/node_modules/iced-error/package.json
  93. 0 16
      node_modules/keybase-installer/node_modules/iced-logger/.npmignore
  94. 0 27
      node_modules/keybase-installer/node_modules/iced-logger/LICENSE
  95. 0 26
      node_modules/keybase-installer/node_modules/iced-logger/Makefile
  96. 0 4
      node_modules/keybase-installer/node_modules/iced-logger/README.md
  97. 0 73
      node_modules/keybase-installer/node_modules/iced-logger/SIGNED.md
  98. 0 105
      node_modules/keybase-installer/node_modules/iced-logger/index.iced
  99. 0 211
      node_modules/keybase-installer/node_modules/iced-logger/index.js
  100. 0 56
      node_modules/keybase-installer/node_modules/iced-logger/package.json

+ 0 - 1
node_modules/.bin/keybase

@@ -1 +0,0 @@
-../keybase/bin/main.js

+ 0 - 1
node_modules/.bin/keybase-installer

@@ -1 +0,0 @@
-../keybase-installer/bin/main.js

+ 0 - 16
node_modules/keybase-installer/.npmignore

@@ -1,16 +0,0 @@
-lib-cov
-*.seed
-*.log
-*.csv
-*.dat
-*.out
-*.pid
-*.gz
-
-pids
-logs
-results
-
-npm-debug.log
-build-stamp
-node_modules/iced-coffee-script

+ 0 - 216
node_modules/keybase-installer/CHANGELOG.md

@@ -1,216 +0,0 @@
-## 1.0.2 (2015-07-01)
-
-Upgrade:
-  - Request 2.58.0
-
-## 1.0.1 (2014-12-23)
-
-Bugfixes:
-  - Close #66
-  - upgrade versions to solve dep problems
-
-## 1.0.0 (2014-09-23)
-
-Features:
-
-  - Use gpg2 rather than gpg by default
-     - See keybase/keybase-issues#1002
-  - Check for bad versions of node
-     - See keybase/keybase-issues#968
-  - Upgrade to iced-utils@v0.1.22 to support args of the form `--gpg=/usr/local/bin/gpg`
-     - Before you'd have to say `--gpg /usr/local/bin/gpg`, but the actual client
-       was more lenient
-  - New ICS/ICS-runtime split
-  - Fix bad link to documentation (see issue #58)
-
-## 0.1.22 (2014-04-29)
-
-Features:
-
-  - Mention where keybase was installed in install message 
-
-## 0.1.21 (2014-04-04)
-
-Bugfixes:
-
-  - Support windows homedirs with spaces
-
-## 0.1.20 (2014-04-04)
-
-Bugfixes:
-
-  - Simplify and make more accurate the check to see where to install.  Use `npm get prefix`.
-    This is a lot more accurate and won't give false failures that prompt to install as root.
-  - Retire NPM_INSTALL_PREFIX, and just use PREFIX instead.
-  - Remove the engine requirement in pacakge.json so that users get a nicer error message.
-
-## 0.1.19 (2014-04-03)
-
-Bugfixes:
-
-  - Add a PREFIX environment variable for installation.
-
-## 0.1.17 (2014-03-25)
-
-Bugfixes:
-
-  - Address keybase/keybase-issues#349: Fix bug with `--prefix` and npm v1.2.x
-  - Check version of node.js after install, to solve some ugly crashes
-
-## 0.1.16 (2014-03-20)
-
-Bugfixes:
-
-  - Close keybase/keybase-issuses#294: Upgrade to gpg-wrapper@v0.0.42, which
-    creates an empty trustdb.
-
-## 0.1.15 (2014-03-19)
-
-Bugfixes:
-
-  - Upgrade gpg-wrapper in build; previous build was stale
-
-## 0.1.14 (2014-03-19)
-
-Bugfixes:
-
-  - Documentation nit; can use --prefix on failed install, not just sudo.
-
-## 0.1.13 (2014-03-17)
-
-Features:
-  
-  - People who fail otherwise can turn on the "nuclear option" which is to 
-    ignore their GPG options when doing tmp keyring operations.  Try --no-gpg-options.
-  - Upgrade to gpg-wrapper v0.0.41 with the above.
-
-## 0.1.12 (2014-03-16)
-
-Bugfixes:
-
-  - Back out the previous change.
-  - Upgrade gpg-wrapper to v0.0.40; this fixes indexing for people who have
-    the `with-fingerprint` gpg.conf option on.
-
-## 0.1.11 (2014-03-14)
-
-Bugfixes:
-
-  - Close keybase/keybase-issues#190 --- some versions of GPG print the fingerprint
-    of the subkey too, so we should be ok with getting >1 (let us just call it <=2) 
-    fingerprint on `gpg -k --fingerprint`.
-
-## 0.1.10 (2014-03-10)
-
-Features:
-
-  - Enable the https_proxy and http_proxy environment variables
-
-## 0.1.9 (2014-03-10)
-
-Features:
-
-  - Enable -x/--proxy flag for proxying the install through the given proxy
-
-Cleanups:
-
-  - Cleanup usage message
-
-## 0.1.8 (2014-03-05)
-
-Bugfixes:
- 
-  - Close #41 -- buggy doc message
-  - Close #44 -- poop out on old version of node
-
-## 0.1.7 (2014-03-03)
-
-Bugfixes:
-
-  - Fix keybase/keybase-installer#39 --- do the install check for --prefix
-    if --prefix was specified.
-
-## 0.1.6 (2014-03-03)
-
-Features:
-  
-  - Better administrator install message on windows
-  - Allow --prefix to specify a non-standard install location (#38)
-  - A welcome message.
-
-## 0.1.5 (2014-02-20)
-
-Features:
-
-  - Better error messages if you lack the permissions to run npm install without root.
-
-## 0.1.4 (2014-02-18)
-
-Bugfixes:
-
-  - Close #32, another bug in windows.  Using the USERPROFILE environment
-  variable rather than HOMEDIR, since the former works with path concatenations,
-  and the latter doesn't seem to.
-
-## 0.1.3 (2014-02-18)
-
-Bugfixes:
-
-  - Upgrade to gpg-wrapper v0.0.32 to solve a bug in keydir creation
-
-## 0.1.2 (2014-02-18)
-
-Bugfixes:
-
-  - More bugfixes on windows; we had a crash on keyring on a Windows 7 Pro,
-    GPG 2.0.22. I think it's this bug that gpg won't index the keyring if there's not a 
-    pubring.gpg file there.  Fix with an upgrade to gpg-wrapper v0.0.31.
-
-## 0.1.1 (2014-02-17)
-
-Bugfixes:
-
-  - Upgrade to gpg-wrapper v0.0.30
-  - Fix bug in key upgrade protocol, with setting the final key version causing a crash
-  - Fix bug in key upgrade protocol for if we have the code key but not the index key
-  - Fallback to a lower keyring-resident key if the most recent one failed in the above
-  check. It's always safer for to use the local keys than the ones that came with the software.
-  - Fix bug #31, a cleanup error in Windows.
-
-Features:
-
-  - Add config::set_master_ring for server-ops
-  - Operational on Windows!
-
-## 0.1.0 (2014-02-17)
-
-Bugfixes:
-
-  - Use `iced-spawn` rather than the spawn logic in `gpg-utils`.
-  - Upgrade to `gpg-utils` to v0.0.29
-  - Hopefully some fixes for windows; it is tested to work now at least once.
-  - Fix bug #18; store keys to a private keyring rather than the main
-    keyring, this is much safer.
-
-Cleanups:
-
-  - Get rid of the `getopt` here, which moved into `iced-utils`
-
-## 0.0.11 (2014-2-14)
-
-Bugfixes:
-  
-  - Look for `npm` in path and fail more gracefully
-  - Allow specification of alternate `npm` if you want that.
-  - Upgrade to gpg-wrapper v0.0.25, for less dependence on parsing GPG text output.
-  - More debugger output for debugging problems in the wild
-
-## 0.0.10 (2014-2-13)
-
-Bugfixes:
-
-  - Unbreak `set_key_version`, which should be called whenever we call `find_latest_key`
-
-Features:
-
-  - Inaugural Changelog!

+ 0 - 27
node_modules/keybase-installer/LICENSE

@@ -1,27 +0,0 @@
-Copyright (c) 2013, keybase
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-
-* Neither the name of the {organization} nor the names of its
-  contributors may be used to endorse or promote products derived from
-  this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

+ 0 - 43
node_modules/keybase-installer/Makefile

@@ -1,43 +0,0 @@
-default: build
-all: build
-
-ICED=node_modules/.bin/iced
-BUILD_STAMP=build-stamp
-TEST_STAMP=test-stamp
-
-default: build
-all: build
-
-lib/%.js: src/%.iced
-	$(ICED) -I browserify -c -o `dirname $@` $<
-
-$(BUILD_STAMP): \
-	lib/base.js \
-	lib/config.js \
-	lib/constants.js \
-	lib/get_index.js \
-	lib/installer.js \
-	lib/key_setup.js \
-	lib/key_install.js \
-	lib/key_upgrade.js \
-	lib/log.js \
-	lib/main.js \
-	lib/npm.js \
-	lib/package.js \
-	lib/request.js \
-	lib/software_upgrade.js \
-	lib/top.js \
-	lib/util.js
-	date > $@
-
-clean:
-	find lib -type f -name *.js -exec rm {} \;
-
-build: $(BUILD_STAMP) 
-
-setup: 
-	npm install -d
-
-test:
-
-.PHONY: test setup

+ 0 - 8
node_modules/keybase-installer/README.md

@@ -1,8 +0,0 @@
-node-installer
-==============
-
-An installer/updater for the node client.
-
-### Issue tracking & reporting
-
-The [keybase-issues](https://github.com/keybase/keybase-issues) repo is a consolidated issue repo for the whole project. We'll organize and tag issues there.

+ 0 - 1016
node_modules/keybase-installer/SIGNED.md

@@ -1,1016 +0,0 @@
-##### Signed by https://keybase.io/max
-```
------BEGIN PGP SIGNATURE-----
-Comment: GPGTools - https://gpgtools.org
-
-iQEcBAABCgAGBQJVlFfZAAoJEJgKPw0B/gTfS0sIAInPN5y9o4WCekoiRTl7Rme2
-UQwEuBGiyi2bUI1j6Bp/HYmsc6XtmDMH7/ThSjfyUmdy7DH1Rg3ZqdXj1wj6/p/G
-axWNCrw1GmtxkobiRVexgOo18Rk6rQSzM74jj0WgGTsTvNa9fG4lP2XxBnz0t6Lq
-lkvoEf1sfAwVf75uwoKyn/PYvr3qR8n4Nwx1P9qqf2hfBF+rfMe3jLE7hF4HUOek
-TDXR3BkgtYVuBcR6rKEmpyK9gJzMeI4uMuMr2K0SAqJbBbvqycP5QuX9fuZEI2ZQ
-OcuGjx8ZwXbTuUXk4O18Um//Tp9V7TXGiwIH5O0U11S5y/RbPIoo3cl/f+Hk91U=
-=OjbJ
------END PGP SIGNATURE-----
-
-```
-
-<!-- END SIGNATURES -->
-
-### Begin signed statement 
-
-#### Expect
-
-```
-size    exec  file                                         contents                                                                                                                         
-              ./                                                                                                                                                                            
-128             .gitignore                                 1bf0a9015a4168fb8465cfbefac4faab8a002bed9ca518b425bc2004db93d3dd                                                                 
-5294            CHANGELOG.md                               489590d17e49ed636cc5d44a35d79d93c9e9901044d66758ed5b426efc899ef0                                                                 
-1483            LICENSE                                    333be7050513d91d9e77ca9acb4a91261721f0050209636076ed58676bfc643d                                                                 
-642             Makefile                                   4649d03c975694813262b9b31c05a70a7af8c9e57e529ea7cb4f35e81af384d9                                                                 
-264             README.md                                  435aa83861bd026f829d08099649976d447587ddcbd79324e8479f0fb954269b                                                                 
-                bin/                                                                                                                                                                        
-231     x         main.js                                  3f9fbc40b1abc6cf67f660a9a0a157ebf225441f74cef867c28cdf2e7b63293e                                                                 
-330     x         main.sh                                  6990b3e22e1134de4a38222ef050f07b54d765e633a68240113f17d0762972aa                                                                 
-                json/                                                                                                                                                                       
-10183             keyset.json                              cb7d05526aa1353172ff5468e6d0a1f416d60f998810c22b699d2703b3669b4f                                                                 
-                lib/                                                                                                                                                                        
-462               base.js                                  18d7d2fe28f3bf189aa9b9499c1995b3e04ba76c26683dccc308c2ed7a66195a                                                                 
-16322             config.js                                b187d100726cabb83017535c95971d2f9d0b43de13763358565a4471c0f34770                                                                 
-420               constants.js                             fc4636b8d80ecc5e223b1944a6523860f7ddb235bbf188eb8cbd6695af906abc                                                                 
-4761              get_index.js                             a7ad533dd418785288893c44f9f2f5d21e97f7349a635c21ae2d72c830b54b61                                                                 
-17963             installer.js                             9f79864b5f1f3c9f189c597583deb024a5203a47f41a5c6a5088b675e7d301a5                                                                 
-15357             key_install.js                           5b8d1d338897e8bdc7dd5511d979f23815393d335ef675596caccafa8ae22f7a                                                                 
-13645             key_setup.js                             3e62af76b86ebbcf73ac58302fc5e5d78e15930af6804439037eb6850538d4ea                                                                 
-6275              key_upgrade.js                           e0d155a6607eee3a681a1c562375acc766f853df0df413a683b8ae739c7c7572                                                                 
-114               log.js                                   eee8f66661e404e10a8ab931f4f6e8f366e1664bf10bc79006bde40ae9527674                                                                 
-8448              main.js                                  acb3cac555cdb7c3d9aa494149778e72ba2b8525b0b8182e9e7e863af2337cc7                                                                 
-6628              npm.js                                   a47e00f31a36acbb684b5c73bb5e2017caf1dcf75498c09ad9e2c2b17d07e62b                                                                 
-489               package.js                               3c716247be5bf954e0652a085266bf6baf2b1383a13f6be56cdb1f960385a978                                                                 
-9889              request.js                               bdc0ee8d77bc31d5dcd2f653b91e0b37dfb104b6be6512607fbbf9a867028ac5                                                                 
-14503             software_upgrade.js                      334ca8a62704af721687e7f3f7ac8022ebfa818e045a5224aa336fa7d0e30a8f                                                                 
-267               top.js                                   7f8d2598e521426207e141834a62b718ccb6386b1368364c5914612e70e5667f                                                                 
-588               util.js                                  1efe56b1f56c51a174bfe75fd4b7f183914d9dc15cbc60cd5c0b3ecd2d3fa1fd                                                                 
-                node_modules/                                                                                                                                                               
-                  .bin/                                                                                                                                                                     
-                    icake                                  -> ../iced-coffee-script/bin/cake                                                                                                
-                    iced                                   -> ../iced-coffee-script/bin/coffee                                                                                              
-                    keybase-installer                      -> ../keybase-installer/bin/main.js                                                                                              
-                    semver                                 -> ../semver/bin/semver                                                                                                          
-                  badnode/                                                                                                                                                                  
-587                 .npmignore                             abcbd5929ba2d059647bd4c6c99a74df2676bfbaaf44535e4713b53fbd14e6a8                                                                 
-1473                LICENSE                                d0560411ddd7937e8b87d85c290c0445bd9c390aa485eeac7f838e56e7598d95                                                                 
-244                 Makefile                               7d397680c94d1b5ec2436610beb8dd4f27586306210920e31981449157824fd1                                                                 
-64                  README.md                              076d41de237604bcc439602fc664111cf6db55550759e2d7af4b00388fbc8143                                                                 
-2855                SIGNED.md                              858593b5a955ff074e88588eb07eaf9807cc31449277aa6dd8dbfb085f357746                                                                 
-924                 index.iced                             ad88b40b8519413ab132caa403327740829216b3eb29f59ddb94662c90ae791c                                                                 
-1627                index.js                               9ea58e70c4670f9d9c0684c95359bc43101e2550ccaf31b69188f5ab3d147f12                                                                 
-1292                package.json                           4a9ba7776b3db007acdc0bdbcf2c1d9103300834f2b5b8ff0b232fc3587dcde6                                                                 
-                    test/                                                                                                                                                                   
-                      files/                                                                                                                                                                
-538                     0_badnode.iced                     0c437564f590b6783ab7fecf676985f3297d751804e8fe24c89d91f9db4ec7bb                                                                 
-183                   run.iced                             822568debeae702ca4d1f3026896d78b2d426e960d77cb3c374da059ef09f9fd                                                                 
-                  colors/                                                                                                                                                                   
-1085                MIT-LICENSE.txt                        bf31c5eec1df64ee686f74f571f869debdb1fa4a00ef9c6cf8c4620d478d741f                                                                 
-1299                ReadMe.md                              9a1513b3fe500d5d26c5dd10ab04510b400e89e3186a3eef198fb681d23b861d                                                                 
-10646               colors.js                              06f91ea96610355e8a4464bd051648c7c1e20806a8ba177a7a4bf58801f68877                                                                 
-2551                example.html                           351886c29b07681281e930182d756101f122727762d1108ee410315e7fbc8bff                                                                 
-2423                example.js                             e6d20c6e7928e48dd904da77141b4cf32b6771f6e6d85a3a86cd0536de5b5092                                                                 
-1096                package.json                           c5cdba55e937c156f314aa660e1d5bed3186f8a303a3d8960c99e87481c70a11                                                                 
-2138                test.js                                a3745a2ea3be672ff3f133edce7f6f029cd361b51b8756b3454270d66d12be64                                                                 
-                    themes/                                                                                                                                                                 
-198                   winston-dark.js                      b5d633b5845dacc7ecdf233f58a71975a1c7c22713118cb3591ad943d61f6ce9                                                                 
-197                   winston-light.js                     66246d67bc87ebe9a26e5e912c33c3440cf039c96c3612311785fc8963bc9a34                                                                 
-                  gpg-wrapper/                                                                                                                                                              
-109                 .npmignore                             ec278daeb8f83cac2579d262b92ee6d7d872c4d1544e881ba515d8bcc05361ab                                                                 
-3606                CHANGELOG.md                           7005816f08a0721caff716ede9db01e4dd8b8a093aa5678f66dc735fb746e91a                                                                 
-1483                LICENSE                                333be7050513d91d9e77ca9acb4a91261721f0050209636076ed58676bfc643d                                                                 
-502                 Makefile                               960fe8002c2c2866c0963c9b0ed138dcb2a4feed693a3c668875935902f9b486                                                                 
-55                  README.md                              fac7947ca164bd97f854cec88bc0266773ec378f4fb79cb1554662a4fd4079f9                                                                 
-4788                SIGNED.md                              9a2c95ce2a16faa7de59181bd8163ee922ebc56a994ad0b35f4a938973eb07b1                                                                 
-                    lib/                                                                                                                                                                    
-1100                  colgrep.js                           8cca2968a077b03d45b761139276f24f32b2a6948ada5fe825fcfd804105cda2                                                                 
-408                   err.js                               ac74e7dbc52d8da10a4544bbedb78619a5407cdcdbb3893e7584fc5ca41c8e0d                                                                 
-9864                  gpg.js                               58f656e45b780600861b7d65c55a3720804ca9697f8cf996247486829f186bf5                                                                 
-11120                 index.js                             821e84c563ead9729196d12a80f3d990cd485fbe16df6de264fdc457fd781286                                                                 
-92762                 keyring.js                           fda9c5c6d615c44e6ade52b884bf672c970a4737c9a2edee3f693c77df39e61e                                                                 
-387                   main.js                              92476f33f1ce68c8f74c993c3b3d9603b9f435f44a69ec3098e552b0c4d736b8                                                                 
-3985                  parse.js                             57abc69755fc4eea76600b17082827fc23574fd7ba5b2a414cba40b89f0150a2                                                                 
-1429                package.json                           09d5569bdcb77a8bab85ad0ca10d66ae7950e6b68299548c3f99bf9f77c688a6                                                                 
-                    src/                                                                                                                                                                    
-604                   colgrep.iced                         a3c53c57e739b9af47f7b8cdb31c3aaf3f7416c978e7905ec42bee4966bc3920                                                                 
-351                   err.iced                             db7ddbbfbe1f076ad895a83e22cac8e720f260768456dd6aa0c97e5faf7ae9e5                                                                 
-2590                  gpg.iced                             cc3921f2f7c8b56940b3a8170e587d9375e7c58c50e873134c79c969c2db5148                                                                 
-5740                  index.iced                           8d9d3029f836f5c608a75d010e557cc7cc7da8444b530191c9ca4282952dd8b2                                                                 
-28456                 keyring.iced                         091e445fbb29355b5935e19c35f5952ec315bc7029550b7a122c2e76d9038192                                                                 
-225                   main.iced                            d06200c91a7f18bf1ece9ed92123ecf2362cf4592318ca23639b08356ce877ab                                                                 
-1731                  parse.iced                           f031af161d3e124ef77ed4ff2e679b84db797c2462d407be0975383c30400857                                                                 
-                    test/                                                                                                                                                                   
-                      files/                                                                                                                                                                
-1066                    colgrep.iced                       e055590058160122daaddaf0fe2784394981c3d599a86cfce892b31dc89e030f                                                                 
-360                     error.iced                         d47058171d6c5a61c57829d9b9fa05f6c06153ce899d6a6ae61dc13c32b956ac                                                                 
-1690                    gpg.iced                           d44f312444b293b551240e3028ea08b3e7d98818c9df58f052ec37b78b410b1a                                                                 
-10403                   index.iced                         fb73ed7d38df999852f8b68e0fcf2c37615f24eaca8d83e2f9b353d18380f338                                                                 
-36214                   keyring.iced                       f91c6534f85e4a1c09144539d03026b9152e86e45b994312b6662233751868ca                                                                 
-1458                    parse.iced                         6502b4cbe550249868f8c9f257b621898ba76acf1e20242ecad1b811e0829c3d                                                                 
-183                   run.iced                             822568debeae702ca4d1f3026896d78b2d426e960d77cb3c374da059ef09f9fd                                                                 
-                  iced-data-structures/                                                                                                                                                     
-26                  .npmignore                             4e78c851e7976619549057ac93db40a71d4f0045cb5411a484bfa4c150bb6702                                                                 
-1080                LICENSE                                99a379caf346f0f4ccafb8ef3e33cc195cd237e3442bad9616aad1184a2f78a7                                                                 
-347                 Makefile                               7c1c8d4e116c05d44b0887097d8e00759ad4c2ff348eefc8fb364c1d8325a6e9                                                                 
-79                  README.md                              5a069f1f6a3ec327a6e95b859f9d5e83eb7afb290542528a07d2306efaabebc6                                                                 
-                    lib/                                                                                                                                                                    
-114                   index.js                             85b827cda89d0368018971992648c69d3efc9a881a8522fdec4c2e64b04bf7d6                                                                 
-1262                  list.js                              b015a7b7ebcc27f0914ff54c591d870e01e23e8448dac1a2853e84221f6e00a3                                                                 
-1395                package.json                           e5753a050c5521beafe3be6db2ac5c52fd8ac4776a54713e52a98e6d88abbab2                                                                 
-                    src/                                                                                                                                                                    
-38                    index.iced                           a36ea9026fb114a208cc20cb20c157d356593a0a595095c49999bc9a01263092                                                                 
-1215                  list.iced                            3532a7b7150327b215232c652eaf11364868327ca804f978459235197d7e7bef                                                                 
-                  iced-error/                                                                                                                                                               
-13                  .npmignore                             16d30e4462189fb14dd611bdb708c510630c576a1f35b9383e89a4352da36c97                                                                 
-193                 Makefile                               23c9b8634bc5ded1e2b925af63ecf89842491817000ba7fa2a4e68c6c6248cc6                                                                 
-1675                README.md                              231664c0e663782b27f6a8290604ab1ad48f072441c2347aaa495f48232b251e                                                                 
-2405                SIGNED.md                              b920e8e1060016a1da5f9f029d341c6276bf58cc322d1cd7aaebe40dc5b271fb                                                                 
-4026                index.iced                             81a0d4054cbb60d4fbfaa58854ef2335d3a581781267c12b23f44632e9b95514                                                                 
-6523                index.js                               e0f9763f0eae8ba5763e36772cf04360f4b8ff5ac329d0cac68a574e88bbe37b                                                                 
-6177                index.map                              5cbff70c7b57c57d2ad91d2740358d50ef9bd7741aee60d8f6716568e8d57947                                                                 
-1279                package.json                           80796828661566d06de064b6553ac250e49e63ba01a345f9c64f6f1941097710                                                                 
-                  iced-logger/                                                                                                                                                              
-109                 .npmignore                             ec278daeb8f83cac2579d262b92ee6d7d872c4d1544e881ba515d8bcc05361ab                                                                 
-1489                LICENSE                                1e933ceb3f4a00ae33672d4e344f9ff26e92bc8f34bc0c7a52fd0ef257607858                                                                 
-296                 Makefile                               bbcf957dce2d62b7bb7e767b69e97c22a1118896e3eccd2061d465127eeb5a86                                                                 
-85                  README.md                              6bac611fa0fdfd8a5a2e4ea5a1f974f0f037589c66d2209721171b300a8cdba0                                                                 
-2391                SIGNED.md                              86c6e00f4e3a70c038e97f37852eda74a15508b23be53b385fad71c1f36a6fe3                                                                 
-2976                index.iced                             57ab21fd0aa63fbc8fe0fab1e019b83e8005accf3a3b260af8efe72673615efd                                                                 
-5218                index.js                               fea659c4bf10bfb1215d09a85d2cb16fbf68ee7a60ef939e0a04286d80f53fc5                                                                 
-1285                package.json                           e2c0c89f41eecb5d8904cc8aa9f82d5743489f49734edca44b69b732130197f4                                                                 
-                  iced-runtime/                                                                                                                                                             
-547                 .npmignore                             a3260451040bdf523be635eac16d28044d0064c4e8c4c444b0a49b9258851bec                                                                 
-469                 CHANGELOG.md                           9b0855fc2d72965a423495efd01bcce47954281f911f85ae723a60ab6dc6a7bf                                                                 
-1062                LICENSE                                f5f4ff3d4bd2239d1cc4c9457ccee03a7e1fb1a6298a0b13ff002bee369bf043                                                                 
-407                 Makefile                               32e05964b75b43fd5492411f781568a8e8ea25f1ec9c12ddc795868549d231f6                                                                 
-56                  README.md                              0bd4207a9490a68de9a1b58feac0cdeff349eaa778c8a0eaf859d07873026b07                                                                 
-3215                SIGNED.md                              3339f67831e8decafa4eca9a399e4bbf0ff9a88a14fd4c741b758cce64f8e273                                                                 
-                    lib/                                                                                                                                                                    
-948                   const.js                             4f5863bd6285c4e14639131ee041466f6a6b9c778eb4674d0646486eff65788a                                                                 
-8917                  library.js                           37ab82fb064111b42497ad8c93d3aef595fc9883cb61a4a1d424ff7ae5cb5447                                                                 
-348                   main.js                              f29a1669ebc50cbda9dec9685acfb4af2248f48b997d823b43bb28671ba8b6f4                                                                 
-5454                  runtime.js                           5d521040b0f9acb61a99842f8ad75973ba7c1799adbe9da85df3a8adf8d60982                                                                 
-1385                package.json                           d0550b6d746226ae18292a6f15487f8e58cd3cb7702977f2033794c19c71d012                                                                 
-                    src/                                                                                                                                                                    
-815                   const.iced                           e8b6ad6483b983c28e2ac82c8f4f5458a13ec4d38e2eec21d7bea6dbf1108fad                                                                 
-3881                  library.iced                         2acf49cd6eceae202a162af11b98b4faf5cd2bcee186cad669b59a2d22643dda                                                                 
-142                   main.iced                            bb74f97e5473e7f9b5f79264f3a3ba7126a4849d97fd37c49dfdbb711120e314                                                                 
-5273                  runtime.iced                         2c45cb02f7fc17352605103720b0cace4d0c42e9f81a9bb99112ff83fb663fe6                                                                 
-                  iced-spawn/                                                                                                                                                               
-109                 .npmignore                             ec278daeb8f83cac2579d262b92ee6d7d872c4d1544e881ba515d8bcc05361ab                                                                 
-1262                CHANGELOG.md                           d166bcf97a18d42a9fb07390a9cb2d7062214d965c129b057a424d18556c8830                                                                 
-1489                LICENSE                                1e933ceb3f4a00ae33672d4e344f9ff26e92bc8f34bc0c7a52fd0ef257607858                                                                 
-395                 Makefile                               02abf7a21a3e70691d33338da881c966359adaa1a138c57d1c5815ec183acde6                                                                 
-67                  README.md                              f278a0ddb855b655bc037f249a7009a7f6f2b459b1a1ff173ed128ed53e1331d                                                                 
-3812                SIGNED.md                              c4151462c7af89ffd2dced002e171018e36658bf29ebc94fd34ba6a6d81717db                                                                 
-                    lib/                                                                                                                                                                    
-15596                 cmd.js                               ae070a5dfa716069b0f265d49047281a3cb796f54e525f5e47a5e4df66f8ce84                                                                 
-301                   main.js                              6d422ce96c4ed5d06fa50eed665c65ecc9b8113831e0a7dc131230e57acb724f                                                                 
-4029                  stream.js                            5de24fd5e78e0da6135a858967054ba6076bc7b6780f1f12e5fe0005c1b69e03                                                                 
-1457                package.json                           b51eb0c719ecc7a0ca760677ca42fc00a230f5a3ea928d758291587e8150dfb0                                                                 
-                    src/                                                                                                                                                                    
-6627                  cmd.iced                             2ab7a08cb365927f06fa2a5e61d3cc309ef9abf2017b8b8d6ef50ce95d6a1ce0                                                                 
-105                   main.iced                            ebfcac1e8601511a4413583b4dca40bb5162ee02ef2295b418911991efa06fc0                                                                 
-1898                  stream.iced                          db23e88641eeb10efae2e67339c3330609298592b47c6eb65b8780ceddbe7af6                                                                 
-                    test/                                                                                                                                                                   
-                      files/                                                                                                                                                                
-3324                    0_basics.iced                      4f9e2e14e23ec96120cc4d892e0c68cb0b3f500a5ca80d3494791795a6e534ca                                                                 
-797                     1_other_fds.iced                   7a72b8a0cbdf73365b3416c20c3f0759637f76589f0d6709b362efa614915560                                                                 
-353     x               write_to_fd_n.js                   91fd6ef8d8f6d26c183e92b6cda00319cc3f9471158f8bc266d398f0998d3bc0                                                                 
-184                   run.iced                             22ba5b18735c1555661cae1c7e91f76b2a4cd350863957ec5137a133f177ccfd                                                                 
-                  iced-utils/                                                                                                                                                               
-110                 .npmignore                             71f9c0f0263e54e773253b0ff92e43970e8288db495d9638ac2bfecee2d2f43b                                                                 
-712                 CHANGELOG.md                           bd26cb85df40d114ced6bf277d322c32f1fde9c6b89ee3de1a85e3ec98f1d307                                                                 
-506                 Makefile                               ffccd2051ddad6b7c95582f8f218abcb160761fdcb24a76395a54947cb5ad77b                                                                 
-119                 README.md                              631d836cb2b1e05957d9da1eb7d7e5dd2db3ce83edc6d5f8d1f8dd84c0ca5e96                                                                 
-5103                SIGNED.md                              5e2a92e83d5b793d21de7c4edc4a8e92a0ad7fe91503bedd31400b4313e57937                                                                 
-                    lib/                                                                                                                                                                    
-1305                  drain.js                             4ea0841d2cf07b872e72048043946a1e016ccf09c917455a2bee9c6a358dd7a9                                                                 
-360                   enum.js                              d22333c1a5e72e0978dc301447aa4e285144f49bdd08e631836e1da5c57b2877                                                                 
-11420                 fs.js                                0983493f7c1850b57d007a2d30d6d96c74da3575298f6df6d693f76330ec97fc                                                                 
-2081                  getopt.js                            07a3fd9a325b84c12a0a379a8bcbb7223a8a9c8184f91447a5921857f42144b8                                                                 
-2684                  gets.js                              3a1079865745407c40aba3349a4bf92f7440015d1e8a62b731e5ee296673243b                                                                 
-3192                  lock.js                              c61d1fc71c496ee0ec7985954fbe9c1946062e30ab68417d35e4c37113977f8f                                                                 
-19414                 lockfile.js                          c6aa2fa7e2cc2d97fbd03a1da8690fd729824cd4298ee1636841dd3053aff932                                                                 
-423                   main.js                              77891c8cd0c92c7cbd4308ba1a79f579170b02f3fed7e2749a39906db2a02ac7                                                                 
-5492                  spawn.js                             fdd6367e1ad33a04f235c02fa0fbeeff81df1ded2dfeac6571fb7236da25497d                                                                 
-10724                 util.js                              bb3c21b7459ef37e54363c84a162c3c12e2fcd6b2ab1e42bd481913380e5e9ca                                                                 
-1411                package.json                           9a08e76a9f5f81a72123b2ecee8035ba8d401687033fafd1a0c5dae9e98c8423                                                                 
-                    src/                                                                                                                                                                    
-988                   drain.iced                           72d252ab54233c0dc16a94c55d8dc6b2227a03efab73ebf58a29d42919a910a0                                                                 
-275                   enum.iced                            189271c330eb6db654879469828332cf78ea87e210d1d7275611a2e1e1fb4d15                                                                 
-1756                  fs.iced                              205ad199023ba430ce4b6771913424f0872c90ed79afc13cc919159653e389ad                                                                 
-1229                  getopt.iced                          f04f8aa337d692cd3fa49833201961a923fb3aeef76850d9ad40c191fe4f341b                                                                 
-2081                  gets.iced                            e289a75c4d10cba1f7e156df5637b3e0989c0ebefd2842b3262988347de4787b                                                                 
-1123                  lock.iced                            00e0aad9cbe1aac2031640a78d7f6a71e05975af1850b815311f9290f9ce2fd9                                                                 
-5009                  lockfile.iced                        4965dea73b8739ab499704c8213f9d4c875f7271907e41ebd0ea90c79db35aa4                                                                 
-308                   main.iced                            de11b3ce29e469a3c111c939df9f9466a5ede914febbbfcd401a8c1842741e05                                                                 
-2621                  spawn.iced                           c8f801be169434cf2a6dd8650f12d71c3656e098d3ca6b8f3234c47b1e497997                                                                 
-7326                  util.iced                            53c7437de325cfcd4270fe61fcc12e626f242e6e2a04b2b636bdceb4d19368f3                                                                 
-                    test/                                                                                                                                                                   
-                      files/                                                                                                                                                                
-1063                    dict_merge.iced                    3a42886bd8bd895beedfa82e67535e1721951aa05f7fb5257f235ec31e10dd1a                                                                 
-357                     drain.iced                         181131d2a8f176b591ae58b64dfbbfbb80c47c9bf617b02199672eec2880efc8                                                                 
-685                     getopt.iced                        bf6f7168dcae23987f74518f47256703e7db98f7a64bbc91d23276efe09e2ee2                                                                 
-183                   run.iced                             822568debeae702ca4d1f3026896d78b2d426e960d77cb3c374da059ef09f9fd                                                                 
-                  keybase-path/                                                                                                                                                             
-547                 .npmignore                             a3260451040bdf523be635eac16d28044d0064c4e8c4c444b0a49b9258851bec                                                                 
-1482                LICENSE                                9395652c11696e9a59ba0eac2e2cb744546b11f9a858997a02701ca91068d867                                                                 
-334                 Makefile                               46ef2af0d44ee236eaee20196dd2301b83e55517d3a163abdc5e9e40a8b0c0f3                                                                 
-57                  README.md                              eba23a2d29ac9116c43978735933bee668cc87c8e6dbe7314a706025f5086fa8                                                                 
-2591                SIGNED.md                              6b564e067baa2ccc116af8eef687f16520fe10245aee13f989a41d278f5897e4                                                                 
-                    lib/                                                                                                                                                                    
-6891                  main.js                              b46b3306b91345fe1925b502e2c572244d68c61e51b156709b58e279f539cadb                                                                 
-1350                package.json                           6799adbe112c52bb79a647cf4dd41c1bff4b51f14a78796bde1f020af4f52e57                                                                 
-                    src/                                                                                                                                                                    
-3538                  main.iced                            bb9510b75a3c9462b8a07f091308cab8b42a93d7667cbb4e4dd41f6776a5db81                                                                 
-                  pgp-utils/                                                                                                                                                                
-109                 .npmignore                             ec278daeb8f83cac2579d262b92ee6d7d872c4d1544e881ba515d8bcc05361ab                                                                 
-1487                CHANGELOG.md                           cc232ad3765b99333d9cdba90bb54f0de00e2f87845dfc6c809cbdd94866b92a                                                                 
-1483                LICENSE                                333be7050513d91d9e77ca9acb4a91261721f0050209636076ed58676bfc643d                                                                 
-437                 Makefile                               a031266cdf17cdf3236a0f641bf9eb2a882bf49b5e5aaac8686e4d02e5f0c4b5                                                                 
-106                 README.md                              0d5a7f840664005562cff3e2cee8d0d2e7468e24c4380169b6516ce318602f50                                                                 
-3833                SIGNED.md                              b207121822c5756db67c6669ca5da9325b851bf6f0f661304394c3d713b3afe3                                                                 
-                    lib/                                                                                                                                                                    
-15455                 armor.js                             b1dc8663860bcb9c228d7e29ef6ebc7a18781094178fd6d4fd87d450a18c0a09                                                                 
-187                   main.js                              c94977c724c76d803edbf6a08ddbc300a6aa930bf777fbd423eecca05f19fc54                                                                 
-814                   userid.js                            2d0fff34cdbfbe9ccc7c80cca2a5dac70328e813178a41777efa4b3b1bf63650                                                                 
-12760                 util.js                              b6dd08e6eb21c7bc844cf861ad4b2719a9a9c2a48f8b11a64b560ea83c8d6b16                                                                 
-1395                package.json                           de55c256a4472d2c45399a3a54d7de41785b489db726d5879834c804391d15e9                                                                 
-                    src/                                                                                                                                                                    
-12767                 armor.iced                           1b6139fa13e3d3fd3e1a373c0724c0f680a362c081b0410f8ba956575176c4fb                                                                 
-103                   main.iced                            4f6935672c854424a9d7dc96d3e446d39528b76091b4d06e199c67c5511cd09e                                                                 
-843                   userid.iced                          d73e0350adfdd2a397fe6971109122db2d2017e05aa4911b64fd729144c322ae                                                                 
-7630                  util.iced                            b2267ec8b70da4d3309d2eaef2b2d45a8b0b291739b9150a3331fd019b52011d                                                                 
-                    test/                                                                                                                                                                   
-                      files/                                                                                                                                                                
-1627                    t1.iced                            025f26ab9a72bc0c03ff9f39071f51d5fe08023cb5f38717082b587eea9bf5b9                                                                 
-4014                    t2.iced                            646fcca1ca1648260a94b9f6cb0ffe8baa734b928a58bb94896f1787bf685f52                                                                 
-2163                    userid.iced                        877fa6a2a5113ddc93a45408abc25ba2a206501c873279786fa7f7bd7e8c7c30                                                                 
-169                   run.iced                             70ef38fc04a9ee264e2317e5b4dcb00a69a996139e98b5d9e34d0ffa16609479                                                                 
-                  progress/                                                                                                                                                                 
-29                  .npmignore                             083b765409c2fe14fa2382834cccf719bfcdbc2ff9a90be37d229038e1d0eeae                                                                 
-884                 History.md                             6ca032ce52713be3c123ecb2194ea90087786917d1bd37c73c2c305263a94498                                                                 
-41                  Makefile                               23dd759df1f4e4903d7639f47f8cfd19812caaf390231f15971934bcde560464                                                                 
-3333                Readme.md                              0e198a8de45a272f840f0e3a450fbd6db75673483796f56655012007528b200d                                                                 
-49                  index.js                               bad8eafc784a18555566c1c52a6e03ba72dd58ccd6d71ba06244994be87aa7d9                                                                 
-                    lib/                                                                                                                                                                    
-4555                  node-progress.js                     0904ff0d934663fda5727b706398dd1b331c98685d39286ff4b2915df644d35d                                                                 
-1230                package.json                           5bf2b5028fec10c28fda26807f1f7f71e006c9c84c1ef7873d013a58ff09a315                                                                 
-                  request/                                                                                                                                                                  
-1444                .eslintrc                              4eaa3125ac3e4b00d85f12d69fe83ead90ca56ac5f492d2b3cf88d746cf5564b                                                                 
-28                  .npmignore                             160afaa104d32a198411771392f56dae3c0ba42601bf21dc555153c3af930fca                                                                 
-435                 .travis.yml                            4f8bba610fe3cc3ed5de63e7904f61dcf83a383b63a2ab8fe6408f0d38f32b4a                                                                 
-48347               CHANGELOG.md                           383573f714ebf55a30b295c81af246654a76330f40bb0d5d8b781d0184c13af6                                                                 
-1821                CONTRIBUTING.md                        e526d5887c2358ca71c7dff8ddb15cb3934196423c66b5b2b7b13436071441f0                                                                 
-9140                LICENSE                                d446a8c73d7bbe4872d6524b15ae206f9a2d7eb53f8c9cb6e6c893a43acc5276                                                                 
-38863               README.md                              d9c737ee0966d2ea79547c4fb9b22143e083c6649020ec3a7bf195ec772b2be8                                                                 
-940                 disabled.appveyor.yml                  5201d5f333df67c66078192e0c85b8d8eaca8070f2c3af21e52ee1737923e9fe                                                                 
-                    examples/                                                                                                                                                               
-2463                  README.md                            c291f00b121f9b30c554fabf434fd5dd56c62a05694cd7ae28d684b695e6802c                                                                 
-3943    x           index.js                               6bdb1328668747d7b4e815265a6b131bfbc7c165fbbb5bde367244ea8caaf7f6                                                                 
-                    lib/                                                                                                                                                                    
-4214                  auth.js                              589a082d5ca4c3d02ea31072b9a24abc3d2690aec82058248b64cb07cd406329                                                                 
-935                   cookies.js                           2cbb36d465eac68f9253fa9733ac9f301ed7079e8b4f36d1ea1a3b6acb3e83fc                                                                 
-2268                  getProxyFromURI.js                   7b66ba770bef5fd5c7466f5bfcf5e15d9de58fee2d4f27934b0b879a2dcf31d5                                                                 
-4787                  har.js                               e80eabc27f770ee6391f1ef07ad6d66f0da8aa1c961c340bda7237aae2f31a22                                                                 
-1344                  helpers.js                           e20d6693224143a7f11a7c64fdf50dc61220c85a6e9d41fb4b0b702aba6d8cdd                                                                 
-2562                  multipart.js                         b286721de9c72bf6c73effee95c17a71484f6c51119db07057584b8b731d8e7e                                                                 
-3954                  oauth.js                             b9ac14714a0b152e46c80fe4a9830386be963fb64b4219da04910faa3fd7fd54                                                                 
-1333                  querystring.js                       a163a893298bca63622ba1077e43322106f3757c2bcf62ae1bd2713f4f025280                                                                 
-4431                  redirect.js                          9d276272660d66a452fd3c4daf4c1a6901abc928a40820a475838fe9d9136462                                                                 
-4839                  tunnel.js                            b1a6cf0ddad524cc79d2185b366ecd408b3b621afb44ce56bb3a61422605a51b                                                                 
-                    node_modules/                                                                                                                                                           
-                      .bin/                                                                                                                                                                 
-                        har-validator                      -> ../har-validator/bin/har-validator                                                                                            
-                        uuid                               -> ../node-uuid/bin/uuid                                                                                                         
-                      aws-sign2/                                                                                                                                                            
-9140                    LICENSE                            d446a8c73d7bbe4872d6524b15ae206f9a2d7eb53f8c9cb6e6c893a43acc5276                                                                 
-130                     README.md                          91c276a71be3a302744159111925df77c1b24495ec539f9af13249803888c69f                                                                 
-3896                    index.js                           0e075022adc675a7a535f1b2e8b8adbfbf1d89c430521f0d81925a1295c8dd52                                                                 
-1046                    package.json                       acc82d853e421bb92bd75bd972d202c1c700e8bd3dc1dddaa0a406aacf39d2bf                                                                 
-                      bl/                                                                                                                                                                   
-1147                    .jshintrc                          013f74283e3cd84de64ebd694f8554a26338ede29e2e26d38d01e196e0e29ab7                                                                 
-13                      .npmignore                         f1a9a09b226cf8e98a4286200c5d9ebd5c28924707ac3317947f8ecf06ab167b                                                                 
-136                     .travis.yml                        840779bed14bf71231a64f2252dae4d26699d303377bbb6cf50d0e23a9656b5e                                                                 
-1211                    LICENSE.md                         d37270e5c730a6462aa3e981b1fa7ba01c52ea5879ed11dff0c92787e9fe3bfc                                                                 
-10071                   README.md                          5ae906c522a09daa257eeabb6967284417fb274a736f5f9b3076f4d04a2aa2b9                                                                 
-4949                    bl.js                              c162139a8593ae19d3fb6961b68d072914dfb445cb7dbf955182c87bef17a6a4                                                                 
-                        node_modules/                                                                                                                                                       
-                          readable-stream/                                                                                                                                                  
-36                          .npmignore                     154c3296f2bad8cd8e211ddc23a63b46c41d8d12893a758ee04df448050ad7bd                                                                 
-1096                        LICENSE                        6239c6144c31e58cf925c34483606969c555574d64ffa96518ab5d7f45c75d43                                                                 
-1305                        README.md                      997c6d2c52323f38cba4c6d56ec775766f3947c8ace4c811a89295d8e4dec39d                                                                 
-52                          duplex.js                      d9ea228c522461b16bdec57c67fc8a2ba2b2b15b31e246b976ce29256479dbc3                                                                 
-                            lib/                                                                                                                                                            
-2811                          _stream_duplex.js            de52709f6e4b46b9bbf2923eb050227ef0c0ce9fc0aa059624df467708951e61                                                                 
-1727                          _stream_passthrough.js       ed7500b5d6aa0af8821b6afc8d7a77b3b18e405991f4a05230641274a12699c0                                                                 
-27120                         _stream_readable.js          cfbbc0e5266a9e8ff28bba5b8465293b62ccdebeb294f620d415d90009a73f5c                                                                 
-7396                          _stream_transform.js         a079035a08709da67f75ef792cff5a3877796f460d4a660b4e61d6e70f803701                                                                 
-10902                         _stream_writable.js          62f4c3706e0c3d9783255fe60c38ec681c8dcb507154d6a85e20ca975b1196e5                                                                 
-                            node_modules/                                                                                                                                                   
-                              core-util-is/                                                                                                                                                 
-67                              README.md                  57072548a79553ec5a930b370f5f37f2b86f57ab39357dc63e097c7e8ba7412a                                                                 
-16278                           float.patch                742d8ed95f4f654bf356816c433f2cd7a80580229167ed76184bc12c52099c40                                                                 
-                                lib/                                                                                                                                                        
-3040                              util.js                  f8bd1bb95c23e25d0e6f8667104084e4f7d1706b5f4ea19ad57e6af7793f29a2                                                                 
-1010                            package.json               5a4d509555f316682ad72f5c5cca3490add5176fa3ab1aa24ffd783593641794                                                                 
-3012                            util.js                    b2d96a767bcdfd42c9d0fccaaa21d7c320d1f91187d79d0bbe9942db8b73d529                                                                 
-                              inherits/                                                                                                                                                     
-749                             LICENSE                    5ffe28e7ade7d8f10d85d5337a73fd793dac5c462fb9a28fbf8c5046c7fbca3b                                                                 
-1625                            README.md                  b33c8be1ca837d9e4c9b0e04a550feacbc101556164d3cdbb875aed6ccbb8a29                                                                 
-42                              inherits.js                6441b86872fed2eb3180dd2d9c5b8efb331546224d082862cb8da42cbd44c967                                                                 
-672                             inherits_browser.js        34a98a1fcd39e12adbc98cc2d6dc3d99bb5a5a83ce8e57050826e9e539b4ecb0                                                                 
-2552                            package.json               7ef2cb5f558decaaa86471f8faf2c9c2332ce892071aaeb35f6703e3f3dac58e                                                                 
-510                             test.js                    f7d16c0375c02479b1f14b1f5f361b465e136ef2a796511c588b31b9c968453d                                                                 
-                              isarray/                                                                                                                                                      
-1557                            README.md                  5601c343c9aa96449e18aca7a4562038b1d4062f4742a2c9c7f9039f1a303f72                                                                 
-                                build/                                                                                                                                                      
-4089                              build.js                 4dea6ebb438a08b17cc6c5499a5682526de7c8f73e879d8685a2c5e38166f09a                                                                 
-470                             component.json             f9e5ef95d8e8f65a5dcd3a200b38e5a13461ed95114dac053d908c391c12d731                                                                 
-120                             index.js                   74ab5ec2cd52e2c1ef699859f9c7aa7a6408f7f7231576db3b0b56af1d97d966                                                                 
-2908                            package.json               6d24e1f876b0e6758adca424d741642405fd900aff2db7ffd8f5edd696e86412                                                                 
-                              string_decoder/                                                                                                                                               
-11                              .npmignore                 4b7e7ab61fc2d8dca0b3996b8bc3bea4f4f2464d66a9804370f7329d5de3259f                                                                 
-1076                            LICENSE                    21a82bbee91262a076c2e34533d51d73475d55e889f1c42cf884c86b2a0d5773                                                                 
-498                             README.md                  40ce2312a362b5f3c36535b414ae67425ee5b3bef1916e587e7227bf3dfbde4a                                                                 
-7796                            index.js                   80a2189c98a61ea4987ce6635df8c8685054aa274c672df4bb1cff023b06fb74                                                                 
-1367                            package.json               7b461fbee19ecbb5e2cb67b56f9f09effb0a7532944de0ddef1dcb443ad21b27                                                                 
-1722                        package.json                   516c3f46269570c2fd72cb803b1a26d9019da9f678333a525d01c800dfbef471                                                                 
-57                          passthrough.js                 e0187e784bb653876aff1a3a235b9f194369863b583fd6e7e789fc15b37c7c26                                                                 
-451                         readable.js                    8b264841af5fa402568b52c686e099447e13319415006dc00147cfe00eb19913                                                                 
-55                          transform.js                   8f8b0728a921ec127d314c6a7b33dd61b4e37ca0fff8a90747966b32fc11f4cd                                                                 
-54                          writable.js                    bc2e31b8280a60c2adf90ac4823a0ed7781e3eccd2b9bdc47490b995bb85dd11                                                                 
-1659                    package.json                       2ddf378651dc5d329c08c0895af625308d4ff0acf916708b0a687d7b516e62b8                                                                 
-                        test/                                                                                                                                                               
-12783                     basic-test.js                    fbf3369ed238413b3747f12d8b3d1f52b96d7f369315bad23ad7724f5bf315f0                                                                 
-1829                      sauce.js                         eb1f1151e519dabc090470192366af6d3711cc408a4f06ba64437e14069638a2                                                                 
-291                       test.js                          01b46054e10816ab0bc72ed58aa0a15d46511c26e70d426587ea35ba4e03648e                                                                 
-                      caseless/                                                                                                                                                             
-1173                    README.md                          719d0dc5bc0b677a762078e848c5d8df09a57ffb5bde3679d4e352b31f967c37                                                                 
-1714                    index.js                           f2e79508e6a41d6afcca6234bfee444931630c04c7341e6aaff4aa8adfd06d43                                                                 
-1422                    package.json                       1759afc125f82ffe9b751c9517c38e23bcc133edf755556874f77d8736b0bc9d                                                                 
-987                     test.js                            4fadc64c18fc04f071af9ecaa011caffd0bc198a6ab1cfc9c40236ca536651ca                                                                 
-                      combined-stream/                                                                                                                                                      
-1085                    License                            47eb8ca82c798246774946d1be0f9aa08f025fa8325ced0947aeeb4c05fe5547                                                                 
-4551                    Readme.md                          034ec3a4d08c67191892d0fc0d846c6d4fa0fdc7e7f78855e212ccd36a4b15ca                                                                 
-                        lib/                                                                                                                                                                
-4300                      combined_stream.js               b97f5a2e8a926848985ec30ad10542557ed58da349c4ff0c4c8c5c1e01385ed0                                                                 
-                        node_modules/                                                                                                                                                       
-                          delayed-stream/                                                                                                                                                   
-5                           .npmignore                     f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2                                                                 
-1085                        License                        47eb8ca82c798246774946d1be0f9aa08f025fa8325ced0947aeeb4c05fe5547                                                                 
-57                          Makefile                       90e1ae0474085186499fe5a5c1d6ae31726175fa4e1a2158c9914be4bfc5bae6                                                                 
-3871                        Readme.md                      5940dca6c65d1bf74e089cf84a3948e7b2b75da5dc50a36df470f7393918cf1c                                                                 
-                            lib/                                                                                                                                                            
-2319                          delayed_stream.js            05f147c24e59e1c538329711b6e4a389fbbf321290fe176cda18750298d77c72                                                                 
-1661                        package.json                   abd99695ebb8e6a1814c479454a4dd61ac86299b3b4cc8eea8b25c48b5b2fed6                                                                 
-1738                    package.json                       17d34c5e646400d77bcd334f9f4201e81fe670524ee4b03241155311ac4fc4b4                                                                 
-                      extend/                                                                                                                                                               
-1981                    .jscs.json                         49361c10a96e6f98ababe55ddf17e6873e7f9d8a4ba639e3c8244b8c6faed42e                                                                 
-4                       .npmignore                         9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08                                                                 
-686                     .travis.yml                        9f1b03b19edb74789d5259f8a863d7c51f461e00b580e85ae0bed71ba288eae0                                                                 
-1904                    CHANGELOG.md                       45e300c3b821c4ec5d23af40f2c2f1c874d0060f6a49899651517980a793f41e                                                                 
-1081                    LICENSE                            97af7428f93afbab9bf79cd09254da1357161794f4255eb1b4599f04dd2d2e7c                                                                 
-2360                    README.md                          28796e1c41182c235d478e3f5e632fb3251561d9bab4a2eebe76c57ba9107653                                                                 
-581                     component.json                     66ec9d7985cc6492d9f462adb22fcbe14d702df4ce4bf7488a2e55d59357c23e                                                                 
-2298                    index.js                           42fb698d490cdbe45e461f4fef6c84a9abf6551e67c1137b4e02f571d819fb6e                                                                 
-1791                    package.json                       9d5a0934a96e0e0edb817fb9529652932f6646ee5a7692bc766bc118de7f0739                                                                 
-                      forever-agent/                                                                                                                                                        
-9140                    LICENSE                            d446a8c73d7bbe4872d6524b15ae206f9a2d7eb53f8c9cb6e6c893a43acc5276                                                                 
-163                     README.md                          6ccbd2dec0cf88b9b243724d410c94d690411117f3b29b7e33b6b9b95e585991                                                                 
-4176                    index.js                           dcf8adeb662f9c160f117c50572d1000ae7173754e152bb4e118d04b92a3eb05                                                                 
-1588                    package.json                       669f2a72f504f949a323faf377875cae67c16c9e733ecf1e17c0ef9678eceae6                                                                 
-                      form-data/                                                                                                                                                            
-1118                    License                            e5b780d4f38d1d3328e3e53186c4e62d3fa149ea6f2bacd5de5ad0c30ac85343                                                                 
-4812                    Readme.md                          a26b9f64fc774d0ecdfc37ee9a2f70a1be9c9ea30c59ab55713fa003b7ceb467                                                                 
-                        lib/                                                                                                                                                                
-9588                      form_data.js                     7541d9560029cd9e25d1d14b27d8d7e360db1eb9146cb77a87679faa10abf290                                                                 
-                        node_modules/                                                                                                                                                       
-                          async/                                                                                                                                                            
-3454                        CHANGELOG.md                   aa6833ef54d71ef90acc4444a2b5c12fac3554637bdfa6298101d979ea1330f7                                                                 
-1063                        LICENSE                        4d3083ec594b158fd6adfdc6c9423ffe0746d2d93cebfb98f1a35b69da78051e                                                                 
-62126                       README.md                      dc5590316563efe0d8a2c448da154de4cc8731158a8676b0701ef726d05b5784                                                                 
-                            lib/                                                                                                                                                            
-38578                         async.js                     9f7d2afa942b2cb677efaeba08a9b03fcf3fd266f68157e3c176382af6a123dd                                                                 
-2300                        package.json                   40f62170fff449bcf3a44def8c2ff77f56b81f4e8e573bd0a6cec713b8e8f5ca                                                                 
-                            support/                                                                                                                                                        
-1550    x                     sync-package-managers.js     bd3140eeb0490b6c9a3f7e77af755aa5f32174b91a67dbc47963e2bea6ece3a3                                                                 
-                          mime-types/                                                                                                                                                       
-2661                        HISTORY.md                     aa848a510003df47f0a938aeeb36b7acfd0eb4fdad338dc98951947d874a01df                                                                 
-1167                        LICENSE                        71f83c4c0621102a56d9853812777b85751bce7e9726f686f5b056c1f8a4b0e6                                                                 
-2920                        README.md                      dd622989141ebc1bfd57d7a57e82ac02a7589ec3c28f3a7174db8a461205c83e                                                                 
-3643                        index.js                       efc420cb9b3f1dca46cdc475218a6df6ecac339ed1cc747f0e5a846a85fabc20                                                                 
-                            node_modules/                                                                                                                                                   
-                              mime-db/                                                                                                                                                      
-5977                            HISTORY.md                 5e42be080b3ba81d8e87f8eb194085175d853341f87c97b7a4e7e6535e744856                                                                 
-1099                            LICENSE                    965ef284f7f4c176842ec2e87fa13e79feed777d56d7a21a5a3b38f1bb6dc288                                                                 
-2995                            README.md                  be5ba3f27d335f89b3a0ff604794ea9c478710ecb26a0162a27bb85555c55dcc                                                                 
-139512                          db.json                    fd5525f64370f406bec28f3cdff9694993585fd4151e7828edca168d81b289c3                                                                 
-136                             index.js                   a2532ace32711ae90deb4ae4654c5bc4e56f0a1e21bdd15ba26334bf723dfb09                                                                 
-2446                            package.json               4c133d4d0d1f6bd673aa9783a5f3a3128387e544c4e480ae7721a2dafba99dce                                                                 
-2164                        package.json                   670181915d441f77308bdc09e2d3af4ea9a4963109087181d8091cd8596b212c                                                                 
-2083                    package.json                       a8bbaee34ab7f3ac79a26712a2dbd339fe2e57af6b44da297c9fe90f685dd279                                                                 
-                      har-validator/                                                                                                                                                        
-755                     LICENSE                            bddeaacd7d465f81ce1317d5bae2c69006f192c5a91fddbf8662bf37f07c1ded                                                                 
-8944                    README.md                          4d21e80fec4ccac09232065bab4e0dac827a97372e39b84342a6467e9b8c8aeb                                                                 
-                        bin/                                                                                                                                                                
-1236    x                 har-validator                    fb62a1b73a059711a2f4c29c0393079a6765d53a2507310756095bf4c6e3bbeb                                                                 
-                        lib/                                                                                                                                                                
-186                       error.js                         ded81694cad8e84576e96eea4b594ff7b4a140de606f0818802a7752bca17ff5                                                                 
-776                       index.js                         9b64c252cd1c0b1b50d88b616215f585a5e3f14319131955c4ea4ff1e47d0e12                                                                 
-                          schemas/                                                                                                                                                          
-187                         cache.json                     38c5aabb238a4cc122eb02a2600e411c4ded18a1a59dbbb184e1498e816a70b5                                                                 
-494                         cacheEntry.json                7ba5434a4fc3b2e55e58577a7680defb0ee7d58d5eb955bde86b54b79efe93c4                                                                 
-377                         content.json                   6d488052038432b4e06f53ccf25024fa491bd832d6a4f7799e976cb4b63ff0d1                                                                 
-498                         cookie.json                    01381932415f46c987af952c7226dd4fa1b3f72a09645faee242b2f94cad7026                                                                 
-230                         creator.json                   a111dedf26eed2a6bfee843fe3ac827e554ddb7c8291f7330b36b7c21b079d3d                                                                 
-931                         entry.json                     0e795b16cdcde28e26f5eaf93cd15313c174d8284f2a89d2eb87d1621bcf822a                                                                 
-117                         har.json                       6221911128cfbd2de2844f342cbe77a9ccbed50d9d7fc1d8421e278dad91e900                                                                 
-1752                        index.js                       039057f8d00950f725367bfc6ae037f83279c920552cd5a5a6ffe1c6cd2c75a7                                                                 
-493                         log.json                       08623ebf2a67fb40e2a2257bdead0c0fa5d5d8cfacd8f64f20d2316ff584b72c                                                                 
-577                         page.json                      ef7ae9e2aef9b96e044a70adfc9353cfec21e4b2c5f41487a390e1ee3a00f25d                                                                 
-225                         pageTimings.json               a75eae2ce68243ae7e1c9106b74145f8ef30ad7aeefe8baedb29933f7980af48                                                                 
-654                         postData.json                  0adcfaba6e22814ed3050103a54ca1569b9a43c3857664ef9ae5013cb21eed52                                                                 
-226                         record.json                    f96e6ca241e15dcdd294ab575281d884796744b77d87666e9a9685cd58b84121                                                                 
-853                         request.json                   b7232c47ab45497a02aac1e550110551d103f05c5d1eeb77e9be22189df192f9                                                                 
-807                         response.json                  37c3e7d9ce591a47998a0643a18036511593d41d65786c46b5efaec97de646a5                                                                 
-565                         timings.json                   3bb55dc36e840f8614a2eba69db2168a23be5b89399ff3db3a8bf875a8e8d70c                                                                 
-                        node_modules/                                                                                                                                                       
-                          bluebird/                                                                                                                                                         
-1085                        LICENSE                        87e85a0872a43e866c0030b8838ee51cf1bda6d4debbbbe1dd8ccb9d7276ae0c                                                                 
-29666                       README.md                      15da82934250f29b0a117b5b4d48baf830758ec5e53cafa56a19977701c9844b                                                                 
-34893                       changelog.md                   b8e62275bbe8f77d38cb7c2d85baff0622c9b911cdc901f4d0d78259ab135a1e                                                                 
-                            js/                                                                                                                                                             
-                              browser/                                                                                                                                                      
-159561                          bluebird.js                f70ed8bdd915b4fefe371e90e85c3f17b73918f8e7cc782f0e6dff93bbb5481f                                                                 
-72853                           bluebird.min.js            8267636a76439af98b9347deb404ad2da97ca8df170610f31a47636c9fbd75db                                                                 
-                              main/                                                                                                                                                         
-421                             any.js                     bbfe88f1a68351302da229bf667fbee8b264c0fd034ac4990507d4482e713161                                                                 
-1639                            assert.js                  6a44cf29c3099fe92edf844fa1537d387b4dd760a9bbacd3364856cf2e7d127f                                                                 
-5918                            async.js                   738f6734f62f0f8cc505129163271c2ef2c8dff7bc808c98cc7afe69e00b7c23                                                                 
-2085                            bind.js                    ead55b1ede1568bd2fce457d33a61273e64d7be7e8de8728e3256684eb4dd746                                                                 
-294                             bluebird.js                96ee4479c979f981d333c1bf7f5a39ab79e9e70a59a71a99d023894df691a182                                                                 
-4344                            call_get.js                be209c30c9fc073f120a82a386a5851f55f26b8db86d81f887c6a4315b221f20                                                                 
-1398                            cancel.js                  90002a7195dedd8ab92e3724ff3fe1fb77d2a106435042ef25f3d4e6bed4e3a7                                                                 
-14993                           captured_trace.js          83dd52e26b2ea27ae59a85035945e67e3b1edefbfb68aea690f63679f203ca5d                                                                 
-2069                            catch_filter.js            6d5fc63acff873d9ac3eaa4b878943136d1fb4076169aebfbb9b460eaf497ff7                                                                 
-938                             context.js                 f0c88784d776b5cb886a7e43d6bdb3326a83ad19e8fded1b5cd4f4d77a704714                                                                 
-4819                            debuggability.js           cf2e991d9c33d79096a256ff050ef099d20c088125350acf5830fbba634009d7                                                                 
-1498                            direct_resolve.js          4f0ef15ea2e1825d8c18fa4d7b8a6a7d10c95c3f7ebfb851e3f06c2843dfeb54                                                                 
-298                             each.js                    1beeabb62d5a93815dd4873a3340b726295afa20f9b2280a52c5c6be93358ba7                                                                 
-3618                            errors.js                  d2d1c7fc3e171767d297129465ddabf38c11b6444e07430d33c2211b2778ff9c                                                                 
-1978                            es5.js                     c510d8dab4de97c1f460d54ea79014c283841625148dc50073981300005dd42d                                                                 
-314                             filter.js                  5b52d1f2e402abca8e1e203687a3157f4b2c2a2ed1a9bee69b6c51c1b44e4992                                                                 
-2698                            finally.js                 8e0ada2b0a6088a0220303cace85d806eca3e6b2b01ffe027aba76e389fa573a                                                                 
-4701                            generators.js              92b6d0cd424554ca0235dcaf7c5da73595346e3c32337a22f93c4f21d57441da                                                                 
-3890                            join.js                    48e3fcc785b318d8c3e2db77f197b514534de762d08011e0ccf0dc2e79d40318                                                                 
-4271                            map.js                     272c8133d6aca732f63e05d7c2c1679c5a2913a4d62f11267bbdbb714adda055                                                                 
-1336                            method.js                  cf1d43a52becff7d352ed2624d40bb782e9dab8e04c8f373690ad0bfaae114ee                                                                 
-1614                            nodeify.js                 39153c728340ae60ef4c4d5f6d71abe885d2889aa88b43798833591b809f8ce3                                                                 
-2492                            progress.js                16107c110b272bc420c0bbf18847ce699596a8165716bc7e160afeac14b65eb9                                                                 
-22809                           promise.js                 2c34bf282ef94c3f5eb654f37884a7497b50d02a44c7bf8c009970099fb85288                                                                 
-4147                            promise_array.js           bc93216c63b101fd9b0b819a75fef346153fcea699a10db80afcd60a83d21200                                                                 
-3863                            promise_resolver.js        ba3cbad383c1dce046fba9d7f6e76b52ab545a017bd62b9eb3db42c5bb590343                                                                 
-11319                           promisify.js               7fd70422fad5bfd7772910adb30489664c156fc3fd9b18b3d95546c33f21476d                                                                 
-2172                            props.js                   50f9e527cfced7f98b35d2f244b1d5ac50f00ed26102b819abfe5e887616610c                                                                 
-2354                            queue.js                   9759071121b961375ede922566506a232ad9854a6c60b638648ba5f4aa712196                                                                 
-1225                            race.js                    a714430dc3a5c709fcf0e71cc958d43f5561b2617251dc53128d0d5e20388a13                                                                 
-4916                            reduce.js                  32f8556436ab3b3f06eba00d13bcb51bcae2f13244624b1b6e9f130a33ad37cd                                                                 
-1156                            schedule.js                c6c256f8e921c11e841e480b10161173772aa7d8ecd0b4989639482a9f46d8d3                                                                 
-1168                            settle.js                  8837f4411fd3f0434f5759fcb74ed4a28062ea3437c1f72f93a4c3502e600013                                                                 
-3378                            some.js                    2971d1108981e1ad1be620895ae071ccfd2dac6f05ad4cf9e1ef19bffc1aa499                                                                 
-2641                            synchronous_inspection.js  055f7bd19cdbb94971758f11617123eca907f36f941a4fbe9e7cbaf803ad6e4a                                                                 
-2505                            thenables.js               ee53389ba3d40ff4f7daa29de40790a51cddbe9f416eab2742587e46128b3bf5                                                                 
-1602                            timers.js                  7bb0964c562f483fca950e86ca59b67c71300c943d7a72bfb1ff23da57dae406                                                                 
-6667                            using.js                   d8be361e01aa20b1816bbc32936d76d1ce6d52bdbd59f0575c150ba8dc52a9e4                                                                 
-7797                            util.js                    3fe206e0998d9108db033c1ea5cd34db6ff927df15739e53df7eb092725e92a7                                                                 
-2506                        package.json                   0837d88ad0e4a48eb291cbb89ea2ac151f582d6ebe93effa4f9a5aed89ce48ea                                                                 
-                          chalk/                                                                                                                                                            
-3155                        index.js                       c030e385bc1a70c6cf6143d40a94524ed4a5c94bbd36b6e51a3f10ae67273df1                                                                 
-1119                        license                        6fb9754611c20f6649f68805e8c990e83261f29316e29de9e6cedae607b8634c                                                                 
-                            node_modules/                                                                                                                                                   
-                              ansi-styles/                                                                                                                                                  
-1254                            index.js                   8f0c4c20c69d4cf0e57861ac27f2681b92f327f5240a9d8f6c60b3fa2ca65bfb                                                                 
-1119                            license                    6fb9754611c20f6649f68805e8c990e83261f29316e29de9e6cedae607b8634c                                                                 
-1746                            package.json               9b918eacb773c8c2524359853b4b6ff23548d12e55458c9a02a4a118581b487e                                                                 
-1448                            readme.md                  bf366f57b89291874cf2d9025f147cd1cfde22d03c5f06e88e1863690ae38dd7                                                                 
-                              escape-string-regexp/                                                                                                                                         
-227                             index.js                   c444193d583d7c86c97eafa786e6e2ed9107e4f96fc33a710cefe6600bdc9e74                                                                 
-1119                            license                    6fb9754611c20f6649f68805e8c990e83261f29316e29de9e6cedae607b8634c                                                                 
-1713                            package.json               c2632ea5c3398ec961ff7ada06b0324b354ab03ad0d3d29a4ef32603931a098c                                                                 
-548                             readme.md                  8ecd85ddd0bf75f449fea3abddc88d1aaf033f5bbddbc299b343d50eda9a6323                                                                 
-                              has-ansi/                                                                                                                                                     
-152                             index.js                   4558bad00644f6411ae183b743ad7c90411afce61294b0e22cb0bb8674eb7b1c                                                                 
-1119                            license                    6fb9754611c20f6649f68805e8c990e83261f29316e29de9e6cedae607b8634c                                                                 
-                                node_modules/                                                                                                                                               
-                                  ansi-regex/                                                                                                                                               
-135                                 index.js               dca1e25002068a6d094eedac6d92af24dc94048f80b8011c28cf75b1d9927544                                                                 
-1119                                license                6fb9754611c20f6649f68805e8c990e83261f29316e29de9e6cedae607b8634c                                                                 
-1883                                package.json           f3ee9353c118e43926c3ebf5685f6a6ca376fddf76b68a5d2355e00d02fda4a6                                                                 
-593                                 readme.md              1d63e5ebaad57f55c296999122c52eb429e072d57e4727f1a68293d9da9cedbb                                                                 
-1813                            package.json               45f94f33562b102dc54d3b49876488ef57e047109d39daaa8dfab3e42f4384b3                                                                 
-856                             readme.md                  654074ffef793255ed5912ee73f6602268cf5c1091ba14d78d2907e45a2aeb01                                                                 
-                              strip-ansi/                                                                                                                                                   
-161                             index.js                   02abcd70c31523c8c34ffaa7222629ae14b12ccd425e49ffa964a5051614691c                                                                 
-1119                            license                    6fb9754611c20f6649f68805e8c990e83261f29316e29de9e6cedae607b8634c                                                                 
-                                node_modules/                                                                                                                                               
-                                  ansi-regex/                                                                                                                                               
-135                                 index.js               dca1e25002068a6d094eedac6d92af24dc94048f80b8011c28cf75b1d9927544                                                                 
-1119                                license                6fb9754611c20f6649f68805e8c990e83261f29316e29de9e6cedae607b8634c                                                                 
-1883                                package.json           f3ee9353c118e43926c3ebf5685f6a6ca376fddf76b68a5d2355e00d02fda4a6                                                                 
-593                                 readme.md              1d63e5ebaad57f55c296999122c52eb429e072d57e4727f1a68293d9da9cedbb                                                                 
-1822                            package.json               73cdd300e7b4b8467a0ba57f1a57271f4085227e32216338b5c89f6bd0a2ce41                                                                 
-843                             readme.md                  e01614fdc97f9579cd93894efa906f5f372daa97cd3eaa9c7c350091c8b4ac4a                                                                 
-                              supports-color/                                                                                                                                               
-901                             index.js                   50dc3f0dae779976717218ac21d22216b96e4ee46e9d1c0901410a97776c4e6a                                                                 
-1119                            license                    6fb9754611c20f6649f68805e8c990e83261f29316e29de9e6cedae607b8634c                                                                 
-1781                            package.json               c1ed08f0d0e257b62a64ee5913091076fe7a2d82610ffb0d8a1c7d8c5eafa5ba                                                                 
-823                             readme.md                  f15c694621d4d82c2c8f1e3ffb4c571b88438a175bc157f88c3b15c42cf3e3f4                                                                 
-2159                        package.json                   b181a4022ddfbba8b7aeadd8b7981be8515604f812b0a89e4c9202245393d53b                                                                 
-6050                        readme.md                      9c83ac03a831d02af2fd1a0c801dd8383c0e9711e692040581c6577924c79fe6                                                                 
-                          commander/                                                                                                                                                        
-6266                        History.md                     ee68b7241760c0b051ad46c1bbb958c78f636559eabaced2b03ba361fedd91b1                                                                 
-1098                        LICENSE                        04512a63dce4d2d506ad612dc0bd7681ccf6e3655f7b6eaef7dfac8323d1ec0b                                                                 
-9547                        Readme.md                      0f86a6341a0d9f0fac8c090d7354a1c0f34c3b19e0f809796a81a2c1927dc739                                                                 
-24300                       index.js                       cc9ee06178f9807d812f61abc49291ace5fd7e085c6b6783d4476c06ff651bac                                                                 
-                            node_modules/                                                                                                                                                   
-                              graceful-readlink/                                                                                                                                            
-31                              .npmignore                 fcca00cce0a40974bf64bae7c5784de7bb14946df2bb41f9c919bdd8082c25bd                                                                 
-61                              .travis.yml                1137447fdd6d6eef29501b5b3a6dc5aae2959429db5c8811351a43b8e7a537fb                                                                 
-1076                            LICENSE                    4d6f2675ada25bd07e975bef9598da979bbf126e9d4506e6fce169030b569daf                                                                 
-531                             README.md                  b77b45a3a554cd8e18e0fd13e6ee3b7697efb0545c1fed6ade1425ed899560f8                                                                 
-188                             index.js                   e24e3e3b7b73888638e25c4b3e39ae7b7e6a896a43dc1ca2c2e15cee025cd41c                                                                 
-1310                            package.json               a9541a2cfa316a04bbce5be28903d530ab9c23520bb9145d96d43a77c1ebabe4                                                                 
-1742                        package.json                   9c4d5a9ef62bb98db8ee6ccf3150220675eb9c53e75916444a89a0fccb9fd37e                                                                 
-                          is-my-json-valid/                                                                                                                                                 
-30                          .npmignore                     e8d4be8d821aa4c79482f81d7f5177e7ebb96e9443e785b450ea94f4e0068b14                                                                 
-38                          .travis.yml                    e36b9b52fccb8114b8b8b13bdfbaa87342b07bda069b517ca34db9f85adaa3e3                                                                 
-1078                        LICENSE                        3fe8d55a98dbf260eace67c00cf9bc53edb46234e840098a0b93df3096b97fb6                                                                 
-4205                        README.md                      72bedcc062d8d617a5c48636df623a5e44e2be3af974fcd50689d69a383316c4                                                                 
-430                         example.js                     24b61530e39958af5226a30c772b69592899c8667b59c836141ea307389f5075                                                                 
-2342                        formats.js                     28838a7c898bb61e57d03b196bc53b563d7f5d8c6497a0342dd993112a03a0d5                                                                 
-16002                       index.js                       27968b48c58ec36794b9715443f479f193df32a405dcf17bc1ad8866e0814b63                                                                 
-                            node_modules/                                                                                                                                                   
-                              generate-function/                                                                                                                                            
-13                              .npmignore                 16d30e4462189fb14dd611bdb708c510630c576a1f35b9383e89a4352da36c97                                                                 
-38                              .travis.yml                e36b9b52fccb8114b8b8b13bdfbaa87342b07bda069b517ca34db9f85adaa3e3                                                                 
-1748                            README.md                  b0b8e776214928840ea6bf800bcce5ba9929105c593f5a86325835b1a21abe94                                                                 
-662                             example.js                 810c3d718d813df8744a780b33055cd1fa51b6881e92894951d7c1dc3f039a6a                                                                 
-1296                            index.js                   a320147a9d2314bf07acdab03a8f3e39b69a4369d06b71f1140640cf3addb5b9                                                                 
-1409                            package.json               fd32f0575f79af4bbaf712e1387b185cbf050bf6a752d8f44c145ce1fdcd6b96                                                                 
-796                             test.js                    8db73aaf0b4a4ea2362c8c26fa09f13cdf502edbfd659c591268cf6855de7af8                                                                 
-                              generate-object-property/                                                                                                                                     
-13                              .npmignore                 16d30e4462189fb14dd611bdb708c510630c576a1f35b9383e89a4352da36c97                                                                 
-38                              .travis.yml                e36b9b52fccb8114b8b8b13bdfbaa87342b07bda069b517ca34db9f85adaa3e3                                                                 
-1078                            LICENSE                    3fe8d55a98dbf260eace67c00cf9bc53edb46234e840098a0b93df3096b97fb6                                                                 
-473                             README.md                  b904c6f1bbf68786fd246adf2ac3c02f5cba53ade6445cebb829f1780c9597fe                                                                 
-287                             index.js                   7765fe822c639416236261b73cdca230a7f031b47bf6a17cfb89fd576314aaeb                                                                 
-                                node_modules/                                                                                                                                               
-                                  is-property/                                                                                                                                              
-116                                 .npmignore             d812190b32c06791f0cefda9e827d429ed1f3842466bc4c2d3261a73b0b0ae27                                                                 
-1082                                LICENSE                e67aed7df22dc8031e4fcf5338fe91cb33e3817e5c58a99a2a2802eea9069791                                                                 
-625                                 README.md              5d81a365b5fedd5e44ef46e74d32875ac46aec2ad881413cfc4133b742ba2d1a                                                                 
-11014                               is-property.js         4c6963cce2dc8f5fde0693a7a4f93c2d85aae03d4a21ba28388a236ecd1a51b3                                                                 
-1449                                package.json           b899b0af9c43a5bb3cafb72858945bc095179e617990894b6860b361f6f4b553                                                                 
-1493                            package.json               2501b0127b08b389ca2b0c81d94bd85fa8da038c19aeb999d966268fef79e035                                                                 
-203                             test.js                    be3de48d8acbec1aad5b65f3dd3c6b3bd44b7e63cae5d82ec01224acc6456f3e                                                                 
-                              jsonpointer/                                                                                                                                                  
-61                              .travis.yml                c144c4e9b23abc39bc0284718c47cda1892a71f24f98b3f9a95ebb6d579731fe                                                                 
-764                             README.md                  187bbbc38726436d89ef3ef8a984cddfe1b84204cb3052e95964abe93cd839e5                                                                 
-1629                            jsonpointer.js             571cfc72b1c0ad915ea441ff277ba2ac0eff0bbf565ccd6dc3ccae1016795c1b                                                                 
-2174                            package.json               fd9cea7b3941569e591a57cf37fdf8f00be87bfc7b175eca31b82179209269e0                                                                 
-2778                            test.js                    6623fc457c91b149bdde5a97a798a0d91d1e91ebfdb20319f6bc3bbfeccdb6a9                                                                 
-                              xtend/                                                                                                                                                        
-545                             .jshintrc                  da3531289454b9a256c622c1a74771440d4f0e57092262902cefbc6830ec3a7c                                                                 
-13                              .npmignore                 16d30e4462189fb14dd611bdb708c510630c576a1f35b9383e89a4352da36c97                                                                 
-1056                            LICENCE                    7b9a2c90ea0aceda46c0c1f4cc6d4bf2cf37c7bf0f1a7502f981dae2c8c01d71                                                                 
-49                              Makefile                   534b3147995cfcc4d6763779281b8079f688b2287304e7fbc518a4bd5b5334ce                                                                 
-725                             README.md                  86b55ca30d3c83e722a634d0ba69dc30984f4494406dc908e68c50c0bd2aac4c                                                                 
-323                             immutable.js               e5ad673babcb07b1718e7cc40161663484d233f162390cb6d8c1094befe508dc                                                                 
-308                             mutable.js                 cf06e5e9b0a8682f122a031ac24d394570cc0d72fa884c64878c48db06322878                                                                 
-1870                            package.json               9a1c25df7e2c71cdbd0e464f6e500fa6297535cd9394fb1e55301d90e93ea99c                                                                 
-1356                            test.js                    4b80e65e1f4ef7d61f6d8e014d8579aa40b69aed95b273aa1a2476be30a957d6                                                                 
-1714                        package.json                   347e3be737dc094a2323bf06a0ad072ea656d1c4fce60e847a489d3323c7e3f1                                                                 
-444                         require.js                     19c83e9a9982657c33abc93d754e6d81dfaa2973e4f3e71985d6e56192a36b12                                                                 
-                            test/                                                                                                                                                           
-                              fixtures/                                                                                                                                                     
-3900                            cosmic.js                  5154c3a422dae66c44349d6cd23c75c9e0f0071160bbffe238440c8a37ae136a                                                                 
-                              json-schema-draft4/                                                                                                                                           
-2282                            additionalItems.json       cc023933a34d18f374934ae699cc9726733744a8de3fb96be02e85223f81366a                                                                 
-2745                            additionalProperties.json  1e7999eadbdc57ae664394e071aa941fabb2b049a5c150bdefad858ea43fac50                                                                 
-3025                            allOf.json                 3bc02ea1b18622036bbd94e7202057e0eb237821796c96511714b3ecbcf8e1b4                                                                 
-1608                            anyOf.json                 d0d124e0e14a427b8865d22e197fbba47329ecc6c0f105518a93ea86980919a3                                                                 
-3075                            bignum.json                4bbe93617efeedc563ea45739cbd3a76821e60d572ed8c8d59fbf3467920e2b8                                                                 
-1273                            default.json               37e0350cc4d4d6c5f0de3ca829cff1e4ae4d4e2716ddf3b8cb807a80f8e19876                                                                 
-854                             definitions.json           a912c8584563f08434719989d6a7148badee33d90f49b172317860fe309c13c2                                                                 
-3139                            dependencies.json          55df208626c9e90e989cfbce92dbff23b2fd863651978fdb02613bef8a1db492                                                                 
-1975                            enum.json                  245bc40854457d5e278c7a85dc7dc3f1f7f6a3814c1ac36730595aa78ad739c8                                                                 
-4434                            format.json                3057881007a9bfb3ce61a665af0de6265c22c41622a1c08e2ee5cdc0c6f44437                                                                 
-1136                            items.json                 d698b51a3d3707701d610836453e1fd0c65dd249240ec1d9874ad725556cf5fe                                                                 
-706                             maxItems.json              4adca55d27b10c1eefc7891c05f31d9dfc8f11beee2328f6370c63fec3ee13b9                                                                 
-698                             maxLength.json             02455ff84b6be7d924d499bf2e6aa389079b706dce33c0657d23d9cc5381b758                                                                 
-759                             maxProperties.json         31b1716cce0ae84e5ac85fe08e0d7260c8d1e81a5fc6e93bc92a2a65321a1127                                                                 
-1063                            maximum.json               f2cf731dabcdacd9c2f3bb0af9e67aa47b75c63f03d22939e0d400f92405e488                                                                 
-693                             minItems.json              f20fbbfebbb3311a12027ed2064cb4334f09b6d06642e3de0dd0a69bc4ff7ce5                                                                 
-696                             minLength.json             0c6f94b271f4e3b76f0bfd6e3a2793976960adb073afbe59c2b228fe6beef81e                                                                 
-725                             minProperties.json         d4e395ea0c698d0d2c663821fd4128e4516021e88eb1e27a7bf8fc556ca7ca26                                                                 
-1063                            minimum.json               52e98407446b4b8f5dc2a3f50c942b3f3c42354835702c8c80ff60478252a723                                                                 
-1525                            multipleOf.json            a850e2a1729f2cf099d42c912860ecd21906718135199e473331a6db565d5192                                                                 
-2266                            not.json                   73fdbd077087b54977bc73c05a47fad62f47e7b825caff5b29b21114f0ea919b                                                                 
-385                             nullAndFormat.json         36eefeb7c11a4a57cdeda1cc172643006012ec3abe440f0c6e8e0d5a8b41b2bc                                                                 
-1607                            oneOf.json                 b59cfcf89c32b3ae136f189ae9b4caecf9928775378935c45b8afd1d2f66e761                                                                 
-582                             pattern.json               6a7c1a27129a84fd3794363e0a23fb5ab9ea7413b4199d57a9baa739dc7fa48e                                                                 
-3365                            patternProperties.json     118dca75012c96300c1ce2ad0cda7cb59e897ada1abdbb867aaaac08ad86cd07                                                                 
-2881                            properties.json            10df6e99c89fefd96e8a2b3b25dee4adc0964b1def2175fa513c775ed8d41a64                                                                 
-3422                            ref.json                   38f855c55ea96b30902ba1137b05bd08b9d2b43b17961b4f439946ae24eed35d                                                                 
-1961                            refRemote.json             6b68176b94b3532cdfe51a51507e5b640ceb87398bf429bd1945b1a55f72b538                                                                 
-923                             required.json              59d20612c28c570457f8f7248d6b2aa2aeba08f150483608e505634a48e9dec7                                                                 
-9306                            type.json                  65967bfd3d2e41a0d33ac4affe5ae645fd6da1460156746af307b51f7bdb55d8                                                                 
-2613                            uniqueItems.json           dc6f68c737784fe041fc51ddf3dcec414acce426994680ddcb7931b62b0c0654                                                                 
-644                           json-schema.js               63435b90c9d716d96c83fd2223fb112acf53868f7553049ee6fb0084c19cea8e                                                                 
-9673                          misc.js                      696489340ade3f91991562a4a8eed7d7ee3f358ee0ead75bfda35702bda7e5d0                                                                 
-2184                    package.json                       4064f56ae376d6c95b2b952ed69b6d659efb45660cff0e78ff7553d8e86472d5                                                                 
-                      hawk/                                                                                                                                                                 
-195                     .npmignore                         27a11cd18683089261ef5aaf6522d091506d7cfef7fe015e9c640f7b6eea1102                                                                 
-38      x               .travis.yml                        c400f0c36979a04b9d3d0e96eab7e330ed4d8bf4674a91e8405bc58aae400575                                                                 
-1660    x               LICENSE                            a9d5799fb6bd9493eb13e552d18df3c6883edc4e9ea3a9ed8ad1197428d1841b                                                                 
-221     x               Makefile                           ebe5833b038cf8a448fe23a375075885244108ba89239d3324eb692f610d05f5                                                                 
-30824   x               README.md                          70b4ef322399b848c253bdfc2f6f6c8af7ad2c655767a114a25cf8fb0508db0f                                                                 
-384                     bower.json                         dbf0b59d3c5676c60da00a381847354b93370796fbd0adeccfb99ebf0e2aecf9                                                                 
-335                     component.json                     3bf561afbd0c785e0101bb40a1ee3f16aaffa7c70387beaa4017cc9766cf44d7                                                                 
-                        example/                                                                                                                                                            
-2078    x                 usage.js                         9a320e656a07bda2df68c0a9ef95255da35f4a367e3c09374bf8d13ef6be4cfa                                                                 
-                        images/                                                                                                                                                             
-6945    x                 hawk.png                         5c5c23838c11d874e33204bb96f8b9aad65a862028b0bce4d1cf5c9718b65e29|3395653c85687ea5557ae9d14efa51d383c2289f2329c34b2ba8da08718353da
-71732   x                 logo.png                         93fb6484c2746b990615cb642abac73ddade35b9d2dd834365c91b9753ba969c|136fde44488513c402de5dcedf3cf2c3a9645e45582d0ff2184b7936164d9d47
-34      x               index.js                           f84b7747688f053b22b9219fb7e8b002ab79187c3802cc62b9b4e1aa0d6cdfd6                                                                 
-                        lib/                                                                                                                                                                
-26918   x                 browser.js                       d9cbcdc65970dadc69e22a536f0cfbdb542b5fe5fd568a0b32abaf396ef4f968                                                                 
-10207   x                 client.js                        35106919c344fdea66d5cf8cf14376bd73f94214d1d5b3af740dd87c6c97847f                                                                 
-3460    x                 crypto.js                        c683e8606742d54b7b1fd0e7e3c8733c4e487e632af66f5e8de11559aebe6f85                                                                 
-366     x                 index.js                         dc34d4c12898746db27d06107a52db69a0795f33db48e3a17760a9e7f28442e2                                                                 
-17842   x                 server.js                        9694c775f9339d4f286b70e78e39c35b9009a329155b99a1b6ffbef797c9f6d2                                                                 
-3832    x                 utils.js                         7554c944bf848ff1122e872766c820fcfae5caa6591af2d09acd3a0037983da5                                                                 
-                        node_modules/                                                                                                                                                       
-                          boom/                                                                                                                                                             
-178                         .npmignore                     5d817dc581151e29c850110c05fc58993754607f0006e01ae89f11d649d95005                                                                 
-56      x                   .travis.yml                    bc762c39c60ae29a01d554faa14a8464c1ac06f1988395de911f5ccc559865f7                                                                 
-105                         CONTRIBUTING.md                4ddbaee835b58117a9740b1e24992e9338a0f370adc24d6d1cf91c67549c574b                                                                 
-1651    x                   LICENSE                        3bb7f5f0543422b901b894d0b9b59567c4007c96bf63e21fc68d1cbcd2a2424e                                                                 
-13804   x                   README.md                      84bc929b3699014bbc93d63df07b1d53a3629b8f6aea09cd4c6191a02555cbc1                                                                 
-                            images/                                                                                                                                                         
-29479   x                     boom.png                     821f1cc1676154dc3d55a3bac142461fb067c3b4cb6b178b8214e47daa328a47|6913355914e82644c9e5ca1b89e1829edb66ceb07c847eb324aa3ed72cdae3d2
-                            lib/                                                                                                                                                            
-6452    x                     index.js                     78bcc051a56b83e8d7331331a37a02cfe05a2c42777d61c9042961f8f4ed0b8a                                                                 
-1483                        package.json                   7549031e1a3ad9fccba9f2c36cad07779b75f88d05c608833f4877be6ff6901e                                                                 
-                            test/                                                                                                                                                           
-16207   x                     index.js                     e3c2cfcb27b4e362b026645ce54c836d27a7fb06e0b211a11c76d05eb3e25d40                                                                 
-                          cryptiles/                                                                                                                                                        
-178                         .npmignore                     5d817dc581151e29c850110c05fc58993754607f0006e01ae89f11d649d95005                                                                 
-38      x                   .travis.yml                    c400f0c36979a04b9d3d0e96eab7e330ed4d8bf4674a91e8405bc58aae400575                                                                 
-1660    x                   LICENSE                        901bbebd345525aaaca1fda16c0502d2acd5157d48d34a5b2e6480c3581e63cd                                                                 
-195     x                   Makefile                       5c7e0501b67f1865f7de2bae7e90a625719152df1035efef5ba9c901481fc43e                                                                 
-537                         README.md                      634ade3ff3fce90938683283216766237fbe0e9745745ca2472e47a22de48ef7                                                                 
-34      x                   index.js                       f84b7747688f053b22b9219fb7e8b002ab79187c3802cc62b9b4e1aa0d6cdfd6                                                                 
-                            lib/                                                                                                                                                            
-1364    x                     index.js                     5c771e93e171b8a1137238523a8ea3fe903560d3eed2db40b97ef8f98372ab00                                                                 
-1533                        package.json                   c3d75f101593bb76cc27f63a5a06fa04ad30c2db96ce4ff5154ba826e6a3f0d8                                                                 
-                            test/                                                                                                                                                           
-2871    x                     index.js                     00cf1944c92e804fb8076920e0a39527e925da1ad64855cd3aa75d83230cbb70                                                                 
-                          hoek/                                                                                                                                                             
-191                         .npmignore                     cad92a1adfbbfd3a3e9b76063b14472e6574b8577e1cb5a009dd14f741d65bc9                                                                 
-56      x                   .travis.yml                    bc762c39c60ae29a01d554faa14a8464c1ac06f1988395de911f5ccc559865f7                                                                 
-105                         CONTRIBUTING.md                4ddbaee835b58117a9740b1e24992e9338a0f370adc24d6d1cf91c67549c574b                                                                 
-1814    x                   LICENSE                        054181d7ff4c8b8fd42d6b8d23fa8fec28154011471fd80518755ec5b38e0c61                                                                 
-223     x                   Makefile                       1e8108ac65dbc05d0b20733959acd58c03448e854359cdb69145ef259a07be8f                                                                 
-16706   x                   README.md                      21c370c114b334afe1c8852a027d84e1501fe13ebb9978421240d279207b5304                                                                 
-                            images/                                                                                                                                                         
-37939   x                     hoek.png                     63edaabd9bb57b48718242a3cbc7dc13e64b738bfe0bf22d8381c97e705f3e06|1223c4f803c5ea8a4359d92c4729c0159a8f282d06a362a61aed0197908a2d6d
-35      x                   index.js                       4fe91c6ebb2d58fc683ec224b6f569190bcb3cdfffb7e44415f179ec9ea1baf9                                                                 
-                            lib/                                                                                                                                                            
-2668    x                     escape.js                    a406fccc9ac233b5db53b53c085d3b2968a9274a721033cc646a82b6a7c8b9e0                                                                 
-24228   x                     index.js                     225b59a3edb34f99bb1e77079f8b3937bbfa4be607be1f604481ffd724503bfb|3b44a859fc99d126dc4395f97964d03fbf63e52f756045bbf074d372ea5310f0
-1388                        package.json                   86a4d8d72e4767e5ee62d7bb9ff7f6d64e12f38b053a44e4e80f6b9866f59d77                                                                 
-                            test/                                                                                                                                                           
-2303    x                     escaper.js                   3295216bff358dd783fdbb460a66046a4df7e927a690e29a2b5c4007347c94bf                                                                 
-65598   x                     index.js                     559833bfa6c2668ec6eef7e3d05a0c1b33f22c88509854b0d102399473c292d0|578fe5ad2917d81422edc573aaedde6c6df0c1898954543cb9ae1a1331591d33
-                              modules/                                                                                                                                                      
-0                               ignore.txt                 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855                                                                 
-15      x                       test1.js                   220f16f65418cec1d479078c88cf50c4df70ec4d4661798d4a7fd204936c0499                                                                 
-15      x                       test2.js                   3d85d181d3201cc76edb62be95a770b02533b74811762a7302ba8dec0b5450db                                                                 
-15      x                       test3.js                   a4f668fb9e9981bff1444391a0c25997a3c77d9222b04f3ec09305dd20329677                                                                 
-                          sntp/                                                                                                                                                             
-178                         .npmignore                     5d817dc581151e29c850110c05fc58993754607f0006e01ae89f11d649d95005                                                                 
-38      x                   .travis.yml                    c400f0c36979a04b9d3d0e96eab7e330ed4d8bf4674a91e8405bc58aae400575                                                                 
-1660    x                   LICENSE                        34a0d80d6799b8cd90a8416f1911fda79bd089c9b8b69f23d1c1c94f84fa0bb6                                                                 
-206     x                   Makefile                       2373d55e2b7843c59306361aee0706595f0605344d18ea03830e00013410f999                                                                 
-1898    x                   README.md                      efd5b96314e21c96e0c79786dba0bf3345b1fc350d47f6f54ce1ae197162e492                                                                 
-                            examples/                                                                                                                                                       
-321     x                     offset.js                    afa6b2946aaf4a11b4bef6291fe9001a4064e60b080df55e6c7ef26c51244fb5                                                                 
-627     x                     time.js                      e42e55e66a137a0d6f79ace571f693c59ef76ccc2359cc97d4730262a3ba1234                                                                 
-34      x                   index.js                       f84b7747688f053b22b9219fb7e8b002ab79187c3802cc62b9b4e1aa0d6cdfd6                                                                 
-                            lib/                                                                                                                                                            
-9758    x                     index.js                     c9b2b1ef29aa275558ccc15e5a214d7f2c58d6e6ca2a87a79bb439d68e03d8a0                                                                 
-1456                        package.json                   554700b7a310e64b7ecf2dfe0d1c545c08a9f54e21b3ce059cb97c42da798c1c                                                                 
-                            test/                                                                                                                                                           
-12845   x                     index.js                     3bf09f1a57dfb3522b4dd719acca01178c9f28335f67bbc168a74313988c8553                                                                 
-1623                    package.json                       ca4f48769a75dc47a82c3f373d73e9268347395ddb052ea9a16f10625732b0dd                                                                 
-                        test/                                                                                                                                                               
-57395   x                 browser.js                       0a406558543c14743de65aba6805e63e2980205de995b976804c4208bb901689                                                                 
-17885   x                 client.js                        59ffb3348ac3df28c2d0a984c724c75a3c27c79999dafb34260bd45860b2aebe                                                                 
-2777    x                 crypto.js                        e4a7aa99071227c78d79acb38c860066ff4d38c58e53620a87c27e551ab3c4cf                                                                 
-14411   x                 index.js                         7a224cb08b7bf54520f7dcedf1db6793d78b13c1410b62353bf3265c15d25a5e                                                                 
-8688    x                 message.js                       1562409d889018b4ece0a9615e789f9c0d99a6e261310c491e50007280f9dbf8                                                                 
-3527    x                 readme.js                        a3c2b5d5ac0b7b659ca9e1fdf9740b08afc5e1053f290dd0f74eb8a9c18535b4                                                                 
-40311   x                 server.js                        5fff7a3c752a675b7b3d0cf0aee6b2f66c1d81a3a3df871e446de510e8ae53f8                                                                 
-21084   x                 uri.js                           74291eca5f17e92b00126cbd9c95f320b03452d6013db349e279a8508004161e                                                                 
-3321    x                 utils.js                         c52d260b8f94e12be651136042bd59e3490d4266f1029b570c33d2286cd27e11                                                                 
-                      http-signature/                                                                                                                                                       
-178                     .dir-locals.el                     b64dc78e60949cc736ec056d48f2bd57ce8227ef83d991a5082cfbd6adb810cf                                                                 
-54                      .npmignore                         5f51d039cc4fab842c2bcc4184457b58acc8e7b871f87b8caacdaa09d97abe03                                                                 
-1067                    LICENSE                            82f8e8150cc12bb0895291c63ffa618d5652daf6265f63203ce0043955066ba4                                                                 
-1594                    README.md                          274c6cbbc921c95550f3c0812cecaba402b30daa492fcf70695eda3563613289                                                                 
-11581                   http_signing.md                    03172f5bceb38e57e440967e52f5d6be3ef132762d80676050f591ee4542c464                                                                 
-                        lib/                                                                                                                                                                
-555                       index.js                         22057e1a405b395a1d6a94d7fffeaf3b980ca478ac38ab37ebbf2f3d82981bcb                                                                 
-8864                      parser.js                        a114c3552846d01939a2b17ee77c0eccbd5052d5b470306fcd6ad06864568d5f                                                                 
-5203                      signer.js                        5e70253ea63d924ffd7ba0de44ad28b3acf014a55c4b622ecefa03b2e5ccdad5                                                                 
-6959                      util.js                          e1669643c85d79574303c49cb6dc9777389f542e62f885472a7dcc819ab49699                                                                 
-2017                      verify.js                        9178c32ba0b8654af584d718ea8b85d968d07883698b8ce854e1dfa74134c718                                                                 
-                        node_modules/                                                                                                                                                       
-                          asn1/                                                                                                                                                             
-19                          .npmignore                     eaeff0b53839d259914dc3a4d043824bde9e0ddc936fe4c3b823ead1f30ba661                                                                 
-1076                        LICENSE                        f4b6bd1a9437d0f66ff46d8f4dca185c31a069ba11e437f3b8506ec4424be9cf                                                                 
-1201                        README.md                      47e7e3c9b0c0ac404a8c4e28ae56934c29e80622b6626c26c40cc3fb90c05faf                                                                 
-                            lib/                                                                                                                                                            
-                              ber/                                                                                                                                                          
-239                             errors.js                  e60f19366df8802845cf7cfc2bbf59d8c4db689351e733b364719245084d99ef                                                                 
-469                             index.js                   38a14464e790d49b26186cd32d93c5f53ddf25fc73f1e2f358ae254d25ec0ee0                                                                 
-5760                            reader.js                  bbd43ebdca86c07498c18906f4f0cbd39ffc5698f57ba47e780fbd977f3f719e                                                                 
-638                             types.js                   87c9fbe37ac7a2c83726a952881efd6829dc3a9dc7a1e9e485a9201cd7714c13                                                                 
-7603                            writer.js                  de286f6dad2a49bb4b520e8d878e372a53c6c89fee777fa7fe08dac86e4e9142                                                                 
-320                           index.js                     4f73f0447b2923e2d2841e39ca35d992c745848e711350d4f07cbb29a8b639aa                                                                 
-2857                        package.json                   d07ffa79bd5d23db1396f8adae7130d934e6bed8895347411130857b44643a9c                                                                 
-                            tst/                                                                                                                                                            
-                              ber/                                                                                                                                                          
-4712                            reader.test.js             848c794d5b9a4202c9158b7799915f0fd88d887208ac7fec9169d566a2a94dbf                                                                 
-7737                            writer.test.js             cc7fe098ecf5016a3a6ebf7269364a5bf5f6f0490cbb9cfa031a201ecba3baea                                                                 
-                          assert-plus/                                                                                                                                                      
-3866                        README.md                      6e489126de4662d27b848b6bf76fa49018e7f3d5fc59aa0d0e222d26701fce2a                                                                 
-6317                        assert.js                      4fd7fed74829b3e4c31e9a0ad5ab68da4f481bf61dda50142a450776521d1290                                                                 
-1216                        package.json                   4c9fb22c2b2e3d3b62b54073001c5cb384b4d5992e4e95f0c90a331288ecd1d8                                                                 
-                          ctype/                                                                                                                                                            
-5                           .npmignore                     cc90883c5dbcd7fa8192202e9f92c1c4b904aad2315dc852d287e7d0db61feb2                                                                 
-2057                        CHANGELOG                      dcb41f1ebc30eaf53be830b36d5b33aa087a3edefc08360dcb979be138dd2bbf                                                                 
-1293                        LICENSE                        3feb20f57e895f60fbd7f7c24cb689e4091ffa7bf505e9ba1e16666904be08a8                                                                 
-2890                        README                         e1c9b1b00c0b864f6e692bdca716ffe44b438383cf6a1232f19b039a87514b1f                                                                 
-10142                       README.old                     61ce667a0de7eefa6ce300b3289fadab5388db9744e5ba25497f4875b786b16e                                                                 
-5834                        ctf.js                         e15713a764268c0018228e6d5bb28a578869764a3f3aacfba129d1a1e7132c54                                                                 
-43551                       ctio.js                        49ce5a279cb81cc3cc4c0006a52125d3295835d08bf4e000458f126cbd35cb17                                                                 
-25257                       ctype.js                       a83af03233c832ec1792c74fc75a66584b2d96667700791d464eda9dac80c9bb                                                                 
-                            man/                                                                                                                                                            
-                              man3ctype/                                                                                                                                                    
-8265                            ctio.3ctype                7f760b9a61f0747b5185d5db705db880d0970ea7d5d9317949eddf3dead71321                                                                 
-1063                        package.json                   a1e709ef4c42c8f0716acf79ea2fcdf2024e08a0f1f04a92a2f123951492d2ab                                                                 
-                            tools/                                                                                                                                                          
-6240    x                     jsl.conf                     8149ee9b5f248b06fe8a67c194f40ce325ec413dc29a4517074531cfad88e33e                                                                 
-21591   x                     jsstyle                      a3488e221e1ea3bbbdb0e98bfca72dcd5b1f51d4c6d5ff2c6406a78c8c205724                                                                 
-1818                    package.json                       0a5d7f3db08ce9765af5d73e6b0de3cda7e2fbcac25a5ee7017044477a13ecb2                                                                 
-                      isstream/                                                                                                                                                             
-1147                    .jshintrc                          013f74283e3cd84de64ebd694f8554a26338ede29e2e26d38d01e196e0e29ab7                                                                 
-6                       .npmignore                         ae9a2868b5090b9e81953b7cd8316b3002e7cd6897320c2aa69ee71fc27be3ae                                                                 
-150                     .travis.yml                        853129eb75f6ba39a1375ac0662e976e5fa20a71ff8f88700be4a6a37ac1f5da                                                                 
-1125                    LICENSE.md                         a7a5808b700606f042c8c4b00d6291f46472b51614d9f03a309bdd9f3a9585c5                                                                 
-2424                    README.md                          861602c05359d5d5c6fdae15c8f6b9790c52480188722e0a6a84d50981e6067e                                                                 
-588                     isstream.js                        c0c3871cd08bc9ea569d1e7ed485201b348f21ee29007eef81f6666b95f22987                                                                 
-1612                    package.json                       a461cb7a8643b0e87ac4bb67ce1d3f6ccb2d23d5fb3dfac567054bfa65d66f99                                                                 
-6975                    test.js                            8072e7039f80ce3618bd585a38f7c2c626e90ae84501c939dcd84e5fe2d85db3                                                                 
-                      json-stringify-safe/                                                                                                                                                  
-7                       .npmignore                         d5cc148e9c2c9304f746b10cec504e3d563f690986e8d0e7a80e3678a95c701e                                                                 
-734                     CHANGELOG.md                       1335afdbf4478a9a55507ef8b3e363278ba4daf8077255def89b70c2dda5fc4d                                                                 
-765                     LICENSE                            4ec3d4c66cd87f5c8d8ad911b10f99bf27cb00cdfcff82621956e379186b016b                                                                 
-675                     Makefile                           e481a830c3d610798ed39280657719f59057f008b9756431d53b4a227e031edb                                                                 
-1261                    README.md                          5155feb3756676087a364203a3a64d6118598f875482732c94077f3b55dd2324                                                                 
-1726                    package.json                       a11477faf2ce992cef11762af0dcef055e57995d5c5c54cd0ed9bcaaf44ba42b                                                                 
-907                     stringify.js                       952ffb7fc912b6168d6b9afb92cd12d4a01a4c55fe2eb82a9abce4def0a207c5                                                                 
-                        test/                                                                                                                                                               
-27                        mocha.opts                       e071fd136e45c3f98746f7c7e535703d28a246159b9582cbdb0ec05df55bce6c                                                                 
-7550                      stringify_test.js                54adbef6b39534734933475698a7b914de5d2e8698daecea99875d2343ba8000                                                                 
-                      mime-types/                                                                                                                                                           
-1912                    HISTORY.md                         e5695bed6255f8c10f5b175993ae252471290566d58203c445639bfeb4755ff0                                                                 
-1099                    LICENSE                            965ef284f7f4c176842ec2e87fa13e79feed777d56d7a21a5a3b38f1bb6dc288                                                                 
-2871                    README.md                          4391614e4feb9df1af4c198760adedf3c3bdd7504b6de9b2f7d8aba2ffc6c39b                                                                 
-1702                    index.js                           1a04312fd7781805dd4d31cba76b3d2fa15b0e8bd75c38ecedc98d6e8f9da81e                                                                 
-                        node_modules/                                                                                                                                                       
-                          mime-db/                                                                                                                                                          
-5393                        HISTORY.md                     c467eceb2db657410a911fbb17b4f0318a2d15a45b4ff7d427bd0f97f4ab68e4                                                                 
-1099                        LICENSE                        965ef284f7f4c176842ec2e87fa13e79feed777d56d7a21a5a3b38f1bb6dc288                                                                 
-2635                        README.md                      f643fda699c842b2696e5a11d97aa5b7597414f38e6f3db235d38e1e7ce0e9bb                                                                 
-138150                      db.json                        848d0c36bb0b285f165fa549d92b967da555b2758f2d925830f17f037306740d                                                                 
-136                         index.js                       a2532ace32711ae90deb4ae4654c5bc4e56f0a1e21bdd15ba26334bf723dfb09                                                                 
-2409                        package.json                   04bacff18684c2896412ae3163e632cf832adb72c0467aa94c43e0a781570085                                                                 
-2167                    package.json                       d6786351b47ee5bea392a0d821693095bf750f58029abda2ed32ba8668c95180                                                                 
-                      node-uuid/                                                                                                                                                            
-23                      .npmignore                         3f4f172d3ad42d8c5678ad58211562d0d95ee9e897f579e139076d4ba7548b71                                                                 
-1088                    LICENSE.md                         f23fc2953e7aec102eda9d9729716f670915361c6d771b9040b779b54a8dce9b                                                                 
-7209                    README.md                          2311e73b67cd7c147d8e27b54c8857c45bb055f7c515ec7a691a72a061ff0fbf                                                                 
-                        benchmark/                                                                                                                                                          
-2031                      README.md                        c8128be08107d0b9379dbccac90ae6c46a6535018c5dc72388e3efeb41d4033a                                                                 
-5822                      bench.gnu                        9551f7a9fd946726546a0ad481d5ce21561e0f6dbe4d084fb170d275f98663c7                                                                 
-1101    x                 bench.sh                         51ea41e52729c5a176abd9b62a9d8334600996d42203655875960356a91f5f2b                                                                 
-613                       benchmark-native.c               9cacf866bcbae796280b96f22b307cc4561548c49bceb8a856556a5ccf84f04b                                                                 
-2237                      benchmark.js                     edb69da99fbc597d71e43b459c8aaf0fd62c24afbd69454f8cc6effa63d138b1                                                                 
-                        bin/                                                                                                                                                                
-597     x                 uuid                             0a2da601bb8bdc38c7e145ffd6a141a4e2c57f8023c6594418f253e00cd68e67                                                                 
-435                     bower.json                         09e3befddb7f9b270771540775348cbacc7106a2ecf1822e5667c576af8e767d                                                                 
-474                     component.json                     c6efd3422da7b37b7f3338627bee920658e8a52a8cb86c42d02cc26f371dd117                                                                 
-1563                    package.json                       72af34d11a6a65f7730bf4c2dd5f711bfeb2b4021b938ca4098b53b16f46cecb                                                                 
-                        test/                                                                                                                                                               
-1483                      compare_v1.js                    5a9083c0e0ab4688c8fff5694f773b8c9d7015e9a9ea6668bd2d71ebb94a787e                                                                 
-340                       test.html                        8af9e149a35b33953ebd19531078f45274cfd65f69a45f1ca2cf4f0ea500db88                                                                 
-6168                      test.js                          1c6241eee53d81d71d6db0ff0fbef4be986a4be1cba6122600390ee20a8ae023                                                                 
-7243                    uuid.js                            6e4f64eaed0bd9f351cfb535058e317d2c8370de262fbbff55f6d26cf35bcc6a                                                                 
-                      oauth-sign/                                                                                                                                                           
-9140                    LICENSE                            d446a8c73d7bbe4872d6524b15ae206f9a2d7eb53f8c9cb6e6c893a43acc5276                                                                 
-107                     README.md                          2e76e7743b7ac4bb01c30a017d222df89b8970461587dd6499247011f6b84bef                                                                 
-3548                    index.js                           0604142a1bfe27c60b86723f31be1da62ed15cc86cc7145700e839704335945c                                                                 
-1572                    package.json                       96cfd619cd195ba125252c7c226a2ab256243043c5636eeae5cce4ee70dd8a8e                                                                 
-3554                    test.js                            1e52dee02a1c43d64a70b1364848d363d5cebc826203bad0a940387a0830e175                                                                 
-                      qs/                                                                                                                                                                   
-5                       .eslintignore                      e033fb6ca986e7b57245c4400933b04ccdb92e3cf78a8e6d28c760cf47d07d76                                                                 
-13                      .jshintignore                      16d30e4462189fb14dd611bdb708c510630c576a1f35b9383e89a4352da36c97                                                                 
-131                     .jshintrc                          e76e6f69535573db94f03b4af6fe508db327be02561df5759f98a1abb8a23eac                                                                 
-196                     .npmignore                         22664439b9d6900d476e0dd35c45f12049ee431a0e9939e6aca773c73d1a9238                                                                 
-55                      .travis.yml                        ce65c5f5a9885d0b1ec6555342d0172d4816e5754242e6ec0ea540be09942401                                                                 
-5844                    CHANGELOG.md                       ddea7af95e3191df81fd1b56954690bc34e5b61986013e68aff9fe0b65ce6754                                                                 
-105                     CONTRIBUTING.md                    4ddbaee835b58117a9740b1e24992e9338a0f370adc24d6d1cf91c67549c574b                                                                 
-1654                    LICENSE                            d2f9d2835eb09ccf673e118e4fdc372075437c1787e66c2202912fbe3e5ee9e1                                                                 
-229                     Makefile                           9431d348262e0f63e59a0cbe0eadf0faae4f92efb14383f738d5ef7834cdf3f3                                                                 
-7350                    README.md                          46d0fa2691f5c9a79b5f66fce6b47ce1711f03b116a8036300d9b4a937dfae6f                                                                 
-449                     bower.json                         555304f073a9e529f617ea673c8d87cdde5997d60411c1b5c7978221b58f2464                                                                 
-36                      index.js                           f87890b6d58f3a7e71b06299d2166c29e394be25534e469d158d26682a228376                                                                 
-                        lib/                                                                                                                                                                
-200                       index.js                         234a0ac59c4d5f5f333bd756c3d7939fa5637a20fd5246848aa0d31bc26fbfbe                                                                 
-4364                      parse.js                         4c40d6486e9520ab10ce3e069cc78d157f9a06987c66fa595db60b156c21305e                                                                 
-3072                      stringify.js                     589c7eaba0af0cc5c0404799b3a025c81390acbccf325dc7e245b5029d9cdc07                                                                 
-4217                      utils.js                         7e371fccee6047cae33edc26acfd67a6fc3a4718e4ea27c9efb56f95d1092cca                                                                 
-1402                    package.json                       e5dea2b9b54519f6f8eb3b3c10e72fc9ff32247f04ce014d679436bc8126bb9e                                                                 
-                        test/                                                                                                                                                               
-18239                     parse.js                         f63276e0a09e68ba44b9755d3bc608a6f7f368a5e4a8742c4ca15d01b6aab2ae                                                                 
-8534                      stringify.js                     ec4846b24235de79ab03a5843f58af95109f9c1c76f096e10b09750386bc9b07                                                                 
-507                       utils.js                         a283f42a7f46f783bfe0129f98ab5c2c0b76d51438f94420d91cb4506d412513                                                                 
-                      stringstream/                                                                                                                                                         
-96                      .npmignore                         204f2ad804a26d32bd0696901f37636ec0fb4e87d47c76fbb0d01ed65fac1609                                                                 
-43                      .travis.yml                        dc3b4379f4671f3771341b866a8b9d7ff954a65e9152056b8166747dfb343d19                                                                 
-170                     LICENSE.txt                        365b2102abca857828ef13f6ad309daaddfb1c48054bd0caf0826d47a0663377                                                                 
-1062                    README.md                          0c90f12fdf5a75830b1298ae86d2dd0a08a30159165b60ad2c6de805499c425f                                                                 
-814                     example.js                         7831af526660976186b89744e5819ebc2c1ff609c2bf25e01d8262d8d5324128                                                                 
-2376                    package.json                       cccebf4e32e936c22b947f1fcf0020299be08a2d5558c1c64c95d59714287618                                                                 
-2792                    stringstream.js                    7c28103d1902571c405bdae45775c6bec1a10a17415ea3a71e73824d9d9c015b                                                                 
-                      tough-cookie/                                                                                                                                                         
-243                     .editorconfig                      4bfeac7758102e82890df9e8b03036ee0029705d581c5ed056638e7801b725e7                                                                 
-1609                    .jshintrc                          66627ad7aaa1e1ecebd4136d3ad9031c587ba0198de41e2f85f0dbc60c611721                                                                 
-46                      .npmignore                         ff7421908c605ea1ccc0dda89da71ff51f5516cd28c3a73b73744ac9b13b8134                                                                 
-118                     .travis.yml                        148fa962ef7acd9fede59ea9ee28ce7d202fca5205c0528ef3c5062adcfeea6d                                                                 
-4109                    LICENSE                            961527cbd5d11f9527426ced14b2e9853ed5fec121627eb54de09ef05b9795c4                                                                 
-24676                   README.md                          9b9f85588be9507edebf6ce057277ca29f3502a6f764bf9e897edf33e5d9f623                                                                 
-11243                   generate-pubsuffix.js              4cef4e1d04fc47fce5e302ddff68b77a805e9f651dff68aa03603cfdbaed2881                                                                 
-                        lib/                                                                                                                                                                
-36615                     cookie.js                        6ffb59f8e02a9a9f9945b0dc7ffb713a131fe80b21864186b1c20ab5f0640e09                                                                 
-5514                      memstore.js                      b30ceacd2ced16e4fb7e00dd657c495c40a0e01a8486d381b4d0f879af6d5005                                                                 
-2435                      pathMatch.js                     1f07134d0b6d5f0dcdfd8be2b8aefc792ee8aa97c7204e81300a6950fc7fa24f                                                                 
-2266                      permuteDomain.js                 471193efe7216cb3792f4d8d10273e326db76974ca31fc552e7bb26a6e354035                                                                 
-142086                    pubsuffix.js                     03af58ae9448ca449ba7022e2bad68eb09b96172d0f5e37596dd2a5621ce65c4                                                                 
-2841                      store.js                         b97f4cc3c239f7282781318a3cea0cbb070771f9a105064701e12da1227910bb                                                                 
-1611                    package.json                       82260c6a661f53d6a8ba330a98edea55a749a0fa18b630caa919450fb63698b7                                                                 
-161546                  public-suffix.txt                  e092a201e009dfe8ce8b0a92e9e7940cfee9c849b0e8e65e85abbf22c2d8f853                                                                 
-                        test/                                                                                                                                                               
-12727                     api_test.js                      7e4488e5eeae66d07f4877a28961f257e3bc35d32e982a361eb168727be96564                                                                 
-17101                     cookie_jar_test.js               b5a92b7329f257f7974d29fac57921d6d7d767cf7514a76d53d5ead27bbc63ea                                                                 
-5848                      cookie_sorting_test.js           34d3d91261deac436aa548b66ece50419fbb7d5ddddad5ca9694f77e55dc4164                                                                 
-6045                      cookie_to_json_test.js           3d02fa63ebd98b1e7f02a9303516c28e5ade3dd191519c1f45f53fa895242ad0                                                                 
-5214                      cookie_to_string_test.js         368b6df533067dcb6472a0b848e1f43d115c188e0f1ee3ae2aceebdea44aa041                                                                 
-3079                      date_test.js                     44f1c673d8e46b27015af56ce960c89a9ed864eddf40c591d39544a4eeaabeaa                                                                 
-6699                      domain_and_path_test.js          f43710fa78c608a7f18d37ba89f3390b0ebfb92016c07d832e97ce8798be77cf                                                                 
-                          ietf_data/                                                                                                                                                        
-                            dates/                                                                                                                                                          
-5262                          bsd-examples.json            7f5693fddfb6c3355c6b7750cb0484ca9709e20128ce59d1758b2bb6aa8fd1b0                                                                 
-1498                          examples.json                a1babb11c7407c41f91ab91aa3c8400df3a96f410d01c6185567f01ed10f0ba9                                                                 
-49561                       parser.json                    15003f5272e0b4c59218c59d4e45c65dc18878fb38da652f75c5d5fc4d3fe106                                                                 
-3760                      ietf_test.js                     b0b404081c86a84b08426d2292db72ea2078ae1f048d4085f53587b620902723                                                                 
-11537                     jar_serialization_test.js        3d8a78a4bada15a4ce5a514f2bd96001d4b42050f1855ed2cb49f92fb088752a                                                                 
-3624                      lifetime_test.js                 d9d914d35f22ada2bfd244aec3258634d85d532b56f2f42637b4864e038704b8                                                                 
-11108                     parsing_test.js                  2403aa6270a2e4aef2bedb8b22690f2e797c314d0a79e40657c03e720cef34a4                                                                 
-4995                      regression_test.js               98fee28621c640f2437de6f9e02439e1aa58d8fe5203618dba8427d02321f089                                                                 
-                      tunnel-agent/                                                                                                                                                         
-54                      .jshintrc                          c71d8b02a609ad09f3d853ae61eb5ecc32249288e6f47d1f1c837e70e356d0b4                                                                 
-9140                    LICENSE                            d446a8c73d7bbe4872d6524b15ae206f9a2d7eb53f8c9cb6e6c893a43acc5276                                                                 
-113                     README.md                          c8086e96047bc824a3eefffde0fd5838595b1320c8c5c88efbba0dc8a495feaa                                                                 
-6621                    index.js                           b336075383ed58b9487d0806eac4b5e099a7933d78e468d9339ac4c6353d4423                                                                 
-1296                    package.json                       0ebf87b8e470c3c5e8d159d9a928d700c0ac95358463c75064163e1601cd8f52                                                                 
-2933                package.json                           126349cef4772ce43df6f36376cda6f03fe013d3465e521137849154f39fea80                                                                 
-1262    x           release.sh                             68d2071c14f53b4861b5391800dc46c2517fd7bdef0ff5e7c26df4df0805376e                                                                 
-38732               request.js                             924039a6357da2892231fd4ee2fb269f0f2e8a73e89ea0c3e9d90a8c94e0e5cd                                                                 
-                  semver/                                                                                                                                                                   
-7                   .npmignore                             bd0e6101c9a3570a9deb976b37b91be850841ae01cc7797c151a2d8d54529eca                                                                 
-1310                LICENSE                                6dca3e98ceb51bd8ee4205b354718da7952905e73f1ef30fb38bf81c12bfa40c                                                                 
-492                 Makefile                               1afefff32bd9a63491237df3f81acbff9270d7f19eba2aba2948ab7bac3888c5                                                                 
-11677               README.md                              b2829f018f32a3684d62c1bcd3e9bb0388174df0094b51296f094f6e3369623c                                                                 
-                    bin/                                                                                                                                                                    
-4092    x             semver                               f8f286386b4b21f30e81271becbe7e41f295e6ee4f072554493d6600170e3901                                                                 
-116                 foot.js.txt                            5ac6b05ff4dc82e467535812fa467276edf1b3abe5894e5f15af63b8c5318bf9                                                                 
-23                  head.js.txt                            cfbb2af9f50e3e1e3495ab58df48df25d21f703d51af244d099762e716adffb2                                                                 
-1321                package.json                           8641d0db86d2fc18ee89e5ea7ece9105a94fb1a8c0c45966afbd6af1a9c6ba7b                                                                 
-30626               semver.browser.js                      c8bae25d1fe1b4b1b8bb7cdc2de665e3d4c604e187b2491ae83edd0bc92fc7ce                                                                 
-31785               semver.js                              15f58260ca96de9cb5ca89c8130ad6ae2d8fa0ba2d195353c47bce3606361196                                                                 
-12264               semver.min.js                          9bba5bc5c54f3bb826b09649c58b81c95c43b0456395a045c21c2ab72d373d9e                                                                 
-                    test/                                                                                                                                                                   
-354                   amd.js                               397c753c807511529b92622b8eeb865fe3652e9b59411923ef7813f0ac447a69                                                                 
-707                   clean.js                             d933cd0f87ba6591aeb63d7748129215db64e34472b354d0fdcc1af27dc3468c                                                                 
-4933                  gtr.js                               4c82ffa4d1f9528493460629a494a5f590388a70f8d9987a8b54b9747af2ec58                                                                 
-23013                 index.js                             6a36b5934d9a1222e7a9f3a397da4d01c55c2af367f1b1b592ae750bbad5d874                                                                 
-5234                  ltr.js                               8870bcface5b01e7b4109416a3d9a969795e7ffb2cab62d71c3ce6bc3accf380                                                                 
-645                   no-module.js                         465486b146f970dc428fc13da0103cd09dd899acd0dc493451ee6b1c9b2d49d9                                                                 
-1278            package.json                               d9bfac25c2559588bcc5b3376eced0dcdcf146a5f306c203d8dff2879df3a7ad                                                                 
-                sandbox/                                                                                                                                                                    
-327               gen-keybase-v1.batch                     a3936fe92b8463c335b66c4369aa9e93b0c04ac41ec211d1aa75be98c8a16cb6                                                                 
-327               gen-keybase-v2.batch                     e01176f42bcb06fea1dca9ea1a1e2f4748a6e8af39e5c32d902d07fd776a9d1a                                                                 
-143     x         gpg.sh                                   fb3ee9dd24a06c160b0b8242db8355d45a828a8f7c9e2e9ae136ae3c3d158e62                                                                 
-143     x         gpg2.sh                                  cc79ba39633de3f606fc36368ff0d5ef77153e091d01d1fd6be86f35e95a90fa                                                                 
-216               howto.md                                 04e3fd6a6c707a2ccaa156d95a16d9e995e4fb702aace5fde9e4f9cc27638895                                                                 
-397               m1.sig                                   c4ba734dd8761e57a16df464fc91cae859ed2038888e2badbae7121c4b4a6c56                                                                 
-                  ring1/                                                                                                                                                                    
-2789                pub                                    0642e38c764e92a87743388dbd160f4b79316104f3848032c870bb8490d29576|3d8351732484c5d71ef8118cc0b7d75b534c4640d51ea26260de46451fdc210f
-2789                pub~                                   0642e38c764e92a87743388dbd160f4b79316104f3848032c870bb8490d29576|3d8351732484c5d71ef8118cc0b7d75b534c4640d51ea26260de46451fdc210f
-0                   sec                                    e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855                                                                 
-1200                trust                                  127d5d52726af752fcefc53e14a9542480c496e91aeb27c706024a77a28b6279                                                                 
-                  ring2/                                                                                                                                                                    
-857                 pub                                    dee985c98c596a477f156cc439d94887004c9c25018c221f83b8951ba3d3cfd3|9fddeb03450a0d3395747df79000365d89a82f26831b54077cbc2f5da0bf3b06
-857                 pub~                                   dee985c98c596a477f156cc439d94887004c9c25018c221f83b8951ba3d3cfd3|9fddeb03450a0d3395747df79000365d89a82f26831b54077cbc2f5da0bf3b06
-0                   sec                                    e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855                                                                 
-1280                trust                                  cb1d9d4538fac008f15ddf0ca14c96aa554705678d998da71fedb8b3d44634d1|1f512fca17f891cba2e1aa13a9fd93a73ff393e9a4af9b0675e44df98c89085a
-1309              v1.key                                   e288796085aef3c328c8e6d8972f6e556923796fd4cbaecbe9e819d7437e5b55                                                                 
-443               v1.revoke                                be7530be2bd465b5a4f742f1fa3920b711f055537237b8bcc1d7fa131232391a                                                                 
-                src/                                                                                                                                                                        
-369               base.iced                                2f6f8bf870a0f7f575f5aeaaf572fd8718455bc7c60264f1a358f60bdb206f78                                                                 
-5117              config.iced                              9432793cd1116b681cd8426bba86c3c46adba34faa2ab303e6b045a7b06efe56                                                                 
-300               constants.iced                           70255515c7614ed0082d80b880e4d1302bdc8f6fec33c7a318f7045e435a3925                                                                 
-1391              get_index.iced                           d9eafbd524309ec2079ba3080612253e32f898ff914920e2d0fe64e3aa8b35dd                                                                 
-4788              installer.iced                           5d13106240840d9da374eeca5a2cc81d09cd8b103a9a0861bf40ff435424b234                                                                 
-3639              key_install.iced                         05d543f2bfd7ef05695cd12a89ef7bfade574957e23f54c00dc88ed3a80971c0                                                                 
-4414              key_setup.iced                           5ea8414c5428573cb0e2d174c380489c9b856e27b1924dd8f95bbc6a5f7395f8                                                                 
-1321              key_upgrade.iced                         612c285f467e7798367e79d774922410798ecd051fa62128cb692760e1f49e7d                                                                 
-39                log.iced                                 f845b05873505a1c6dc1c12b9054e0dad92a495ee61a7ebc2cbb6c0d9e9783b5                                                                 
-4196              main.iced                                0eaea3bcd65d0e656395d3cd1c40d7017d0eb5c2119eebce3bba48c4f2e2d781                                                                 
-2295              npm.iced                                 86e7b344bece5f1c89d199e0d5ef8e963452ac2260538923eaabb229e7efe466                                                                 
-368               package.iced                             0800f95262881d2b4d208d46ee0e0143fb2dd8193fe07d0f9d24d97aaf361fac                                                                 
-3816              request.iced                             b871bcfa9d8206ffacdc52ce2a645478ea727d0061860ae822e13a49c28124f1                                                                 
-3808              software_upgrade.iced                    8e33190aa3f5aaaf1a863d0cea23f162d461fb02787157078d9d1a3c3a364a8a                                                                 
-182               top.iced                                 bbd26738810e5d19c57fe1c5e7253a7f5335839e2da0893d48b25a9cdf76eb9b                                                                 
-549               util.iced                                1cd1cf81ec5c2d4304f4f30ac21eb9af74983577b3505ae573dfa68ad355c586                                                                 
-```
-
-#### Ignore
-
-```
-/SIGNED.md
-```
-
-#### Presets
-
-```
-git      # ignore .git and anything as described by .gitignore files
-dropbox  # ignore .dropbox-cache and other Dropbox-related files    
-kb       # ignore anything as described by .kbignore files          
-```
-
-<!-- summarize version = 0.0.9 -->
-
-### End signed statement
-
-<hr>
-
-#### Notes
-
-With keybase you can sign any directory's contents, whether it's a git repo,
-source code distribution, or a personal documents folder. It aims to replace the drudgery of:
-
-  1. comparing a zipped file to a detached statement
-  2. downloading a public key
-  3. confirming it is in fact the author's by reviewing public statements they've made, using it
-
-All in one simple command:
-
-```bash
-keybase dir verify
-```
-
-There are lots of options, including assertions for automating your checks.
-
-For more info, check out https://keybase.io/docs/command_line/code_signing

+ 0 - 10
node_modules/keybase-installer/bin/main.js

@@ -1,10 +0,0 @@
-#!/usr/bin/env node
-
-var semver = require('semver');
-
-if (semver.lt(process.version, "0.10.0")) {
-	console.error("keybase requires node version 0.10 or greater; please upgrade!");
-	process.exit(2);
-}
-
-require("../lib/main").run();

+ 0 - 18
node_modules/keybase-installer/bin/main.sh

@@ -1,18 +0,0 @@
-#!/bin/sh
-
-if [ "$NODE" = "" ] ; then
-	which node > /dev/null
-	if [ $? -eq 0 ] ; then NODE=node; fi
-fi
-
-if [ "$NODE" = "" ] ; then
-	which nodejs > /dev/null
-	if [ $? -eq 0 ] ; then NODE=nodejs; fi
-fi
-
-if [ "$NODE" = "" ]; then
-	echo "Error: cannot start keybase; no version of node or nodejs found"
-	exit 2
-fi
-
-$NODE ./main.js $*

ファイルの差分が大きいため隠しています
+ 0 - 0
node_modules/keybase-installer/json/keyset.json


+ 0 - 24
node_modules/keybase-installer/lib/base.js

@@ -1,24 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-f
-(function() {
-  var BaseCommand, Config, os, path;
-
-  Config = require('./config').Config;
-
-  os = require('os');
-
-  path = require('path');
-
-  exports.BaseCommand = BaseCommand = (function() {
-    function BaseCommand(argv) {
-      this.config = new Config(argv);
-    }
-
-    BaseCommand.prototype.run = function(cb) {
-      return cb(new Error("unimplemented"));
-    };
-
-    return BaseCommand;
-
-  })();
-
-}).call(this);

+ 0 - 498
node_modules/keybase-installer/lib/config.js

@@ -1,498 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-g
-(function() {
-  var AltKeyRing, Config, a_json_parse, base64u, chain, constants, fs, fullname, home, iced, iutils, keyring, kpath, log, make_esc, mkdir_p, path, prng, request, set_gpg_cmd, tmpdir, url_join, __iced_k, __iced_k_noop, _ref, _ref1, _ref2,
-    __slice = [].slice;
-
-  iced = require('iced-runtime');
-  __iced_k = __iced_k_noop = function() {};
-
-  constants = require('./constants').constants;
-
-  fullname = require('./package').fullname;
-
-  request = require('./request').request;
-
-  log = require('./log');
-
-  tmpdir = require('os').tmpdir;
-
-  fs = require('fs');
-
-  _ref = require('iced-error'), chain = _ref.chain, make_esc = _ref.make_esc;
-
-  iutils = require('iced-utils');
-
-  _ref1 = iutils.util, a_json_parse = _ref1.a_json_parse, base64u = _ref1.base64u;
-
-  mkdir_p = iutils.fs.mkdir_p;
-
-  prng = require('crypto').prng;
-
-  path = require('path');
-
-  _ref2 = require('gpg-wrapper'), set_gpg_cmd = _ref2.set_gpg_cmd, keyring = _ref2.keyring;
-
-  AltKeyRing = keyring.AltKeyRing;
-
-  kpath = require('keybase-path');
-
-  url_join = function() {
-    var a, args, parts, rxx, trim;
-    args = 1 <= arguments.length ? __slice.call(arguments, 0) : [];
-    rxx = /^(\/*)(.*?)(\/*)$/;
-    trim = function(s) {
-      var m;
-      if ((m = s.match(rxx)) != null) {
-        return m[2];
-      } else {
-        return s;
-      }
-    };
-    parts = (function() {
-      var _i, _len, _results;
-      _results = [];
-      for (_i = 0, _len = args.length; _i < _len; _i++) {
-        a = args[_i];
-        _results.push(trim(a));
-      }
-      return _results;
-    })();
-    return parts.join('/');
-  };
-
-  home = function(opts) {
-    var x;
-    x = kpath.home(opts);
-    return x;
-  };
-
-  exports.Config = Config = (function() {
-    function Config(argv) {
-      this.argv = argv;
-      this._tmpdir = null;
-      this._alt_cmds = {};
-      this._keyring_dir = null;
-      this._actual_prefix = null;
-    }
-
-    Config.prototype.set_actual_prefix = function(p) {
-      return this._actual_prefix = p;
-    };
-
-    Config.prototype.get_keyring_dir = function() {
-      var d, v;
-      if (this._keyring_dir == null) {
-        if (!((d = this.argv.get("k", "keyring-dir")) != null)) {
-          v = (home({
-            array: true
-          })).concat([".keybase-installer", "keyring"]);
-          d = kpath.unsplit(v);
-        }
-        this._keyring_dir = d;
-      }
-      return this._keyring_dir;
-    };
-
-    Config.prototype.init_keyring = function(cb) {
-      var dir, esc, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      keyring.init({
-        log: log,
-        get_tmp_keyring_dir: (function(_this) {
-          return function() {
-            return _this.get_tmpdir();
-          };
-        })(this),
-        get_no_options: (function(_this) {
-          return function() {
-            return _this.get_no_gpg_options();
-          };
-        })(this)
-      });
-      dir = this.get_keyring_dir();
-      esc = make_esc(cb, "Config::init_keyring");
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/node-installer/src/config.iced",
-            funcname: "Config.init_keyring"
-          });
-          AltKeyRing.make(dir, esc(__iced_deferrals.defer({
-            assign_fn: (function(__slot_1) {
-              return function() {
-                return __slot_1._master_ring = arguments[0];
-              };
-            })(_this),
-            lineno: 66
-          })));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            __iced_deferrals = new iced.Deferrals(__iced_k, {
-              parent: ___iced_passed_deferral,
-              filename: "/Users/max/src/keybase/node-installer/src/config.iced",
-              funcname: "Config.init_keyring"
-            });
-            _this._master_ring.index(esc(__iced_deferrals.defer({
-              assign_fn: (function(__slot_1) {
-                return function() {
-                  return __slot_1._keyring_index = arguments[0];
-                };
-              })(_this),
-              lineno: 67
-            })));
-            __iced_deferrals._fulfill();
-          })(function() {
-            return cb(null);
-          });
-        };
-      })(this));
-    };
-
-    Config.prototype.keyring_index = function() {
-      return this._keyring_index;
-    };
-
-    Config.prototype.master_ring = function() {
-      return this._master_ring;
-    };
-
-    Config.prototype.set_master_ring = function(r, cb) {
-      var err, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      this._master_ring = r;
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/node-installer/src/config.iced",
-            funcname: "Config.set_master_ring"
-          });
-          _this._master_ring.index(__iced_deferrals.defer({
-            assign_fn: (function(__slot_1) {
-              return function() {
-                err = arguments[0];
-                return __slot_1._keyring_index = arguments[1];
-              };
-            })(_this),
-            lineno: 79
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err);
-        };
-      })(this));
-    };
-
-    Config.prototype.url_prefix = function() {
-      var prot, u;
-      if ((u = this.argv.get("u", "url-prefix"))) {
-        return u;
-      } else {
-        prot = this.argv.get("S", "no-https") ? 'http' : 'https';
-        return constants.url_prefix[prot];
-      }
-    };
-
-    Config.prototype.install_prefix = function() {
-      return process.env.PREFIX || this.argv.get("p", "prefix");
-    };
-
-    Config.prototype.make_url = function(u) {
-      return url_join(this.url_prefix(), u);
-    };
-
-    Config.prototype.get_tmpdir = function() {
-      return this._tmpdir;
-    };
-
-    Config.prototype.get_no_gpg_options = function() {
-      return this.argv.get("O", "no-gpg-options");
-    };
-
-    Config.prototype.make_tmpdir = function(cb) {
-      var err, p, r, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      err = null;
-      (function(_this) {
-        return (function(__iced_k) {
-          if (_this._tmpdir == null) {
-            r = base64u.encode(prng(16));
-            p = kpath.split(tmpdir()).concat(["keybase_install_" + r]);
-            _this._tmpdir = kpath.unsplit(p);
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/Users/max/src/keybase/node-installer/src/config.iced",
-                funcname: "Config.make_tmpdir"
-              });
-              fs.mkdir(_this._tmpdir, 0x1c0, __iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    return err = arguments[0];
-                  };
-                })(),
-                lineno: 111
-              }));
-              __iced_deferrals._fulfill();
-            })(function() {
-              return __iced_k(log.info("Made temporary directory: " + _this._tmpdir));
-            });
-          } else {
-            return __iced_k();
-          }
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err);
-        };
-      })(this));
-    };
-
-    Config.prototype.cleanup = function(cb) {
-      var esc, f, files, p, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      esc = make_esc(cb, "Installer::cleanup");
-      log.debug("+ cleanup " + this._tmpdir);
-      (function(_this) {
-        return (function(__iced_k) {
-          if (_this._tmpdir == null) {
-            return __iced_k();
-          } else {
-            (function(__iced_k) {
-              if (_this.argv.get("C", "skip-cleanup")) {
-                return __iced_k(log.info("Preserving tmpdir " + _this._tmpdir + " as per command-line switch"));
-              } else {
-                log.info("cleaning up tmpdir " + _this._tmpdir);
-                (function(__iced_k) {
-                  __iced_deferrals = new iced.Deferrals(__iced_k, {
-                    parent: ___iced_passed_deferral,
-                    filename: "/Users/max/src/keybase/node-installer/src/config.iced",
-                    funcname: "Config.cleanup"
-                  });
-                  fs.readdir(_this._tmpdir, esc(__iced_deferrals.defer({
-                    assign_fn: (function() {
-                      return function() {
-                        return files = arguments[0];
-                      };
-                    })(),
-                    lineno: 125
-                  })));
-                  __iced_deferrals._fulfill();
-                })(function() {
-                  (function(__iced_k) {
-                    var _i, _len, _ref3, _results, _while;
-                    _ref3 = files;
-                    _len = _ref3.length;
-                    _i = 0;
-                    _results = [];
-                    _while = function(__iced_k) {
-                      var _break, _continue, _next;
-                      _break = function() {
-                        return __iced_k(_results);
-                      };
-                      _continue = function() {
-                        return iced.trampoline(function() {
-                          ++_i;
-                          return _while(__iced_k);
-                        });
-                      };
-                      _next = function(__iced_next_arg) {
-                        _results.push(__iced_next_arg);
-                        return _continue();
-                      };
-                      if (!(_i < _len)) {
-                        return _break();
-                      } else {
-                        f = _ref3[_i];
-                        p = kpath.join(_this._tmpdir, f);
-                        log.debug("| Unlink " + p);
-                        (function(__iced_k) {
-                          __iced_deferrals = new iced.Deferrals(__iced_k, {
-                            parent: ___iced_passed_deferral,
-                            filename: "/Users/max/src/keybase/node-installer/src/config.iced",
-                            funcname: "Config.cleanup"
-                          });
-                          fs.unlink(p, esc(__iced_deferrals.defer({
-                            lineno: 129
-                          })));
-                          __iced_deferrals._fulfill();
-                        })(_next);
-                      }
-                    };
-                    _while(__iced_k);
-                  })(function() {
-                    (function(__iced_k) {
-                      __iced_deferrals = new iced.Deferrals(__iced_k, {
-                        parent: ___iced_passed_deferral,
-                        filename: "/Users/max/src/keybase/node-installer/src/config.iced",
-                        funcname: "Config.cleanup"
-                      });
-                      fs.rmdir(_this._tmpdir, esc(__iced_deferrals.defer({
-                        lineno: 130
-                      })));
-                      __iced_deferrals._fulfill();
-                    })(__iced_k);
-                  });
-                });
-              }
-            })(__iced_k);
-          }
-        });
-      })(this)((function(_this) {
-        return function() {
-          log.debug("- cleanup " + _this._tmpdir + " -> OK");
-          return cb(null);
-        };
-      })(this));
-    };
-
-    Config.prototype.get_proxy = function() {
-      return this.argv.get("x", "proxy") || process.env.https_proxy || process.env.http_proxy;
-    };
-
-    Config.prototype.request = function(u, cb) {
-      var body, err, opts, res, url, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      url = u.match("^https?://") ? u : this.make_url(u);
-      opts = {
-        url: url,
-        headers: {
-          "X-Keybase-Installer": fullname()
-        },
-        maxRedirects: 10,
-        progress: 50000,
-        proxy: this.get_proxy()
-      };
-      log.info("Fetching URL " + url);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/node-installer/src/config.iced",
-            funcname: "Config.request"
-          });
-          request(opts, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                res = arguments[1];
-                return body = arguments[2];
-              };
-            })(),
-            lineno: 150
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          log.debug(" * fetched -> " + (typeof res !== "undefined" && res !== null ? res.statusCode : void 0));
-          return cb(err, res, body);
-        };
-      })(this));
-    };
-
-    Config.prototype.set_keys = function(keys) {
-      if ((this._keys == null) || this._keys.version !== keys.version) {
-        log.info("Using keyset version v" + keys.version);
-        return this._keys = keys;
-      }
-    };
-
-    Config.prototype.set_alt_cmds = function() {
-      this.set_alt_gpg();
-      return this.set_alt_npm();
-    };
-
-    Config.prototype.set_alt_gpg = function() {
-      var c;
-      if ((c = this.argv.get("g", "gpg")) != null) {
-        return this._alt_cmds.gpg = c;
-      } else {
-        return null;
-      }
-    };
-
-    Config.prototype.set_alt_npm = function() {
-      var n;
-      if ((n = this.argv.get("n", "npm")) != null) {
-        return this._alt_cmds.npm = n;
-      }
-    };
-
-    Config.prototype.get_alt_cmd = function(k) {
-      return this._alt_cmds[k];
-    };
-
-    Config.prototype.get_cmd = function(k) {
-      return this.get_alt_cmd(k) || k;
-    };
-
-    Config.prototype.key_version = function() {
-      return this._keys.version;
-    };
-
-    Config.prototype.set_index = function(i) {
-      return this._index = i;
-    };
-
-    Config.prototype.index = function() {
-      return this._index;
-    };
-
-    Config.prototype.index_lookup_hash = function(v) {
-      var _ref3, _ref4;
-      return (_ref3 = this._index["package"]) != null ? (_ref4 = _ref3.all) != null ? _ref4[v] : void 0 : void 0;
-    };
-
-    Config.prototype.oneshot_verify = function(_arg, cb) {
-      var err, file, json, query, sig, which, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      which = _arg.which, sig = _arg.sig, file = _arg.file;
-      query = this._keys[which].fingerprint();
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/node-installer/src/config.iced",
-            funcname: "Config.oneshot_verify"
-          });
-          _this.master_ring().oneshot_verify({
-            query: query,
-            file: file,
-            sig: sig,
-            single: true
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return json = arguments[1];
-              };
-            })(),
-            lineno: 203
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err, json);
-        };
-      })(this));
-    };
-
-    return Config;
-
-  })();
-
-}).call(this);

+ 0 - 20
node_modules/keybase-installer/lib/constants.js

@@ -1,20 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-f
-(function() {
-  exports.constants = {
-    url_prefix: {
-      https: "https://dist.keybase.io/",
-      http: "http://dist.keybase.io/"
-    },
-    canonical_host: "keybase.io",
-    index_timeout: 60 * 5,
-    links: {
-      stable: 'stable',
-      current: 'current'
-    },
-    uid_email: {
-      code: "code@keybase.io",
-      index: "index@keybase.io"
-    }
-  };
-
-}).call(this);

+ 0 - 129
node_modules/keybase-installer/lib/get_index.js

@@ -1,129 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-f
-(function() {
-  var GetIndex, a_json_parse, chain, constants, iced, log, make_esc, unix_time, __iced_k, __iced_k_noop, _ref;
-
-  iced = require('iced-runtime');
-  __iced_k = __iced_k_noop = function() {};
-
-  make_esc = require('iced-error').make_esc;
-
-  _ref = require('iced-utils').util, chain = _ref.chain, unix_time = _ref.unix_time, a_json_parse = _ref.a_json_parse;
-
-  constants = require('./constants').constants;
-
-  log = require('./log');
-
-  exports.GetIndex = GetIndex = (function() {
-    function GetIndex(config) {
-      this.config = config;
-    }
-
-    GetIndex.prototype.fetch = function(cb) {
-      var err, res, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/get_index.iced",
-            funcname: "GetIndex.fetch"
-          });
-          _this.config.request("/sig/files/" + (_this.config.key_version()) + "/index.asc", __iced_deferrals.defer({
-            assign_fn: (function(__slot_1) {
-              return function() {
-                err = arguments[0];
-                res = arguments[1];
-                return __slot_1._signed_index = arguments[2];
-              };
-            })(_this),
-            lineno: 15
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err);
-        };
-      })(this));
-    };
-
-    GetIndex.prototype.verify = function(cb) {
-      var a, b, err, now, t, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      now = unix_time();
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/get_index.iced",
-            funcname: "GetIndex.verify"
-          });
-          _this.config.oneshot_verify({
-            which: 'index',
-            sig: _this._signed_index
-          }, __iced_deferrals.defer({
-            assign_fn: (function(__slot_1) {
-              return function() {
-                err = arguments[0];
-                return __slot_1._index = arguments[1];
-              };
-            })(_this),
-            lineno: 22
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          var _ref1, _ref2;
-          err = err != null ? err : (t = _this._index.timestamp) == null ? new Error("Bad index; no timestamp") : (a = now - t) > (b = constants.index_timeout) ? new Error("Index timed out: " + a + " > " + b) : ((_ref1 = _this._index.keys) != null ? _ref1.latest : void 0) == null ? new Error("missing required field: keys.latest") : ((_ref2 = _this._index["package"]) != null ? _ref2.latest : void 0) == null ? new Error("missing required field: package.latest") : null;
-          return cb(err);
-        };
-      })(this));
-    };
-
-    GetIndex.prototype.run = function(cb) {
-      var esc, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      log.debug("+ GetIndex::run");
-      esc = make_esc(cb, "GetIndex::run");
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/get_index.iced",
-            funcname: "GetIndex.run"
-          });
-          _this.fetch(esc(__iced_deferrals.defer({
-            lineno: 36
-          })));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            __iced_deferrals = new iced.Deferrals(__iced_k, {
-              parent: ___iced_passed_deferral,
-              filename: "/home/max/src/keybase/node-installer/src/get_index.iced",
-              funcname: "GetIndex.run"
-            });
-            _this.verify(esc(__iced_deferrals.defer({
-              lineno: 37
-            })));
-            __iced_deferrals._fulfill();
-          })(function() {
-            _this.config.set_index(_this._index);
-            log.debug("- GetIndex::run");
-            return cb(null);
-          });
-        };
-      })(this));
-    };
-
-    return GetIndex;
-
-  })();
-
-}).call(this);

+ 0 - 423
node_modules/keybase-installer/lib/installer.js

@@ -1,423 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-g
-(function() {
-  var BaseCommand, GPG, GetIndex, Installer, KeySetup, KeyUpgrade, SoftwareUpgrade, chain, check_node_async, colors, constants, find_and_set_cmd, fullname, iced, keyring, log, make_esc, mkdir_p, npm, path, request, __iced_k, __iced_k_noop, _ref, _ref1,
-    __hasProp = {}.hasOwnProperty,
-    __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
-
-  iced = require('iced-runtime');
-  __iced_k = __iced_k_noop = function() {};
-
-  BaseCommand = require('./base').BaseCommand;
-
-  _ref = require('gpg-wrapper'), find_and_set_cmd = _ref.find_and_set_cmd, keyring = _ref.keyring, GPG = _ref.GPG;
-
-  _ref1 = require('iced-error'), chain = _ref1.chain, make_esc = _ref1.make_esc;
-
-  request = require('./request');
-
-  fullname = require('./package').fullname;
-
-  constants = require('./constants').constants;
-
-  KeySetup = require('./key_setup').KeySetup;
-
-  KeyUpgrade = require('./key_upgrade').KeyUpgrade;
-
-  GetIndex = require('./get_index').GetIndex;
-
-  SoftwareUpgrade = require('./software_upgrade').SoftwareUpgrade;
-
-  log = require('./log');
-
-  npm = require('./npm');
-
-  mkdir_p = require('iced-utils').fs.mkdir_p;
-
-  path = require('path');
-
-  colors = require('colors');
-
-  check_node_async = require('badnode').check_node_async;
-
-  exports.Installer = Installer = (function(_super) {
-    __extends(Installer, _super);
-
-    function Installer(argv) {
-      Installer.__super__.constructor.call(this, argv);
-    }
-
-    Installer.prototype.cleanup = function(cb) {
-      var e2, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/node-installer/src/installer.iced",
-            funcname: "Installer.cleanup"
-          });
-          _this.config.cleanup(__iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                return e2 = arguments[0];
-              };
-            })(),
-            lineno: 28
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          if (typeof e2 !== "undefined" && e2 !== null) {
-            log.error("In cleanup: " + e2);
-          }
-          if ((typeof err === "undefined" || err === null) && (_this["package"] != null)) {
-            log.info("Succesful install: " + (_this["package"].filename()));
-          }
-          return cb();
-        };
-      })(this));
-    };
-
-    Installer.prototype.make_install_dir = function(cb) {
-      var err, made, p, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      err = null;
-      (function(_this) {
-        return (function(__iced_k) {
-          if (((p = _this.config.install_prefix()) != null) && p.length) {
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/Users/max/src/keybase/node-installer/src/installer.iced",
-                funcname: "Installer.make_install_dir"
-              });
-              mkdir_p(p, 0x1ed, __iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    err = arguments[0];
-                    return made = arguments[1];
-                  };
-                })(),
-                lineno: 39
-              }));
-              __iced_deferrals._fulfill();
-            })(function() {
-              return __iced_k((err == null) && made ? log.warn("Created install directory: " + p) : void 0);
-            });
-          } else {
-            return __iced_k();
-          }
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err);
-        };
-      })(this));
-    };
-
-    Installer.prototype.test_gpg = function(cb) {
-      var alt, cmd, err, lines, version, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      alt = this.config.set_alt_gpg();
-      log.debug("+ Installer::test_gpg");
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/node-installer/src/installer.iced",
-            funcname: "Installer.test_gpg"
-          });
-          find_and_set_cmd(alt, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                version = arguments[1];
-                return cmd = arguments[2];
-              };
-            })(),
-            lineno: 49
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          if (typeof err !== "undefined" && err !== null) {
-            lines = [];
-            if (alt != null) {
-              lines.push("The GPG command you specified `" + alt + "` wasn't found; see this page for help installing `gpg`:");
-            } else {
-              lines.push("The commands `gpg2` and `gpg` weren't found; you need to install it. See this page for more info:");
-            }
-            lines.push("\t   https://keybase.io/docs/command_line/prerequisites");
-            err = new Error(lines.join("\n"));
-          } else {
-            log.debug("| Found '" + cmd + "' @ " + version);
-          }
-          log.debug("- Installer::test_gpg -> " + (err != null ? 'FAILED' : 'OK'));
-          return cb(err);
-        };
-      })(this));
-    };
-
-    Installer.prototype.test_npm = function(cb) {
-      var c, cmd, err, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      cmd = this.config.get_cmd('npm');
-      log.debug("+ Installer::test_npm");
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/node-installer/src/installer.iced",
-            funcname: "Installer.test_npm"
-          });
-          npm.check(__iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                return err = arguments[0];
-              };
-            })(),
-            lineno: 74
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          if (typeof err === "undefined" || err === null) {
-
-          } else if ((c = _this.config.get_alt_cmd('npm')) != null) {
-            err = new Error("The npm command you specified `" + c + "` wasn't found");
-          } else {
-            err = new Error("Couldn't find an `npm` command in your path");
-          }
-          log.debug("- Installer::test_npm -> " + (err != null ? 'FAILED' : 'OK'));
-          return cb(err);
-        };
-      })(this));
-    };
-
-    Installer.prototype.test_npm_install = function(cb) {
-      var err, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/node-installer/src/installer.iced",
-            funcname: "Installer.test_npm_install"
-          });
-          npm.test_install(__iced_deferrals.defer({
-            assign_fn: (function(__slot_1) {
-              return function() {
-                err = arguments[0];
-                return __slot_1._install_prefix = arguments[1];
-              };
-            })(_this),
-            lineno: 86
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err);
-        };
-      })(this));
-    };
-
-    Installer.prototype.welcome_message = function(cb) {
-      var cmd, dir;
-      dir = path.join(this._install_prefix, "bin");
-      cmd = path.join(dir, "keybase");
-      console.log("=====================================================================\n\nWelcome to keybase.io!\n\nYou have successfully installed the command-line client to\n\n====>    " + (colors.bold(cmd)) + "    <=======\n\nPlease make sure " + (colors.bold(dir)) + " is in your PATH.\n\nIf you're new to the service run:\n\n     $ keybase signup        # signup for a new account\n     $ keybase push          # to push your public key to the server\n         -- or --\n     $ keybase gen           # generate a new key and push it\n\nIf you already signed up via the Web or another keybase client, try:\n\n     $ keybase login         # establish a session with the server, and pull down keys\n\nOnce you're configured, you can:\n\n     $ keybase prove twitter # prove your twitter identity\n     $ keybase id max        # to identify a friend\n     $ keybase track max     # to track them and write a proof to the server\n\nAnd then attempt crypto actions like enc/dec/verify/sign.  See `keybase --help` for\nmore details.\n");
-      return cb(null);
-    };
-
-    Installer.prototype.run = function(cb) {
-      var esc, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      log.debug("+ Installer::run");
-      cb = chain(cb, this.cleanup.bind(this));
-      esc = make_esc(cb, "Installer::run");
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/node-installer/src/installer.iced",
-            funcname: "Installer.run"
-          });
-          check_node_async(null, esc(__iced_deferrals.defer({
-            lineno: 135
-          })));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            __iced_deferrals = new iced.Deferrals(__iced_k, {
-              parent: ___iced_passed_deferral,
-              filename: "/Users/max/src/keybase/node-installer/src/installer.iced",
-              funcname: "Installer.run"
-            });
-            _this.test_gpg(esc(__iced_deferrals.defer({
-              lineno: 136
-            })));
-            __iced_deferrals._fulfill();
-          })(function() {
-            _this.config.set_alt_npm();
-            npm.set_config(_this.config);
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/Users/max/src/keybase/node-installer/src/installer.iced",
-                funcname: "Installer.run"
-              });
-              _this.make_install_dir(esc(__iced_deferrals.defer({
-                lineno: 141
-              })));
-              __iced_deferrals._fulfill();
-            })(function() {
-              (function(__iced_k) {
-                __iced_deferrals = new iced.Deferrals(__iced_k, {
-                  parent: ___iced_passed_deferral,
-                  filename: "/Users/max/src/keybase/node-installer/src/installer.iced",
-                  funcname: "Installer.run"
-                });
-                _this.test_npm(esc(__iced_deferrals.defer({
-                  lineno: 142
-                })));
-                __iced_deferrals._fulfill();
-              })(function() {
-                (function(__iced_k) {
-                  __iced_deferrals = new iced.Deferrals(__iced_k, {
-                    parent: ___iced_passed_deferral,
-                    filename: "/Users/max/src/keybase/node-installer/src/installer.iced",
-                    funcname: "Installer.run"
-                  });
-                  _this.test_npm_install(esc(__iced_deferrals.defer({
-                    lineno: 143
-                  })));
-                  __iced_deferrals._fulfill();
-                })(function() {
-                  _this.config.set_actual_prefix(_this._install_prefix);
-                  (function(__iced_k) {
-                    __iced_deferrals = new iced.Deferrals(__iced_k, {
-                      parent: ___iced_passed_deferral,
-                      filename: "/Users/max/src/keybase/node-installer/src/installer.iced",
-                      funcname: "Installer.run"
-                    });
-                    _this.config.make_tmpdir(esc(__iced_deferrals.defer({
-                      lineno: 147
-                    })));
-                    __iced_deferrals._fulfill();
-                  })(function() {
-                    (function(__iced_k) {
-                      __iced_deferrals = new iced.Deferrals(__iced_k, {
-                        parent: ___iced_passed_deferral,
-                        filename: "/Users/max/src/keybase/node-installer/src/installer.iced",
-                        funcname: "Installer.run"
-                      });
-                      _this.config.init_keyring(esc(__iced_deferrals.defer({
-                        lineno: 148
-                      })));
-                      __iced_deferrals._fulfill();
-                    })(function() {
-                      (function(__iced_k) {
-                        __iced_deferrals = new iced.Deferrals(__iced_k, {
-                          parent: ___iced_passed_deferral,
-                          filename: "/Users/max/src/keybase/node-installer/src/installer.iced",
-                          funcname: "Installer.run"
-                        });
-                        _this.key_setup(esc(__iced_deferrals.defer({
-                          lineno: 149
-                        })));
-                        __iced_deferrals._fulfill();
-                      })(function() {
-                        (function(__iced_k) {
-                          __iced_deferrals = new iced.Deferrals(__iced_k, {
-                            parent: ___iced_passed_deferral,
-                            filename: "/Users/max/src/keybase/node-installer/src/installer.iced",
-                            funcname: "Installer.run"
-                          });
-                          _this.get_index(esc(__iced_deferrals.defer({
-                            lineno: 150
-                          })));
-                          __iced_deferrals._fulfill();
-                        })(function() {
-                          (function(__iced_k) {
-                            __iced_deferrals = new iced.Deferrals(__iced_k, {
-                              parent: ___iced_passed_deferral,
-                              filename: "/Users/max/src/keybase/node-installer/src/installer.iced",
-                              funcname: "Installer.run"
-                            });
-                            _this.key_upgrade(esc(__iced_deferrals.defer({
-                              lineno: 151
-                            })));
-                            __iced_deferrals._fulfill();
-                          })(function() {
-                            (function(__iced_k) {
-                              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                                parent: ___iced_passed_deferral,
-                                filename: "/Users/max/src/keybase/node-installer/src/installer.iced",
-                                funcname: "Installer.run"
-                              });
-                              _this.software_upgrade(esc(__iced_deferrals.defer({
-                                lineno: 152
-                              })));
-                              __iced_deferrals._fulfill();
-                            })(function() {
-                              (function(__iced_k) {
-                                __iced_deferrals = new iced.Deferrals(__iced_k, {
-                                  parent: ___iced_passed_deferral,
-                                  filename: "/Users/max/src/keybase/node-installer/src/installer.iced",
-                                  funcname: "Installer.run"
-                                });
-                                _this.welcome_message(esc(__iced_deferrals.defer({
-                                  lineno: 153
-                                })));
-                                __iced_deferrals._fulfill();
-                              })(function() {
-                                log.debug("- Installer::run");
-                                return cb(null);
-                              });
-                            });
-                          });
-                        });
-                      });
-                    });
-                  });
-                });
-              });
-            });
-          });
-        };
-      })(this));
-    };
-
-    Installer.prototype.key_setup = function(cb) {
-      return (new KeySetup(this.config)).run(cb);
-    };
-
-    Installer.prototype.get_index = function(cb) {
-      return (new GetIndex(this.config)).run(cb);
-    };
-
-    Installer.prototype.key_upgrade = function(cb) {
-      return (new KeyUpgrade(this.config)).run(cb);
-    };
-
-    Installer.prototype.software_upgrade = function(cb) {
-      return (new SoftwareUpgrade(this.config)).run(cb);
-    };
-
-    return Installer;
-
-  })(BaseCommand);
-
-}).call(this);

+ 0 - 421
node_modules/keybase-installer/lib/key_install.js

@@ -1,421 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-f
-(function() {
-  var KeyInstall, chain, fpeq, hash_json, iced, keyring, log, make_esc, __iced_k, __iced_k_noop;
-
-  iced = require('iced-runtime');
-  __iced_k = __iced_k_noop = function() {};
-
-  make_esc = require('iced-error').make_esc;
-
-  chain = require('iced-utils').util.chain;
-
-  keyring = require('gpg-wrapper').keyring;
-
-  fpeq = require('pgp-utils').util.fpeq;
-
-  hash_json = require('./util').hash_json;
-
-  log = require('./log');
-
-  exports.KeyInstall = KeyInstall = (function() {
-    function KeyInstall(config, keyset) {
-      this.config = config;
-      this._keyset = keyset;
-      this._tmp_keyring = null;
-      this._keys = {};
-    }
-
-    KeyInstall.prototype.make_tmp_keyring = function(cb) {
-      var err, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      log.debug("| KeyInstaller::make_tmp_keyring");
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/key_install.iced",
-            funcname: "KeyInstall.make_tmp_keyring"
-          });
-          keyring.QuarantinedKeyRing.make(__iced_deferrals.defer({
-            assign_fn: (function(__slot_1) {
-              return function() {
-                err = arguments[0];
-                return __slot_1._tmp_keyring = arguments[1];
-              };
-            })(_this),
-            lineno: 23
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err);
-        };
-      })(this));
-    };
-
-    KeyInstall.prototype.cleanup = function(cb) {
-      var err, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      log.debug("+ Cleaning up tmp keyring " + this._tmp_keyring);
-      (function(_this) {
-        return (function(__iced_k) {
-          if (_this._tmp_keyring != null) {
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/home/max/src/keybase/node-installer/src/key_install.iced",
-                funcname: "KeyInstall.cleanup"
-              });
-              _this._tmp_keyring.nuke(__iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    return err = arguments[0];
-                  };
-                })(),
-                lineno: 31
-              }));
-              __iced_deferrals._fulfill();
-            })(function() {
-              return __iced_k(typeof err !== "undefined" && err !== null ? log.warn("Error cleaning up temporary keyring: " + err.message) : void 0);
-            });
-          } else {
-            return __iced_k();
-          }
-        });
-      })(this)((function(_this) {
-        return function() {
-          log.debug("- Cleaning up tmp keyring " + _this._tmp_keyring);
-          return cb();
-        };
-      })(this));
-    };
-
-    KeyInstall.prototype.temporary_import = function(cb) {
-      var a, b, err, esc, fps, k, msg, source, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      esc = make_esc(cb, "KeyInstaller::temporary_import");
-      log.debug("+ KeyInstaller::temporary_import");
-      source = this._keyset.keys.code;
-      this._keys.code = k = this._tmp_keyring.make_key({
-        key_data: source.key_data,
-        fingerprint: source.fingerprint,
-        username: "code@keybase.io"
-      });
-      this._tmp_keyring.set_fingerprint(source.fingerprint);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/key_install.iced",
-            funcname: "KeyInstall.temporary_import"
-          });
-          k.save(esc(__iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                return err = arguments[0];
-              };
-            })(),
-            lineno: 50
-          })));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            __iced_deferrals = new iced.Deferrals(__iced_k, {
-              parent: ___iced_passed_deferral,
-              filename: "/home/max/src/keybase/node-installer/src/key_install.iced",
-              funcname: "KeyInstall.temporary_import"
-            });
-            _this._tmp_keyring.list_fingerprints(esc(__iced_deferrals.defer({
-              assign_fn: (function() {
-                return function() {
-                  return fps = arguments[0];
-                };
-              })(),
-              lineno: 51
-            })));
-            __iced_deferrals._fulfill();
-          })(function() {
-            msg = fps.length === 0 ? "key save failed; no fingerprints" : fps.length > 1 ? "keyring corruption; too many fingerprints found" : !fpeq((a = fps[0]), (b = _this._keyset.keys.code.fingerprint)) ? "fingerprint mismatch after import: " + a + " != " + b : void 0;
-            err = msg != null ? new Error(msg) : null;
-            log.debug("- KeyInstaller::temporary_import");
-            return cb(err);
-          });
-        };
-      })(this));
-    };
-
-    KeyInstall.prototype.check_self_sig = function(cb) {
-      var err, payload, sig, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      sig = this._keyset.self_sig;
-      this._keyset.self_sig = null;
-      log.debug("+ KeyInstaller::check_self_sig");
-      payload = hash_json(this._keyset);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/key_install.iced",
-            funcname: "KeyInstall.check_self_sig"
-          });
-          _this._keys.code.verify_sig({
-            which: "self sig on keyset",
-            payload: payload,
-            sig: sig
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                return err = arguments[0];
-              };
-            })(),
-            lineno: 69
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          log.debug("- KeyInstaller::check_self_sig");
-          return cb(err);
-        };
-      })(this));
-    };
-
-    KeyInstall.prototype.full_import = function(cb) {
-      var esc, k, master, source, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      esc = make_esc(cb, "KeyInstall::full_import");
-      log.debug("+ KeyInstaller::full_import");
-      master = this.config.master_ring();
-      source = this._keyset.keys.index;
-      this._keys.index = k = master.make_key({
-        key_data: source.key_data,
-        fingerprint: source.fingerprint,
-        username: "index@keybase.io"
-      });
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/key_install.iced",
-            funcname: "KeyInstall.full_import"
-          });
-          k.save(esc(__iced_deferrals.defer({
-            lineno: 85
-          })));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            __iced_deferrals = new iced.Deferrals(__iced_k, {
-              parent: ___iced_passed_deferral,
-              filename: "/home/max/src/keybase/node-installer/src/key_install.iced",
-              funcname: "KeyInstall.full_import"
-            });
-            _this._keys.code.commit({
-              ring: master
-            }, esc(__iced_deferrals.defer({
-              lineno: 86
-            })));
-            __iced_deferrals._fulfill();
-          })(function() {
-            log.debug("- KeyInstaller::full_import");
-            return cb(null);
-          });
-        };
-      })(this));
-    };
-
-    KeyInstall.prototype.revoke_1 = function(k, v, cb) {
-      var err, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      log.debug("| Revoking key " + k);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/key_install.iced",
-            funcname: "KeyInstall.revoke_1"
-          });
-          keyring.master_ring().gpg({
-            args: ["--import"],
-            stdin: v,
-            quiet: true
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                return err = arguments[0];
-              };
-            })(),
-            lineno: 94
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err);
-        };
-      })(this));
-    };
-
-    KeyInstall.prototype.revoke_all = function(cb) {
-      var esc, k, v, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      esc = make_esc(cb, "KeyInstall::revoke_all");
-      (function(_this) {
-        return (function(__iced_k) {
-          if (_this._keyset.revocation != null) {
-            (function(__iced_k) {
-              var _i, _k, _keys, _ref, _results, _while;
-              _ref = _this._keyset.revocation;
-              _keys = (function() {
-                var _results1;
-                _results1 = [];
-                for (_k in _ref) {
-                  _results1.push(_k);
-                }
-                return _results1;
-              })();
-              _i = 0;
-              _results = [];
-              _while = function(__iced_k) {
-                var _break, _continue, _next;
-                _break = function() {
-                  return __iced_k(_results);
-                };
-                _continue = function() {
-                  return iced.trampoline(function() {
-                    ++_i;
-                    return _while(__iced_k);
-                  });
-                };
-                _next = function(__iced_next_arg) {
-                  _results.push(__iced_next_arg);
-                  return _continue();
-                };
-                if (!(_i < _keys.length)) {
-                  return _break();
-                } else {
-                  k = _keys[_i];
-                  v = _ref[k];
-                  (function(__iced_k) {
-                    __iced_deferrals = new iced.Deferrals(__iced_k, {
-                      parent: ___iced_passed_deferral,
-                      filename: "/home/max/src/keybase/node-installer/src/key_install.iced",
-                      funcname: "KeyInstall.revoke_all"
-                    });
-                    _this.revoke_1(k, v, esc(__iced_deferrals.defer({
-                      lineno: 103
-                    })));
-                    __iced_deferrals._fulfill();
-                  })(_next);
-                }
-              };
-              _while(__iced_k);
-            })(__iced_k);
-          } else {
-            return __iced_k();
-          }
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(null);
-        };
-      })(this));
-    };
-
-    KeyInstall.prototype.keys = function() {
-      return this._keys;
-    };
-
-    KeyInstall.prototype.run = function(cb) {
-      var esc, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      esc = make_esc(cb, "KeyInstall:run2");
-      log.debug("+ KeyInstaller::run");
-      log.info("Installing keyset version " + this._keyset.version);
-      cb = chain(cb, this.cleanup.bind(this));
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/key_install.iced",
-            funcname: "KeyInstall.run"
-          });
-          _this.make_tmp_keyring(esc(__iced_deferrals.defer({
-            lineno: 117
-          })));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            __iced_deferrals = new iced.Deferrals(__iced_k, {
-              parent: ___iced_passed_deferral,
-              filename: "/home/max/src/keybase/node-installer/src/key_install.iced",
-              funcname: "KeyInstall.run"
-            });
-            _this.temporary_import(esc(__iced_deferrals.defer({
-              lineno: 118
-            })));
-            __iced_deferrals._fulfill();
-          })(function() {
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/home/max/src/keybase/node-installer/src/key_install.iced",
-                funcname: "KeyInstall.run"
-              });
-              _this.check_self_sig(esc(__iced_deferrals.defer({
-                lineno: 119
-              })));
-              __iced_deferrals._fulfill();
-            })(function() {
-              (function(__iced_k) {
-                __iced_deferrals = new iced.Deferrals(__iced_k, {
-                  parent: ___iced_passed_deferral,
-                  filename: "/home/max/src/keybase/node-installer/src/key_install.iced",
-                  funcname: "KeyInstall.run"
-                });
-                _this.full_import(esc(__iced_deferrals.defer({
-                  lineno: 120
-                })));
-                __iced_deferrals._fulfill();
-              })(function() {
-                (function(__iced_k) {
-                  __iced_deferrals = new iced.Deferrals(__iced_k, {
-                    parent: ___iced_passed_deferral,
-                    filename: "/home/max/src/keybase/node-installer/src/key_install.iced",
-                    funcname: "KeyInstall.run"
-                  });
-                  _this.revoke_all(esc(__iced_deferrals.defer({
-                    lineno: 121
-                  })));
-                  __iced_deferrals._fulfill();
-                })(function() {
-                  log.debug("- KeyInstaller::run");
-                  return cb(null);
-                });
-              });
-            });
-          });
-        };
-      })(this));
-    };
-
-    return KeyInstall;
-
-  })();
-
-}).call(this);

+ 0 - 353
node_modules/keybase-installer/lib/key_setup.js

@@ -1,353 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-f
-(function() {
-  var KeyInstall, KeySetup, a_json_parse, athrow, constants, fpeq, iced, keyring, keyset, log, make_esc, __iced_k, __iced_k_noop, _ref;
-
-  iced = require('iced-runtime');
-  __iced_k = __iced_k_noop = function() {};
-
-  keyring = require('gpg-wrapper').keyring;
-
-  constants = require('./constants').constants;
-
-  log = require('./log');
-
-  make_esc = require('iced-error').make_esc;
-
-  keyset = require('../json/keyset');
-
-  fpeq = require('pgp-utils').util.fpeq;
-
-  _ref = require('iced-utils').util, athrow = _ref.athrow, a_json_parse = _ref.a_json_parse;
-
-  KeyInstall = require('./key_install').KeyInstall;
-
-  exports.KeySetup = KeySetup = (function() {
-    function KeySetup(config) {
-      this.config = config;
-    }
-
-    KeySetup.prototype.check_prepackaged_keyset = function(cb) {
-      var a, b, body, err, esc, json, res, v, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      esc = make_esc(cb, "KeySetup::check_prepackaged_keyset");
-      v = keyset.version;
-      log.debug("+ KeySetup::check_prepackaged_key " + v);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/key_setup.iced",
-            funcname: "KeySetup.check_prepackaged_keyset"
-          });
-          _this.config.request("/sig/files/" + v + "/keyset.json", esc(__iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                res = arguments[0];
-                return body = arguments[1];
-              };
-            })(),
-            lineno: 21
-          })));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            __iced_deferrals = new iced.Deferrals(__iced_k, {
-              parent: ___iced_passed_deferral,
-              filename: "/home/max/src/keybase/node-installer/src/key_setup.iced",
-              funcname: "KeySetup.check_prepackaged_keyset"
-            });
-            a_json_parse(body, esc(__iced_deferrals.defer({
-              assign_fn: (function() {
-                return function() {
-                  return json = arguments[0];
-                };
-              })(),
-              lineno: 22
-            })));
-            __iced_deferrals._fulfill();
-          })(function() {
-            var _ref1;
-            err = (a = typeof json !== "undefined" && json !== null ? json.version : void 0) !== v ? new Error("Version mismatch; expected " + v + " but got " + a) : (a = typeof json !== "undefined" && json !== null ? (_ref1 = json.keys.code) != null ? _ref1.fingerprint : void 0 : void 0) == null ? (console.log(json), new Error("Fingerprint failure; none found in server version")) : !(fpeq(a, (b = keyset.keys.code.fingerprint))) ? new Error("Fingerprint mismatch; expected " + a + " but got " + b) : null;
-            log.debug("- KeySetup::check_prepackaged_keyset " + v + " -> " + err);
-            return cb(err);
-          });
-        };
-      })(this));
-    };
-
-    KeySetup.prototype.install_prepackaged_keyset = function(cb) {
-      var err, keys, ki, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      log.debug("+ Installing prepackaged keyset: v" + keyset.version);
-      ki = new KeyInstall(this.config, keyset);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/key_setup.iced",
-            funcname: "KeySetup.install_prepackaged_keyset"
-          });
-          ki.run(__iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                return err = arguments[0];
-              };
-            })(),
-            lineno: 41
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          keys = ki.keys();
-          keys.version = keyset.version;
-          _this.config.set_keys(keys);
-          log.debug("- Installed: -> " + err);
-          return cb(err);
-        };
-      })(this));
-    };
-
-    KeySetup.prototype.find_keyset = function(version, cb) {
-      var esc, found, found_code, keys, v, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      log.debug("+ KeySetup::find_keyset " + version);
-      esc = make_esc(cb, "SetupKeyRunner::find_keyset");
-      keys = {};
-      found = false;
-      found_code = false;
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/key_setup.iced",
-            funcname: "KeySetup.find_keyset"
-          });
-          _this.find_key({
-            which: 'code',
-            version: version
-          }, esc(__iced_deferrals.defer({
-            assign_fn: (function(__slot_1) {
-              return function() {
-                __slot_1.code = arguments[0];
-                return v = arguments[1];
-              };
-            })(keys),
-            lineno: 56
-          })));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            if (keys.code != null) {
-              found_code = true;
-              (function(__iced_k) {
-                __iced_deferrals = new iced.Deferrals(__iced_k, {
-                  parent: ___iced_passed_deferral,
-                  filename: "/home/max/src/keybase/node-installer/src/key_setup.iced",
-                  funcname: "KeySetup.find_keyset"
-                });
-                _this.find_key({
-                  which: 'index',
-                  version: v
-                }, esc(__iced_deferrals.defer({
-                  assign_fn: (function(__slot_1) {
-                    return function() {
-                      return __slot_1.index = arguments[0];
-                    };
-                  })(keys),
-                  lineno: 59
-                })));
-                __iced_deferrals._fulfill();
-              })(function() {
-                return __iced_k(keys.index != null ? (keys.version = v, _this.config.set_keys(keys), found = true) : void 0);
-              });
-            } else {
-              return __iced_k();
-            }
-          })(function() {
-            log.debug("- KeySetup::find_keys " + found + " " + (typeof v !== "undefined" && v !== null ? '@ version ' + v : ''));
-            return cb(null, found, keys, found_code);
-          });
-        };
-      })(this));
-    };
-
-    KeySetup.prototype.run = function(cb) {
-      var esc, found, found_code, keys, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      log.debug("+ KeySetup::run");
-      esc = make_esc(cb, "SetupKeyRunner::run");
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/key_setup.iced",
-            funcname: "KeySetup.run"
-          });
-          _this.find_keyset(null, esc(__iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                found = arguments[0];
-                keys = arguments[1];
-                return found_code = arguments[2];
-              };
-            })(),
-            lineno: 74
-          })));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            if (!found && found_code) {
-              (function(__iced_k) {
-                if (!found) {
-                  (function(__iced_k) {
-                    __iced_deferrals = new iced.Deferrals(__iced_k, {
-                      parent: ___iced_passed_deferral,
-                      filename: "/home/max/src/keybase/node-installer/src/key_setup.iced",
-                      funcname: "KeySetup.run"
-                    });
-                    _this.find_keyset(keyset.version, esc(__iced_deferrals.defer({
-                      assign_fn: (function() {
-                        return function() {
-                          return found = arguments[0];
-                        };
-                      })(),
-                      lineno: 80
-                    })));
-                    __iced_deferrals._fulfill();
-                  })(__iced_k);
-                } else {
-                  return __iced_k();
-                }
-              })(__iced_k);
-            } else {
-              return __iced_k();
-            }
-          })(function() {
-            (function(__iced_k) {
-              if (!found) {
-                (function(__iced_k) {
-                  __iced_deferrals = new iced.Deferrals(__iced_k, {
-                    parent: ___iced_passed_deferral,
-                    filename: "/home/max/src/keybase/node-installer/src/key_setup.iced",
-                    funcname: "KeySetup.run"
-                  });
-                  _this.check_prepackaged_keyset(esc(__iced_deferrals.defer({
-                    lineno: 84
-                  })));
-                  __iced_deferrals._fulfill();
-                })(function() {
-                  (function(__iced_k) {
-                    __iced_deferrals = new iced.Deferrals(__iced_k, {
-                      parent: ___iced_passed_deferral,
-                      filename: "/home/max/src/keybase/node-installer/src/key_setup.iced",
-                      funcname: "KeySetup.run"
-                    });
-                    _this.install_prepackaged_keyset(esc(__iced_deferrals.defer({
-                      lineno: 85
-                    })));
-                    __iced_deferrals._fulfill();
-                  })(__iced_k);
-                });
-              } else {
-                return __iced_k();
-              }
-            })(function() {
-              log.debug("- KeySetup::run (found=" + found + ")");
-              return cb(null);
-            });
-          });
-        };
-      })(this));
-    };
-
-    KeySetup.prototype.find_key = function(_arg, cb) {
-      var all_keys, em, err, key, m, msg, ret, uid, v, version, wanted_key, wanted_v, which, ___iced_passed_deferral, __iced_deferrals, __iced_k, _i, _j, _len, _len1, _ref1, _ref2;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      which = _arg.which, version = _arg.version;
-      log.debug("+ KeySetup::find_latest_key " + which + "@" + version);
-      em = constants.uid_email[which];
-      err = key = null;
-      all_keys = this.config.keyring_index().lookup().email.get(em);
-      wanted_key = null;
-      wanted_v = null;
-      ret = null;
-      for (_i = 0, _len = all_keys.length; _i < _len; _i++) {
-        key = all_keys[_i];
-        _ref1 = key.userids();
-        for (_j = 0, _len1 = _ref1.length; _j < _len1; _j++) {
-          uid = _ref1[_j];
-          if (!((m = (_ref2 = uid.comment) != null ? _ref2.match(/^v(\d+)$/) : void 0))) {
-            continue;
-          }
-          v = parseInt(m[1], 10);
-          if ((version != null) && (v === version)) {
-            wanted_key = key;
-            wanted_v = v;
-            break;
-          } else if ((version == null) && ((wanted_v != null) || v > wanted_v)) {
-            wanted_key = key;
-            wanted_v = v;
-          }
-        }
-        if ((version != null) && wanted_key) {
-          break;
-        }
-      }
-      (function(_this) {
-        return (function(__iced_k) {
-          if (wanted_key == null) {
-            msg = "No " + which + "-signing key (" + em + ") in GPG keychain";
-            if (version != null) {
-              msg += " (at version " + version + ")";
-            }
-            return __iced_k(log.warn(msg));
-          } else {
-            ret = _this.config.master_ring().make_key({
-              fingerprint: wanted_key.fingerprint(),
-              username: wanted_key.emails()[0]
-            });
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/home/max/src/keybase/node-installer/src/key_setup.iced",
-                funcname: "KeySetup.find_key"
-              });
-              ret.load(__iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    return err = arguments[0];
-                  };
-                })(),
-                lineno: 125
-              }));
-              __iced_deferrals._fulfill();
-            })(function() {
-              return __iced_k(err != null ? ret = null : void 0);
-            });
-          }
-        });
-      })(this)((function(_this) {
-        return function() {
-          log.debug("- KeySetup::find_latest_key " + which + "@" + version + " -> " + err + " / " + wanted_v + " / " + (key != null ? key.fingerprint() : void 0));
-          return cb(err, ret, wanted_v);
-        };
-      })(this));
-    };
-
-    return KeySetup;
-
-  })();
-
-}).call(this);

+ 0 - 181
node_modules/keybase-installer/lib/key_upgrade.js

@@ -1,181 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-f
-(function() {
-  var KeyInstall, KeyUpgrade, chain, fpeq, iced, keyring, log, make_esc, __iced_k, __iced_k_noop;
-
-  iced = require('iced-runtime');
-  __iced_k = __iced_k_noop = function() {};
-
-  make_esc = require('iced-error').make_esc;
-
-  keyring = require('gpg-wrapper').keyring;
-
-  fpeq = require('pgp-utils').util.fpeq;
-
-  chain = require('iced-utils').util.chain;
-
-  KeyInstall = require('./key_install').KeyInstall;
-
-  log = require('./log');
-
-  exports.KeyUpgrade = KeyUpgrade = (function() {
-    function KeyUpgrade(config) {
-      this.config = config;
-      this._v = {};
-    }
-
-    KeyUpgrade.prototype.fetch = function(cb) {
-      var err, res, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/key_upgrade.iced",
-            funcname: "KeyUpgrade.fetch"
-          });
-          _this.config.request("/sig/files/" + _this._v.old + "/keyset-" + _this._v["new"] + ".asc", __iced_deferrals.defer({
-            assign_fn: (function(__slot_1) {
-              return function() {
-                err = arguments[0];
-                res = arguments[1];
-                return __slot_1._sig = arguments[2];
-              };
-            })(_this),
-            lineno: 20
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err);
-        };
-      })(this));
-    };
-
-    KeyUpgrade.prototype.verify = function(cb) {
-      var err, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/key_upgrade.iced",
-            funcname: "KeyUpgrade.verify"
-          });
-          _this.config.oneshot_verify({
-            which: 'code',
-            sig: _this._sig
-          }, __iced_deferrals.defer({
-            assign_fn: (function(__slot_1) {
-              return function() {
-                err = arguments[0];
-                return __slot_1._keyset = arguments[1];
-              };
-            })(_this),
-            lineno: 26
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err);
-        };
-      })(this));
-    };
-
-    KeyUpgrade.prototype.install = function(cb) {
-      var err, keys, ki, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      ki = new KeyInstall(this.config, this._keyset);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/key_upgrade.iced",
-            funcname: "KeyUpgrade.install"
-          });
-          ki.run(__iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                return err = arguments[0];
-              };
-            })(),
-            lineno: 33
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          if (typeof err === "undefined" || err === null) {
-            keys = ki.keys();
-            keys.version = _this._v["new"];
-            _this.config.set_keys(keys);
-          }
-          return cb(err);
-        };
-      })(this));
-    };
-
-    KeyUpgrade.prototype.run = function(cb) {
-      var esc, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      esc = make_esc(cb, "KeyUpgrade::run");
-      (function(_this) {
-        return (function(__iced_k) {
-          if ((_this._v["new"] = _this.config.index().keys.latest) > (_this._v.old = _this.config.key_version())) {
-            log.info("Key upgrade suggested; new version is " + _this._v["new"] + ", but we have " + _this._v.old);
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/home/max/src/keybase/node-installer/src/key_upgrade.iced",
-                funcname: "KeyUpgrade.run"
-              });
-              _this.fetch(__iced_deferrals.defer({
-                lineno: 46
-              }));
-              __iced_deferrals._fulfill();
-            })(function() {
-              (function(__iced_k) {
-                __iced_deferrals = new iced.Deferrals(__iced_k, {
-                  parent: ___iced_passed_deferral,
-                  filename: "/home/max/src/keybase/node-installer/src/key_upgrade.iced",
-                  funcname: "KeyUpgrade.run"
-                });
-                _this.verify(esc(__iced_deferrals.defer({
-                  lineno: 47
-                })));
-                __iced_deferrals._fulfill();
-              })(function() {
-                (function(__iced_k) {
-                  __iced_deferrals = new iced.Deferrals(__iced_k, {
-                    parent: ___iced_passed_deferral,
-                    filename: "/home/max/src/keybase/node-installer/src/key_upgrade.iced",
-                    funcname: "KeyUpgrade.run"
-                  });
-                  _this.install(esc(__iced_deferrals.defer({
-                    lineno: 48
-                  })));
-                  __iced_deferrals._fulfill();
-                })(__iced_k);
-              });
-            });
-          } else {
-            return __iced_k();
-          }
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(null);
-        };
-      })(this));
-    };
-
-    return KeyUpgrade;
-
-  })();
-
-}).call(this);

+ 0 - 5
node_modules/keybase-installer/lib/log.js

@@ -1,5 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-f
-(function() {
-  module.exports = require('iced-logger');
-
-}).call(this);

+ 0 - 223
node_modules/keybase-installer/lib/main.js

@@ -1,223 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-g
-(function() {
-  var BaseCommand, HelpCommand, Installer, KeyJsonCommand, Main, VersionCommand, bin, constants, fullname, getopt, hash_json, iced, keyring, keyset, log, make_esc, os, path, run, version, __iced_k, __iced_k_noop, _ref,
-    __hasProp = {}.hasOwnProperty,
-    __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
-
-  iced = require('iced-runtime');
-  __iced_k = __iced_k_noop = function() {};
-
-  getopt = require('iced-utils').getopt;
-
-  _ref = require('./package'), fullname = _ref.fullname, bin = _ref.bin, version = _ref.version;
-
-  make_esc = require('iced-error').make_esc;
-
-  BaseCommand = require('./base').BaseCommand;
-
-  Installer = require('./installer').Installer;
-
-  keyring = require('gpg-wrapper').keyring;
-
-  constants = require('./constants').constants;
-
-  hash_json = require('./util').hash_json;
-
-  keyset = require('../json/keyset');
-
-  log = require('./log');
-
-  os = require('os');
-
-  path = require('path');
-
-  VersionCommand = (function(_super) {
-    __extends(VersionCommand, _super);
-
-    function VersionCommand() {
-      return VersionCommand.__super__.constructor.apply(this, arguments);
-    }
-
-    VersionCommand.prototype.run = function(cb) {
-      console.log(fullname());
-      return cb(null);
-    };
-
-    return VersionCommand;
-
-  })(BaseCommand);
-
-  HelpCommand = (function(_super) {
-    __extends(HelpCommand, _super);
-
-    function HelpCommand(argv, err) {
-      this.err = err != null ? err : null;
-      HelpCommand.__super__.constructor.call(this, argv);
-    }
-
-    HelpCommand.prototype.run = function(cb) {
-      console.log("usage: " + (bin()) + " [-dhjvCS] [-p <install-prefix>] [<keybase-version>]\n\n\tUpgrade or install a version of keybase.  Check signatures with\n\tKeybase.io's signing key. You can provide a specific version\n\tor by default you'll get the most recent version.\n\nBoolean Flags:\n\n\t-d/--debug              -- Turn on debugging output\n\t-h/--help               -- Print the help message and quit\n\t-j/--key-json           -- Output the hash of the JSON file of the built-in keyset\n\t-v/--version            -- Print the version and quit\n\t-C/--skip-cleanup       -- Don't delete temporary files after install\n\t-S/--no-https           -- Don't use HTTPS. Safe since we check PGP sigs on everything.\n\t-O/--no-gpg-options     -- Turn off GPG options file for temporary keyring operations\n\nOptions:\n\n\t-g/--gpg <cmd>\n\t\tUse a GPG command other than `gpg`\n\n\t-k/--keyring-dir <dir>\n\t\tWhere to store our GPG keys.\n\t\t(default: ~/.keybase-installer/keyring)\n\n\t-n/--npm <cmd>\n\t\tUse an npm command other than `npm`\n\n\t-p/--prefix <dir>\n\t\tInstall to the given prefix\n\t\t(rather than where `npm` installs by default)\n\n\t-u/--url-prefix <prfx>\n\t\tSpecify a URL prefix for fetching\n\t\t(default: " + constants.url_prefix.https + ")\n\n\t-x/--proxy <url>\n\t\tProxy all downloads through the given proxy\n\nEnvironment Variables:\n\n\thttp_proxy=<full-url> OR https_proxy=<full-url>\n\t\tAs --proxy above, proxy all requests through the\n\t\tgiven proxy.\n\n\tPREFIX\n\t\tAn install prefix\n\nVersion: " + (version()) + "\n");
-      return cb(this.err);
-    };
-
-    return HelpCommand;
-
-  })(BaseCommand);
-
-  KeyJsonCommand = (function(_super) {
-    __extends(KeyJsonCommand, _super);
-
-    function KeyJsonCommand() {
-      return KeyJsonCommand.__super__.constructor.apply(this, arguments);
-    }
-
-    KeyJsonCommand.prototype.run = function(cb) {
-      keyset.self_sig = null;
-      process.stdout.write(hash_json(keyset));
-      return cb(null);
-    };
-
-    return KeyJsonCommand;
-
-  })(BaseCommand);
-
-  Main = (function() {
-    function Main() {
-      this.cmd = null;
-    }
-
-    Main.prototype.parse_args = function(cb) {
-      var err, flags;
-      err = null;
-      flags = ["d", "h", "v", "j", "C", "?", "S", "O", "debug", "key-json", "hash", "help", "version", "skip-cleanup", "no-https", "no-gpg-options"];
-      this.argv = getopt(process.argv.slice(2), {
-        flags: flags
-      });
-      if (this.argv.get("v", "version")) {
-        this.cmd = new VersionCommand();
-      } else if (this.argv.get("h", "?", "help")) {
-        this.cmd = new HelpCommand();
-      } else if (this.argv.get("j", "key-json")) {
-        this.cmd = new KeyJsonCommand(this.argv);
-      } else if (this.argv.get().length > 1) {
-        this.cmd = new HelpCommand(this.argv, new Error("Usage error: only zero or one argument allowed"));
-      } else {
-        this.cmd = new Installer(this.argv);
-      }
-      return cb(err);
-    };
-
-    Main.prototype.run = function(cb) {
-      var esc, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      esc = make_esc(cb, "run");
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/node-installer/src/main.iced",
-            funcname: "Main.run"
-          });
-          _this.setup(esc(__iced_deferrals.defer({
-            lineno: 140
-          })));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          log.debug("+ cmd.run " + (version()));
-          (function(__iced_k) {
-            __iced_deferrals = new iced.Deferrals(__iced_k, {
-              parent: ___iced_passed_deferral,
-              filename: "/Users/max/src/keybase/node-installer/src/main.iced",
-              funcname: "Main.run"
-            });
-            _this.cmd.run(esc(__iced_deferrals.defer({
-              lineno: 142
-            })));
-            __iced_deferrals._fulfill();
-          })(function() {
-            log.debug("- cmd.run");
-            return cb(null);
-          });
-        };
-      })(this));
-    };
-
-    Main.prototype.main = function() {
-      var err, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/node-installer/src/main.iced",
-            funcname: "Main.main"
-          });
-          _this.run(__iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                return err = arguments[0];
-              };
-            })(),
-            lineno: 149
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          if (typeof err !== "undefined" && err !== null) {
-            log.error(err.message);
-            if (err.stderr != null) {
-              log.warn(err.stderr.toString('utf8'));
-            }
-          }
-          return process.exit(typeof err !== "undefined" && err !== null ? -2 : 0);
-        };
-      })(this));
-    };
-
-    Main.prototype.setup_logger = function() {
-      var p;
-      p = log["package"]();
-      if (this.argv.get("d", "debug")) {
-        return p.env().set_level(p.DEBUG);
-      }
-    };
-
-    Main.prototype.setup = function(cb) {
-      var esc, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      esc = make_esc(cb, "setup");
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/node-installer/src/main.iced",
-            funcname: "Main.setup"
-          });
-          _this.parse_args(esc(__iced_deferrals.defer({
-            lineno: 165
-          })));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          _this.setup_logger();
-          return cb(null);
-        };
-      })(this));
-    };
-
-    return Main;
-
-  })();
-
-  exports.run = run = function() {
-    return (new Main).main();
-  };
-
-}).call(this);

+ 0 - 186
node_modules/keybase-installer/lib/npm.js

@@ -1,186 +0,0 @@
-// Generated by IcedCoffeeScript 1.8.0-c
-(function() {
-  var check_cmd, exec, fs, iced, log, npm, os, path, prng, run, strip, __iced_k, __iced_k_noop, _config;
-
-  iced = require('iced-runtime');
-  __iced_k = __iced_k_noop = function() {};
-
-  run = require('iced-spawn').run;
-
-  exec = require('child_process').exec;
-
-  path = require('path');
-
-  fs = require('fs');
-
-  log = require('./log');
-
-  prng = require('crypto').prng;
-
-  strip = require('./util').strip;
-
-  os = require('os');
-
-  _config = null;
-
-  exports.set_config = function(c) {
-    return _config = c;
-  };
-
-  exports.npm = npm = function(_arg, cb) {
-    var args, err, name, out, p, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-    __iced_k = __iced_k_noop;
-    ___iced_passed_deferral = iced.findDeferral(arguments);
-    args = _arg.args;
-    name = _config.get_cmd('npm');
-    p = _config.install_prefix();
-    if ((p != null) && p.length) {
-      args = ["--prefix", p].concat(args);
-    }
-    (function(_this) {
-      return (function(__iced_k) {
-        __iced_deferrals = new iced.Deferrals(__iced_k, {
-          parent: ___iced_passed_deferral,
-          filename: "/Users/max/src/keybase/node-installer/src/npm.iced"
-        });
-        run({
-          args: args,
-          name: name
-        }, __iced_deferrals.defer({
-          assign_fn: (function() {
-            return function() {
-              err = arguments[0];
-              return out = arguments[1];
-            };
-          })(),
-          lineno: 23
-        }));
-        __iced_deferrals._fulfill();
-      });
-    })(this)((function(_this) {
-      return function() {
-        return cb(err, out);
-      };
-    })(this));
-  };
-
-  exports.check = check_cmd = function(cb) {
-    var err, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-    __iced_k = __iced_k_noop;
-    ___iced_passed_deferral = iced.findDeferral(arguments);
-    (function(_this) {
-      return (function(__iced_k) {
-        __iced_deferrals = new iced.Deferrals(__iced_k, {
-          parent: ___iced_passed_deferral,
-          filename: "/Users/max/src/keybase/node-installer/src/npm.iced"
-        });
-        npm({
-          args: ["--version"]
-        }, __iced_deferrals.defer({
-          assign_fn: (function() {
-            return function() {
-              return err = arguments[0];
-            };
-          })(),
-          lineno: 29
-        }));
-        __iced_deferrals._fulfill();
-      });
-    })(this)((function(_this) {
-      return function() {
-        return cb(err);
-      };
-    })(this));
-  };
-
-  exports.test_install = function(cb) {
-    var dirname, err, out, r, test, tmp, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-    __iced_k = __iced_k_noop;
-    ___iced_passed_deferral = iced.findDeferral(arguments);
-    log.debug("+ Installer::test_npm_install");
-    dirname = null;
-    (function(_this) {
-      return (function(__iced_k) {
-        __iced_deferrals = new iced.Deferrals(__iced_k, {
-          parent: ___iced_passed_deferral,
-          filename: "/Users/max/src/keybase/node-installer/src/npm.iced",
-          funcname: "test_install"
-        });
-        _this.npm({
-          args: ["get", "prefix"]
-        }, __iced_deferrals.defer({
-          assign_fn: (function() {
-            return function() {
-              err = arguments[0];
-              return out = arguments[1];
-            };
-          })(),
-          lineno: 38
-        }));
-        __iced_deferrals._fulfill();
-      });
-    })(this)((function(_this) {
-      return function() {
-        (function(__iced_k) {
-          if (typeof err !== "undefined" && err !== null) {
-            return __iced_k(log.error("Failed to get a prefix from npm"));
-          } else {
-            dirname = strip(out.toString('utf8'));
-            log.debug("| Testing install directory: " + dirname);
-            r = prng(10).toString('hex');
-            test = path.resolve(dirname, ".keybase_test_install_" + r);
-            log.debug("| Writing temporary file, to see if install will work: " + test);
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/Users/max/src/keybase/node-installer/src/npm.iced",
-                funcname: "test_install"
-              });
-              fs.writeFile(test, new Buffer([]), {
-                mode: 0x180
-              }, __iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    return err = arguments[0];
-                  };
-                })(),
-                lineno: 47
-              }));
-              __iced_deferrals._fulfill();
-            })(function() {
-              (function(__iced_k) {
-                var _ref;
-                if (typeof err !== "undefined" && err !== null) {
-                  return __iced_k((_ref = err.code) === 'EACCES' || _ref === 'EPERM' ? os.platform() === 'win32' ? err = new Error("Permission denied - Node was installed as Admin.\n" + "\nWindows solution: launch another command window by right-clicking" + "\nand selecting \"Run as Administrator\"," + "\nthen run `keybase-installer`. (Then you may close the window.)\n") : err = new Error("Permission denied installing to " + dirname + ": try running `sudo keybase-installer` or use the `--prefix` option to install locally") : err = new Error("Can't write to directory " + dirname + ": " + err.code));
-                } else {
-                  (function(__iced_k) {
-                    __iced_deferrals = new iced.Deferrals(__iced_k, {
-                      parent: ___iced_passed_deferral,
-                      filename: "/Users/max/src/keybase/node-installer/src/npm.iced",
-                      funcname: "test_install"
-                    });
-                    fs.unlink(test, __iced_deferrals.defer({
-                      assign_fn: (function() {
-                        return function() {
-                          return tmp = arguments[0];
-                        };
-                      })(),
-                      lineno: 60
-                    }));
-                    __iced_deferrals._fulfill();
-                  })(function() {
-                    return __iced_k(typeof tmp !== "undefined" && tmp !== null ? log.warn("Failed to unlink temporary file: " + test) : log.debug("| Unlinking file: " + test));
-                  });
-                }
-              })(__iced_k);
-            });
-          }
-        })(function() {
-          log.debug("- Installer::test_npm_install");
-          return cb(err, dirname);
-        });
-      };
-    })(this));
-  };
-
-}).call(this);

+ 0 - 25
node_modules/keybase-installer/lib/package.js

@@ -1,25 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-f
-(function() {
-  var bin, package_json, version;
-
-  package_json = require('../package.json');
-
-  exports.version = version = function() {
-    return package_json.version;
-  };
-
-  exports.bin = bin = function() {
-    var k, v, _ref;
-    _ref = package_json.bin;
-    for (k in _ref) {
-      v = _ref[k];
-      return k;
-    }
-    return null;
-  };
-
-  exports.fullname = function() {
-    return "" + (bin()) + " v" + (version());
-  };
-
-}).call(this);

+ 0 - 318
node_modules/keybase-installer/lib/request.js

@@ -1,318 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-f
-(function() {
-  var ProgressBar, Request, format_url, http, https, iced, parse, request, request_mikeal, request_progress, single, urlmod, __iced_k, __iced_k_noop;
-
-  iced = require('iced-runtime');
-  __iced_k = __iced_k_noop = function() {};
-
-  https = require('https');
-
-  http = require('http');
-
-  parse = require('url').parse;
-
-  ProgressBar = require('progress');
-
-  urlmod = require('url');
-
-  request = require('request');
-
-  Request = (function() {
-    function Request(_arg) {
-      var progress, uri, url;
-      url = _arg.url, uri = _arg.uri, this.headers = _arg.headers, progress = _arg.progress;
-      url = url || uri;
-      this._res = null;
-      this._data = [];
-      this._err = null;
-      this.uri = this.url = typeof url === 'string' ? parse(url) : url;
-      this._bar = null;
-      this._opts = {
-        progress: progress
-      };
-    }
-
-    Request.prototype.run = function(cb) {
-      this._done_cb = cb;
-      return this._launch();
-    };
-
-    Request.prototype._make_opts = function() {
-      var opts;
-      opts = {
-        host: this.url.hostname,
-        port: this.url.port || (this.url.protocol === 'https:' ? 443 : 80),
-        path: this.url.path,
-        method: 'GET',
-        headers: this.headers
-      };
-      if (this.url.protocol === 'https:') {
-        opts.mod = https;
-        opts.agent = new https.Agent(opts);
-      } else {
-        opts.mod = http;
-      }
-      return opts;
-    };
-
-    Request.prototype._launch = function() {
-      var opts, req;
-      opts = this._make_opts();
-      req = opts.mod.request(opts, (function(_this) {
-        return function(res) {
-          var l, _ref;
-          if ((_this._opts.progress != null) && ((l = (_ref = res.headers) != null ? _ref["content-length"] : void 0) != null) && !(isNaN(l = parseInt(l, 10))) && l > _this._opts.progress) {
-            _this._bar = new ProgressBar("Download " + _this.url.path + " [:bar] :percent :etas (" + l + " bytes total)", {
-              complete: "=",
-              incomplete: ' ',
-              width: 50,
-              total: l
-            });
-          }
-          _this._res = res;
-          res.request = _this;
-          res.on('data', function(d) {
-            var _ref1;
-            _this._data.push(d);
-            return (_ref1 = _this._bar) != null ? _ref1.tick(d.length) : void 0;
-          });
-          return res.on('end', function() {
-            return _this._finish();
-          });
-        };
-      })(this));
-      req.end();
-      return req.on('error', (function(_this) {
-        return function(e) {
-          _this._err = e;
-          return _this._finish();
-        };
-      })(this));
-    };
-
-    Request.prototype._finish = function() {
-      var cb;
-      cb = this._done_cb;
-      this._done_cb = null;
-      return cb(this._err, this._res, Buffer.concat(this._data));
-    };
-
-    return Request;
-
-  })();
-
-  single = function(opts, cb) {
-    return (new Request(opts)).run(cb);
-  };
-
-  format_url = function(u) {
-    if (typeof u === 'string') {
-      return u;
-    } else {
-      return urlmod.format(u);
-    }
-  };
-
-  request_progress = function(opts, cb) {
-    var body, err, found, i, lim, prev_url, res, url, ___iced_passed_deferral, __iced_deferrals, __iced_k, _begin, _end, _positive;
-    __iced_k = __iced_k_noop;
-    ___iced_passed_deferral = iced.findDeferral(arguments);
-    lim = opts.maxRedirects || 10;
-    res = body = null;
-    found = false;
-    if (typeof opts.url === 'string') {
-      opts.url = parse(opts.url);
-    }
-    (function(_this) {
-      return (function(__iced_k) {
-        var _i, _results, _while;
-        i = 0;
-        _begin = 0;
-        _end = lim;
-        _positive = _end > _begin;
-        _results = [];
-        _while = function(__iced_k) {
-          var _break, _continue, _next;
-          _break = function() {
-            return __iced_k(_results);
-          };
-          _continue = function() {
-            return iced.trampoline(function() {
-              if (_positive) {
-                i += 1;
-              } else {
-                i -= 1;
-              }
-              return _while(__iced_k);
-            });
-          };
-          _next = function(__iced_next_arg) {
-            _results.push(__iced_next_arg);
-            return _continue();
-          };
-          if (!!((_positive === true && i >= lim) || (_positive === false && i <= lim))) {
-            return _break();
-          } else {
-
-            prev_url = opts.url;
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/home/max/src/keybase/node-installer/src/request.iced"
-              });
-              single(opts, __iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    err = arguments[0];
-                    res = arguments[1];
-                    return body = arguments[2];
-                  };
-                })(),
-                lineno: 93
-              }));
-              __iced_deferrals._fulfill();
-            })(function() {
-              (function(__iced_k) {
-                if (err != null) {
-                  (function(__iced_k) {
-_break()
-                  })(__iced_k);
-                } else {
-                  (function(__iced_k) {
-                    var _ref;
-                    if (!((_ref = res.statusCode) === 301 || _ref === 302)) {
-                      found = true;
-                      (function(__iced_k) {
-_break()
-                      })(__iced_k);
-                    } else {
-                      (function(__iced_k) {
-                        var _ref1;
-                        if ((url = (_ref1 = res.headers) != null ? _ref1.location : void 0) == null) {
-                          err = new Error("Can't find a location in header for redirect");
-                          (function(__iced_k) {
-_break()
-                          })(__iced_k);
-                        } else {
-                          url = parse(url);
-                          if (!url.host) {
-                            url.host = prev_url.host;
-                            url.hostname = prev_url.hostname;
-                            url.port = prev_url.port;
-                            url.protocol = prev_url.protocol;
-                          }
-                          return __iced_k(opts.url = url);
-                        }
-                      })(__iced_k);
-                    }
-                  })(__iced_k);
-                }
-              })(_next);
-            });
-          }
-        };
-        _while(__iced_k);
-      });
-    })(this)((function(_this) {
-      return function() {
-        err = err != null ? err : !found ? new Error("Too many redirects") : res.statusCode >= 200 && res.statusCode < 300 ? null : new Error("In " + (format_url(opts.url)) + ": HTTP failure, code " + res.statusCode);
-        return cb(err, res, body);
-      };
-    })(this));
-  };
-
-  request_mikeal = function(opts, cb) {
-    var body, err, res, rv, url, url_s, which, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-    __iced_k = __iced_k_noop;
-    ___iced_passed_deferral = iced.findDeferral(arguments);
-    opts.encoding = null;
-    rv = new iced.Rendezvous();
-    url = opts.url || opts.uri;
-    url_s = typeof url === 'object' ? url.format() : url;
-    request(opts, rv.id(true).defer({
-      assign_fn: (function(_this) {
-        return function() {
-          return function() {
-            err = arguments[0];
-            res = arguments[1];
-            return body = arguments[2];
-          };
-        };
-      })(this)(),
-      lineno: 124,
-      context: __iced_deferrals
-    }));
-    process.stderr.write("Downloading...");
-    (function(_this) {
-      return (function(__iced_k) {
-        var _results, _while;
-        _results = [];
-        _while = function(__iced_k) {
-          var _break, _continue, _next;
-          _break = function() {
-            return __iced_k(_results);
-          };
-          _continue = function() {
-            return iced.trampoline(function() {
-              return _while(__iced_k);
-            });
-          };
-          _next = function(__iced_next_arg) {
-            _results.push(__iced_next_arg);
-            return _continue();
-          };
-          if (!true) {
-            return _break();
-          } else {
-            setTimeout(rv.id(false).defer({
-              lineno: 128,
-              context: __iced_deferrals
-            }), 100);
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/home/max/src/keybase/node-installer/src/request.iced"
-              });
-              rv.wait(__iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    return which = arguments[0];
-                  };
-                })(),
-                lineno: 129
-              }));
-              __iced_deferrals._fulfill();
-            })(function() {
-              (function(__iced_k) {
-                if (which) {
-                  (function(__iced_k) {
-_break()
-                  })(__iced_k);
-                } else {
-                  return __iced_k();
-                }
-              })(function() {
-                return _next(process.stderr.write("."));
-              });
-            });
-          }
-        };
-        _while(__iced_k);
-      });
-    })(this)((function(_this) {
-      return function() {
-        process.stderr.write("..done\n");
-        return cb(err, res, body);
-      };
-    })(this));
-  };
-
-  exports.request = function(opts, cb) {
-    if (opts.proxy != null) {
-      return request_mikeal(opts, cb);
-    } else {
-      return request_progress(opts, cb);
-    }
-  };
-
-}).call(this);

+ 0 - 399
node_modules/keybase-installer/lib/software_upgrade.js

@@ -1,399 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-f
-(function() {
-  var FileBundle, SoftwareUpgrade, constants, createHash, fs, iced, log, make_esc, npm, path, __iced_k, __iced_k_noop;
-
-  iced = require('iced-runtime');
-  __iced_k = __iced_k_noop = function() {};
-
-  make_esc = require('iced-error').make_esc;
-
-  npm = require('./npm').npm;
-
-  path = require('path');
-
-  fs = require('fs');
-
-  log = require('./log');
-
-  constants = require('./constants').constants;
-
-  createHash = require('crypto').createHash;
-
-  FileBundle = (function() {
-    function FileBundle(uri, body) {
-      this.uri = uri;
-      this.body = body;
-    }
-
-    FileBundle.prototype.filename = function() {
-      return path.basename(this.uri.path);
-    };
-
-    FileBundle.prototype.fullpath = function() {
-      return this._fullpath;
-    };
-
-    FileBundle.prototype.version = function() {
-      var parts;
-      parts = this.filename().split(/-/);
-      parts = parts[1].split(/\./).slice(0, -1);
-      return parts.join(".");
-    };
-
-    FileBundle.prototype.hash = function() {
-      return createHash('SHA512').update(this.body).digest('hex');
-    };
-
-    FileBundle.prototype.write = function(dir, encoding, cb) {
-      var err, mode, p, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      p = this._fullpath = path.join(dir, this.filename());
-      mode = process.platform === 'win32' ? 0x180 : 0x100;
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/software_upgrade.iced",
-            funcname: "FileBundle.write"
-          });
-          fs.writeFile(p, _this.body, {
-            mode: mode,
-            encoding: encoding
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                return err = arguments[0];
-              };
-            })(),
-            lineno: 33
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err);
-        };
-      })(this));
-    };
-
-    return FileBundle;
-
-  })();
-
-  exports.SoftwareUpgrade = SoftwareUpgrade = (function() {
-    function SoftwareUpgrade(config) {
-      this.config = config;
-    }
-
-    SoftwareUpgrade.prototype.fetch = function(file, cb) {
-      var body, err, req, ret, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/software_upgrade.iced",
-            funcname: "SoftwareUpgrade.fetch"
-          });
-          _this.config.request(file, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                req = arguments[1];
-                return body = arguments[2];
-              };
-            })(),
-            lineno: 47
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          if (typeof err === "undefined" || err === null) {
-            ret = new FileBundle(req.request.uri, body);
-          }
-          return cb(err, ret);
-        };
-      })(this));
-    };
-
-    SoftwareUpgrade.prototype.fetch_package = function(cb) {
-      var err, file, ___iced_passed_deferral, __iced_deferrals, __iced_k, _ref;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      file = ["pkg", ((_ref = this.config.argv.get()) != null ? _ref[0] : void 0) || constants.links.stable].join('/');
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/software_upgrade.iced",
-            funcname: "SoftwareUpgrade.fetch_package"
-          });
-          _this.fetch(file, __iced_deferrals.defer({
-            assign_fn: (function(__slot_1) {
-              return function() {
-                err = arguments[0];
-                return __slot_1["package"] = arguments[1];
-              };
-            })(_this),
-            lineno: 55
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err);
-        };
-      })(this));
-    };
-
-    SoftwareUpgrade.prototype.fetch_signature = function(cb) {
-      var err, file, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      file = "/sig/files/" + (this.config.key_version()) + "/" + (this["package"].filename()) + ".asc";
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/software_upgrade.iced",
-            funcname: "SoftwareUpgrade.fetch_signature"
-          });
-          _this.fetch(file, __iced_deferrals.defer({
-            assign_fn: (function(__slot_1) {
-              return function() {
-                err = arguments[0];
-                return __slot_1.signature = arguments[1];
-              };
-            })(_this),
-            lineno: 62
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err);
-        };
-      })(this));
-    };
-
-    SoftwareUpgrade.prototype.write_files = function(cb) {
-      var esc, tmpdir, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      esc = make_esc(cb, "SoftwareUpgrade::write_files");
-      log.debug("+ SoftwareUpgrade::write_files");
-      tmpdir = this.config.get_tmpdir();
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/software_upgrade.iced",
-            funcname: "SoftwareUpgrade.write_files"
-          });
-          _this["package"].write(tmpdir, 'binary', esc(__iced_deferrals.defer({
-            lineno: 71
-          })));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            __iced_deferrals = new iced.Deferrals(__iced_k, {
-              parent: ___iced_passed_deferral,
-              filename: "/home/max/src/keybase/node-installer/src/software_upgrade.iced",
-              funcname: "SoftwareUpgrade.write_files"
-            });
-            _this.signature.write(tmpdir, 'utf8', esc(__iced_deferrals.defer({
-              lineno: 72
-            })));
-            __iced_deferrals._fulfill();
-          })(function() {
-            log.debug("- SoftwareUpgrade::write_files");
-            return cb(null);
-          });
-        };
-      })(this));
-    };
-
-    SoftwareUpgrade.prototype.verify_signature = function(cb) {
-      var args, err, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      log.debug("+ SoftwareUpgrade::verify_signature");
-      args = {
-        which: 'code',
-        sig: this.signature.fullpath(),
-        file: this["package"].fullpath()
-      };
-      log.debug("| Verify signature w/ " + (JSON.stringify(args)));
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/software_upgrade.iced",
-            funcname: "SoftwareUpgrade.verify_signature"
-          });
-          _this.config.oneshot_verify(args, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                return err = arguments[0];
-              };
-            })(),
-            lineno: 85
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          log.info("verified signature of " + (_this["package"].filename()) + " against " + (_this.signature.filename()));
-          log.debug("- SoftwareUpgrade::verify_signature");
-          return cb(err);
-        };
-      })(this));
-    };
-
-    SoftwareUpgrade.prototype.verify_hash = function(cb) {
-      var err, h1, h2, v;
-      h1 = this["package"].hash();
-      h2 = this.config.index_lookup_hash((v = this["package"].version()));
-      log.debug("| Verify hash on version " + v + ": " + h1 + " v " + h2);
-      err = null;
-      if (h1 !== h2) {
-        err = new Error("Hash mismatch on " + (this["package"].filename()) + ": " + h1 + " != " + h2);
-      }
-      return cb(err);
-    };
-
-    SoftwareUpgrade.prototype.install_package = function(cb) {
-      var args, err, p, x, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      log.debug("+ SoftwareUpgrade::install_package");
-      p = this["package"].fullpath();
-      log.debug("| Full name for install: " + p);
-      log.info("Running npm install " + (this["package"].filename()) + ": this may take a minute, please be patient");
-      if ((x = this.config.install_prefix()) != null) {
-        log.warn("(Using non-standard install prefix: " + x + ")");
-      }
-      args = ["install", "-g", p];
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/software_upgrade.iced",
-            funcname: "SoftwareUpgrade.install_package"
-          });
-          npm({
-            args: args
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                return err = arguments[0];
-              };
-            })(),
-            lineno: 110
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          log.debug("- SoftwareUpgrade::install_package");
-          return cb(err);
-        };
-      })(this));
-    };
-
-    SoftwareUpgrade.prototype.run = function(cb) {
-      var esc, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      esc = make_esc(cb, "SoftwareUpgrade::run");
-      log.debug("+ SoftwareUpgrade::run");
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/home/max/src/keybase/node-installer/src/software_upgrade.iced",
-            funcname: "SoftwareUpgrade.run"
-          });
-          _this.fetch_package(esc(__iced_deferrals.defer({
-            lineno: 119
-          })));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            __iced_deferrals = new iced.Deferrals(__iced_k, {
-              parent: ___iced_passed_deferral,
-              filename: "/home/max/src/keybase/node-installer/src/software_upgrade.iced",
-              funcname: "SoftwareUpgrade.run"
-            });
-            _this.fetch_signature(esc(__iced_deferrals.defer({
-              lineno: 120
-            })));
-            __iced_deferrals._fulfill();
-          })(function() {
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/home/max/src/keybase/node-installer/src/software_upgrade.iced",
-                funcname: "SoftwareUpgrade.run"
-              });
-              _this.write_files(esc(__iced_deferrals.defer({
-                lineno: 121
-              })));
-              __iced_deferrals._fulfill();
-            })(function() {
-              (function(__iced_k) {
-                __iced_deferrals = new iced.Deferrals(__iced_k, {
-                  parent: ___iced_passed_deferral,
-                  filename: "/home/max/src/keybase/node-installer/src/software_upgrade.iced",
-                  funcname: "SoftwareUpgrade.run"
-                });
-                _this.verify_hash(esc(__iced_deferrals.defer({
-                  lineno: 122
-                })));
-                __iced_deferrals._fulfill();
-              })(function() {
-                (function(__iced_k) {
-                  __iced_deferrals = new iced.Deferrals(__iced_k, {
-                    parent: ___iced_passed_deferral,
-                    filename: "/home/max/src/keybase/node-installer/src/software_upgrade.iced",
-                    funcname: "SoftwareUpgrade.run"
-                  });
-                  _this.verify_signature(esc(__iced_deferrals.defer({
-                    lineno: 123
-                  })));
-                  __iced_deferrals._fulfill();
-                })(function() {
-                  (function(__iced_k) {
-                    __iced_deferrals = new iced.Deferrals(__iced_k, {
-                      parent: ___iced_passed_deferral,
-                      filename: "/home/max/src/keybase/node-installer/src/software_upgrade.iced",
-                      funcname: "SoftwareUpgrade.run"
-                    });
-                    _this.install_package(esc(__iced_deferrals.defer({
-                      lineno: 124
-                    })));
-                    __iced_deferrals._fulfill();
-                  })(function() {
-                    log.debug("- SoftwareUpgrade::run");
-                    return cb(null);
-                  });
-                });
-              });
-            });
-          });
-        };
-      })(this));
-    };
-
-    return SoftwareUpgrade;
-
-  })();
-
-}).call(this);

+ 0 - 11
node_modules/keybase-installer/lib/top.js

@@ -1,11 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-f
-(function() {
-  exports.KeySetup = require('./key_setup').KeySetup;
-
-  exports.Config = require('./config').Config;
-
-  exports.constants = require('./constants').constants;
-
-  exports.util = require('./util');
-
-}).call(this);

+ 0 - 24
node_modules/keybase-installer/lib/util.js

@@ -1,24 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-f
-(function() {
-  var constants, createHash, json_stringify_sorted, strip;
-
-  json_stringify_sorted = require('iced-utils').util.json_stringify_sorted;
-
-  createHash = require('crypto').createHash;
-
-  constants = require('./constants').constants;
-
-  exports.strip = strip = function(x) {
-    var m;
-    if ((m = x.match(/^(\s*)(.*?)(\s*)$/))) {
-      return m[2];
-    } else {
-      return x;
-    }
-  };
-
-  exports.hash_json = function(x) {
-    return createHash('SHA512').update(strip(json_stringify_sorted(x))).digest('hex');
-  };
-
-}).call(this);

+ 0 - 1
node_modules/keybase-installer/node_modules/.bin/semver

@@ -1 +0,0 @@
-../semver/bin/semver

+ 0 - 28
node_modules/keybase-installer/node_modules/badnode/.npmignore

@@ -1,28 +0,0 @@
-# Logs
-logs
-*.log
-
-# Runtime data
-pids
-*.pid
-*.seed
-
-# Directory for instrumented libs generated by jscoverage/JSCover
-lib-cov
-
-# Coverage directory used by tools like istanbul
-coverage
-
-# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
-.grunt
-
-# Compiled binary addons (http://nodejs.org/api/addons.html)
-build/Release
-
-# Dependency directory
-# Commenting this out is preferred by some people, see
-# https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git-
-node_modules
-
-# Users Environment Variables
-.lock-wscript

+ 0 - 28
node_modules/keybase-installer/node_modules/badnode/LICENSE

@@ -1,28 +0,0 @@
-Copyright (c) 2014, Keybase
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-
-* Redistributions in binary form must reproduce the above copyright notice,
-  this list of conditions and the following disclaimer in the documentation
-  and/or other materials provided with the distribution.
-
-* Neither the name of badnode nor the names of its
-  contributors may be used to endorse or promote products derived from
-  this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
-FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-

+ 0 - 20
node_modules/keybase-installer/node_modules/badnode/Makefile

@@ -1,20 +0,0 @@
-default: build
-all: build
-
-ICED=node_modules/.bin/iced
-
-index.js: index.iced
-	$(ICED) -I browserify -c -o `dirname $@` $<
-
-clean:
-	rm -rf index.js
-
-setup:
-	npm install -d
-
-test:
-	$(ICED) test/run.iced
-
-build: index.js
-
-.PHONY: clean setup test

+ 0 - 4
node_modules/keybase-installer/node_modules/badnode/README.md

@@ -1,4 +0,0 @@
-badnode
-=======
-
-Report if the node version we're using is bad.

+ 0 - 77
node_modules/keybase-installer/node_modules/badnode/SIGNED.md

@@ -1,77 +0,0 @@
-##### Signed by https://keybase.io/max
-```
------BEGIN PGP SIGNATURE-----
-Version: GnuPG/MacGPG2 v2.0.22 (Darwin)
-Comment: GPGTools - https://gpgtools.org
-
-iQEcBAABCgAGBQJUIXSnAAoJEJgKPw0B/gTfXlIIAKS5UGsYit3R4TOsCOkUUEoj
-9yXGGPWafZnmtLFXkvViT/kincpjf873B+Q/Iq37jEXadxhJcv8wS1GqhOUdkKbt
-SODVnvSjwcFbq1xXd2779rzw2Alg63pVMsEN0UXRsFYAWsBHk17ra/Je2tygQsr/
-cHRux/nyz9vLXxUNUCnHgKRr6DDV9g9s4V9oDdXg/qOFH0jaK5fdbPSrPKbLuH7e
-oO/iKHBNCWLCdkh7qxQVYfHoVrqbdhu4m3YlxNsJrJdOkkvGS3pAA0B34EPfl2zb
-KHjXjDa5rnnPCu83m2fqAEBUipPtqAoEnYxWPzMIOAZXKyNHVyuNmzje30WcuMo=
-=M+1n
------END PGP SIGNATURE-----
-
-```
-
-<!-- END SIGNATURES -->
-
-### Begin signed statement 
-
-#### Expect
-
-```
-size  exec  file                  contents                                                        
-            ./                                                                                    
-587           .gitignore          abcbd5929ba2d059647bd4c6c99a74df2676bfbaaf44535e4713b53fbd14e6a8
-1473          LICENSE             d0560411ddd7937e8b87d85c290c0445bd9c390aa485eeac7f838e56e7598d95
-244           Makefile            7d397680c94d1b5ec2436610beb8dd4f27586306210920e31981449157824fd1
-64            README.md           076d41de237604bcc439602fc664111cf6db55550759e2d7af4b00388fbc8143
-924           index.iced          ad88b40b8519413ab132caa403327740829216b3eb29f59ddb94662c90ae791c
-1627          index.js            9ea58e70c4670f9d9c0684c95359bc43101e2550ccaf31b69188f5ab3d147f12
-658           package.json        a9fdbd59a98b4c0f7381d450ef4b97281d2e88b51a54eedba2c634a7ae6f6e45
-              test/                                                                               
-                files/                                                                            
-538               0_badnode.iced  0c437564f590b6783ab7fecf676985f3297d751804e8fe24c89d91f9db4ec7bb
-183             run.iced          822568debeae702ca4d1f3026896d78b2d426e960d77cb3c374da059ef09f9fd
-```
-
-#### Ignore
-
-```
-/SIGNED.md
-```
-
-#### Presets
-
-```
-git      # ignore .git and anything as described by .gitignore files
-dropbox  # ignore .dropbox-cache and other Dropbox-related files    
-kb       # ignore anything as described by .kbignore files          
-```
-
-<!-- summarize version = 0.0.9 -->
-
-### End signed statement
-
-<hr>
-
-#### Notes
-
-With keybase you can sign any directory's contents, whether it's a git repo,
-source code distribution, or a personal documents folder. It aims to replace the drudgery of:
-
-  1. comparing a zipped file to a detached statement
-  2. downloading a public key
-  3. confirming it is in fact the author's by reviewing public statements they've made, using it
-
-All in one simple command:
-
-```bash
-keybase dir verify
-```
-
-There are lots of options, including assertions for automating your checks.
-
-For more info, check out https://keybase.io/docs/command_line/code_signing

+ 0 - 28
node_modules/keybase-installer/node_modules/badnode/index.iced

@@ -1,28 +0,0 @@
-
-semver = require 'semver'
-
-known_bad_versions = [ "0.10.31" ]
-old_versions = "<0.10.20"
-good_versions = "0.10.20 - 0.10.30 || >=0.10.32"
-suggest_versions = [ "0.10.32", "0.11.13" ]
-suggest_version = "0.10.32"
-
-is_good_version = (v) ->
-  semver.satisfies(v, good_versions)
-
-check_node = (v) ->
-  v or= process.version
-  v = semver.clean v
-  problem = if is_good_version(v) then null
-  else if v in known_bad_versions then problem = "known to crash"
-  else if semver.satisfies(v, old_versions) then msg = "out of date"
-  else if not is_good_version(v) then problem = "not recommended"
-
-  if not problem? then null
-  else new Error "Your version of node (#{v}) is #{problem}; please upgrade to #{suggest_version} or better"
-
-check_node_async = (v, cb) ->
-  cb check_node v
-
-module.exports = { known_bad_versions, old_versions, good_versions, suggest_version,
-  suggest_versions, check_node, check_node_async, is_good_version}

+ 0 - 49
node_modules/keybase-installer/node_modules/badnode/index.js

@@ -1,49 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-g
-(function() {
-  var check_node, check_node_async, good_versions, is_good_version, known_bad_versions, old_versions, semver, suggest_version, suggest_versions,
-    __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; };
-
-  semver = require('semver');
-
-  known_bad_versions = ["0.10.31"];
-
-  old_versions = "<0.10.20";
-
-  good_versions = "0.10.20 - 0.10.30 || >=0.10.32";
-
-  suggest_versions = ["0.10.32", "0.11.13"];
-
-  suggest_version = "0.10.32";
-
-  is_good_version = function(v) {
-    return semver.satisfies(v, good_versions);
-  };
-
-  check_node = function(v) {
-    var msg, problem;
-    v || (v = process.version);
-    v = semver.clean(v);
-    problem = is_good_version(v) ? null : __indexOf.call(known_bad_versions, v) >= 0 ? problem = "known to crash" : semver.satisfies(v, old_versions) ? msg = "out of date" : !is_good_version(v) ? problem = "not recommended" : void 0;
-    if (problem == null) {
-      return null;
-    } else {
-      return new Error("Your version of node (" + v + ") is " + problem + "; please upgrade to " + suggest_version + " or better");
-    }
-  };
-
-  check_node_async = function(v, cb) {
-    return cb(check_node(v));
-  };
-
-  module.exports = {
-    known_bad_versions: known_bad_versions,
-    old_versions: old_versions,
-    good_versions: good_versions,
-    suggest_version: suggest_version,
-    suggest_versions: suggest_versions,
-    check_node: check_node,
-    check_node_async: check_node_async,
-    is_good_version: is_good_version
-  };
-
-}).call(this);

+ 0 - 63
node_modules/keybase-installer/node_modules/badnode/package.json

@@ -1,63 +0,0 @@
-{
-  "_from": "badnode@>=1.0.1 <2.0.0",
-  "_id": "badnode@1.0.1",
-  "_location": "/keybase-installer/badnode",
-  "_npmUser": {
-    "name": "maxtaco",
-    "email": "themax@gmail.com"
-  },
-  "_npmVersion": "1.4.23",
-  "_phantomChildren": {},
-  "_requiredBy": [
-    "/keybase-installer"
-  ],
-  "_resolved": "https://registry.npmjs.org/badnode/-/badnode-1.0.1.tgz",
-  "_shasum": "3f14123363badf4bed1acc8ed839ee99b27ad7e0",
-  "_shrinkwrap": null,
-  "author": {
-    "name": "Maxwell Krohn"
-  },
-  "bugs": {
-    "url": "https://github.com/keybase/badnode/issues"
-  },
-  "dependencies": {
-    "semver": "^4.0.0"
-  },
-  "description": "Tell if a version of Node is wonky or not",
-  "devDependencies": {
-    "iced-coffee-script": "^1.7.1-g",
-    "iced-test": "0.0.19",
-    "minimist": "^1.1.0"
-  },
-  "directories": {},
-  "dist": {
-    "shasum": "3f14123363badf4bed1acc8ed839ee99b27ad7e0",
-    "tarball": "http://registry.npmjs.org/badnode/-/badnode-1.0.1.tgz"
-  },
-  "gitHead": "022dfb71ceeb729fab6793bceb1412b5a51f509f",
-  "homepage": "https://github.com/keybase/badnode",
-  "keywords": [
-    "node",
-    "version"
-  ],
-  "license": "BSD-3-Clause",
-  "main": "index.js",
-  "maintainers": [
-    {
-      "name": "maxtaco",
-      "email": "themax@gmail.com"
-    }
-  ],
-  "name": "badnode",
-  "optionalDependencies": {},
-  "readme": "badnode\n=======\n\nReport if the node version we're using is bad.\n",
-  "readmeFilename": "README.md",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/keybase/badnode.git"
-  },
-  "scripts": {
-    "test": "make test"
-  },
-  "version": "1.0.1"
-}

+ 0 - 22
node_modules/keybase-installer/node_modules/badnode/test/files/0_badnode.iced

@@ -1,22 +0,0 @@
-badnode = require '../..'
-
-test = (v, err) ->
-  (T, cb) ->
-    e2 = badnode.check_node v
-    if not err? then T.no_error e2
-    else if err?
-      T.assert e2?, "got an error bad"
-      T.assert e2.message.indexOf(err) >= 0, "error message was found"
-    cb()
-
-d =
-  "0.6.44"  : "out of date"
-  "0.8.44"  : "out of date"
-  "0.10.19" : "out of date"
-  "0.10.31" : "known to crash"
-  "0.10.32" : null
-  "0.11.1"  : null
-
-for k,v of d
-  for prefix in ["", "v"] 
-    ( (k2,v2,p2) -> exports["test-#{p2}#{k2}"] = test (p2+k2), v2)(k,v,prefix)

+ 0 - 3
node_modules/keybase-installer/node_modules/badnode/test/run.iced

@@ -1,3 +0,0 @@
-argv = require('minimist')(process.argv[2...])
-wl = if argv._.length > 0 then argv._ else null
-require('iced-test').run { mainfile : __filename, whitelist : wl, files_dir : "files" }

+ 0 - 22
node_modules/keybase-installer/node_modules/colors/MIT-LICENSE.txt

@@ -1,22 +0,0 @@
-Copyright (c) 2010 
-
-Marak Squires
-Alexis Sellier (cloudhead)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.

+ 0 - 77
node_modules/keybase-installer/node_modules/colors/ReadMe.md

@@ -1,77 +0,0 @@
-# colors.js - get color and style in your node.js console ( and browser ) like what
-
-<img src="http://i.imgur.com/goJdO.png" border = "0"/>
-
-
-## Installation
-
-    npm install colors
-
-## colors and styles!
-
-- bold
-- italic
-- underline
-- inverse
-- yellow
-- cyan
-- white
-- magenta
-- green
-- red
-- grey
-- blue
-- rainbow
-- zebra
-- random
-
-## Usage
-
-``` js
-var colors = require('./colors');
-
-console.log('hello'.green); // outputs green text
-console.log('i like cake and pies'.underline.red) // outputs red underlined text
-console.log('inverse the color'.inverse); // inverses the color
-console.log('OMG Rainbows!'.rainbow); // rainbow (ignores spaces)
-```
-
-# Creating Custom themes
-
-```js
-
-var colors = require('colors');
-
-colors.setTheme({
-  silly: 'rainbow',
-  input: 'grey',
-  verbose: 'cyan',
-  prompt: 'grey',
-  info: 'green',
-  data: 'grey',
-  help: 'cyan',
-  warn: 'yellow',
-  debug: 'blue',
-  error: 'red'
-});
-
-// outputs red text
-console.log("this is an error".error);
-
-// outputs yellow text
-console.log("this is a warning".warn);
-```
-
-
-### Contributors 
-
-Marak (Marak Squires)
-Alexis Sellier (cloudhead)
-mmalecki (Maciej Małecki)
-nicoreed (Nico Reed)
-morganrallen (Morgan Allen)
-JustinCampbell (Justin Campbell)
-ded (Dustin Diaz)
-
-
-####  , Marak Squires , Justin Campbell, Dustin Diaz (@ded)

+ 0 - 342
node_modules/keybase-installer/node_modules/colors/colors.js

@@ -1,342 +0,0 @@
-/*
-colors.js
-
-Copyright (c) 2010
-
-Marak Squires
-Alexis Sellier (cloudhead)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
-
-*/
-
-var isHeadless = false;
-
-if (typeof module !== 'undefined') {
-  isHeadless = true;
-}
-
-if (!isHeadless) {
-  var exports = {};
-  var module = {};
-  var colors = exports;
-  exports.mode = "browser";
-} else {
-  exports.mode = "console";
-}
-
-//
-// Prototypes the string object to have additional method calls that add terminal colors
-//
-var addProperty = function (color, func) {
-  exports[color] = function (str) {
-    return func.apply(str);
-  };
-  String.prototype.__defineGetter__(color, func);
-};
-
-function stylize(str, style) {
-
-  var styles;
-
-  if (exports.mode === 'console') {
-    styles = {
-      //styles
-      'bold'      : ['\x1B[1m',  '\x1B[22m'],
-      'italic'    : ['\x1B[3m',  '\x1B[23m'],
-      'underline' : ['\x1B[4m',  '\x1B[24m'],
-      'inverse'   : ['\x1B[7m',  '\x1B[27m'],
-      'strikethrough' : ['\x1B[9m',  '\x1B[29m'],
-      //text colors
-      //grayscale
-      'white'     : ['\x1B[37m', '\x1B[39m'],
-      'grey'      : ['\x1B[90m', '\x1B[39m'],
-      'black'     : ['\x1B[30m', '\x1B[39m'],
-      //colors
-      'blue'      : ['\x1B[34m', '\x1B[39m'],
-      'cyan'      : ['\x1B[36m', '\x1B[39m'],
-      'green'     : ['\x1B[32m', '\x1B[39m'],
-      'magenta'   : ['\x1B[35m', '\x1B[39m'],
-      'red'       : ['\x1B[31m', '\x1B[39m'],
-      'yellow'    : ['\x1B[33m', '\x1B[39m'],
-      //background colors
-      //grayscale
-      'whiteBG'     : ['\x1B[47m', '\x1B[49m'],
-      'greyBG'      : ['\x1B[49;5;8m', '\x1B[49m'],
-      'blackBG'     : ['\x1B[40m', '\x1B[49m'],
-      //colors
-      'blueBG'      : ['\x1B[44m', '\x1B[49m'],
-      'cyanBG'      : ['\x1B[46m', '\x1B[49m'],
-      'greenBG'     : ['\x1B[42m', '\x1B[49m'],
-      'magentaBG'   : ['\x1B[45m', '\x1B[49m'],
-      'redBG'       : ['\x1B[41m', '\x1B[49m'],
-      'yellowBG'    : ['\x1B[43m', '\x1B[49m']
-    };
-  } else if (exports.mode === 'browser') {
-    styles = {
-      //styles
-      'bold'      : ['<b>',  '</b>'],
-      'italic'    : ['<i>',  '</i>'],
-      'underline' : ['<u>',  '</u>'],
-      'inverse'   : ['<span style="background-color:black;color:white;">',  '</span>'],
-      'strikethrough' : ['<del>',  '</del>'],
-      //text colors
-      //grayscale
-      'white'     : ['<span style="color:white;">',   '</span>'],
-      'grey'      : ['<span style="color:gray;">',    '</span>'],
-      'black'     : ['<span style="color:black;">',   '</span>'],
-      //colors
-      'blue'      : ['<span style="color:blue;">',    '</span>'],
-      'cyan'      : ['<span style="color:cyan;">',    '</span>'],
-      'green'     : ['<span style="color:green;">',   '</span>'],
-      'magenta'   : ['<span style="color:magenta;">', '</span>'],
-      'red'       : ['<span style="color:red;">',     '</span>'],
-      'yellow'    : ['<span style="color:yellow;">',  '</span>'],
-      //background colors
-      //grayscale
-      'whiteBG'     : ['<span style="background-color:white;">',   '</span>'],
-      'greyBG'      : ['<span style="background-color:gray;">',    '</span>'],
-      'blackBG'     : ['<span style="background-color:black;">',   '</span>'],
-      //colors
-      'blueBG'      : ['<span style="background-color:blue;">',    '</span>'],
-      'cyanBG'      : ['<span style="background-color:cyan;">',    '</span>'],
-      'greenBG'     : ['<span style="background-color:green;">',   '</span>'],
-      'magentaBG'   : ['<span style="background-color:magenta;">', '</span>'],
-      'redBG'       : ['<span style="background-color:red;">',     '</span>'],
-      'yellowBG'    : ['<span style="background-color:yellow;">',  '</span>']
-    };
-  } else if (exports.mode === 'none') {
-    return str + '';
-  } else {
-    console.log('unsupported mode, try "browser", "console" or "none"');
-  }
-  return styles[style][0] + str + styles[style][1];
-}
-
-function applyTheme(theme) {
-
-  //
-  // Remark: This is a list of methods that exist
-  // on String that you should not overwrite.
-  //
-  var stringPrototypeBlacklist = [
-    '__defineGetter__', '__defineSetter__', '__lookupGetter__', '__lookupSetter__', 'charAt', 'constructor',
-    'hasOwnProperty', 'isPrototypeOf', 'propertyIsEnumerable', 'toLocaleString', 'toString', 'valueOf', 'charCodeAt',
-    'indexOf', 'lastIndexof', 'length', 'localeCompare', 'match', 'replace', 'search', 'slice', 'split', 'substring',
-    'toLocaleLowerCase', 'toLocaleUpperCase', 'toLowerCase', 'toUpperCase', 'trim', 'trimLeft', 'trimRight'
-  ];
-
-  Object.keys(theme).forEach(function (prop) {
-    if (stringPrototypeBlacklist.indexOf(prop) !== -1) {
-      console.log('warn: '.red + ('String.prototype' + prop).magenta + ' is probably something you don\'t want to override. Ignoring style name');
-    }
-    else {
-      if (typeof(theme[prop]) === 'string') {
-        addProperty(prop, function () {
-          return exports[theme[prop]](this);
-        });
-      }
-      else {
-        addProperty(prop, function () {
-          var ret = this;
-          for (var t = 0; t < theme[prop].length; t++) {
-            ret = exports[theme[prop][t]](ret);
-          }
-          return ret;
-        });
-      }
-    }
-  });
-}
-
-
-//
-// Iterate through all default styles and colors
-//
-var x = ['bold', 'underline', 'strikethrough', 'italic', 'inverse', 'grey', 'black', 'yellow', 'red', 'green', 'blue', 'white', 'cyan', 'magenta', 'greyBG', 'blackBG', 'yellowBG', 'redBG', 'greenBG', 'blueBG', 'whiteBG', 'cyanBG', 'magentaBG'];
-x.forEach(function (style) {
-
-  // __defineGetter__ at the least works in more browsers
-  // http://robertnyman.com/javascript/javascript-getters-setters.html
-  // Object.defineProperty only works in Chrome
-  addProperty(style, function () {
-    return stylize(this, style);
-  });
-});
-
-function sequencer(map) {
-  return function () {
-    if (!isHeadless) {
-      return this.replace(/( )/, '$1');
-    }
-    var exploded = this.split(""), i = 0;
-    exploded = exploded.map(map);
-    return exploded.join("");
-  };
-}
-
-var rainbowMap = (function () {
-  var rainbowColors = ['red', 'yellow', 'green', 'blue', 'magenta']; //RoY G BiV
-  return function (letter, i, exploded) {
-    if (letter === " ") {
-      return letter;
-    } else {
-      return stylize(letter, rainbowColors[i++ % rainbowColors.length]);
-    }
-  };
-})();
-
-exports.themes = {};
-
-exports.addSequencer = function (name, map) {
-  addProperty(name, sequencer(map));
-};
-
-exports.addSequencer('rainbow', rainbowMap);
-exports.addSequencer('zebra', function (letter, i, exploded) {
-  return i % 2 === 0 ? letter : letter.inverse;
-});
-
-exports.setTheme = function (theme) {
-  if (typeof theme === 'string') {
-    try {
-      exports.themes[theme] = require(theme);
-      applyTheme(exports.themes[theme]);
-      return exports.themes[theme];
-    } catch (err) {
-      console.log(err);
-      return err;
-    }
-  } else {
-    applyTheme(theme);
-  }
-};
-
-
-addProperty('stripColors', function () {
-  return ("" + this).replace(/\x1B\[\d+m/g, '');
-});
-
-// please no
-function zalgo(text, options) {
-  var soul = {
-    "up" : [
-      '̍', '̎', '̄', '̅',
-      '̿', '̑', '̆', '̐',
-      '͒', '͗', '͑', '̇',
-      '̈', '̊', '͂', '̓',
-      '̈', '͊', '͋', '͌',
-      '̃', '̂', '̌', '͐',
-      '̀', '́', '̋', '̏',
-      '̒', '̓', '̔', '̽',
-      '̉', 'ͣ', 'ͤ', 'ͥ',
-      'ͦ', 'ͧ', 'ͨ', 'ͩ',
-      'ͪ', 'ͫ', 'ͬ', 'ͭ',
-      'ͮ', 'ͯ', '̾', '͛',
-      '͆', '̚'
-    ],
-    "down" : [
-      '̖', '̗', '̘', '̙',
-      '̜', '̝', '̞', '̟',
-      '̠', '̤', '̥', '̦',
-      '̩', '̪', '̫', '̬',
-      '̭', '̮', '̯', '̰',
-      '̱', '̲', '̳', '̹',
-      '̺', '̻', '̼', 'ͅ',
-      '͇', '͈', '͉', '͍',
-      '͎', '͓', '͔', '͕',
-      '͖', '͙', '͚', '̣'
-    ],
-    "mid" : [
-      '̕', '̛', '̀', '́',
-      '͘', '̡', '̢', '̧',
-      '̨', '̴', '̵', '̶',
-      '͜', '͝', '͞',
-      '͟', '͠', '͢', '̸',
-      '̷', '͡', ' ҉'
-    ]
-  },
-  all = [].concat(soul.up, soul.down, soul.mid),
-  zalgo = {};
-
-  function randomNumber(range) {
-    var r = Math.floor(Math.random() * range);
-    return r;
-  }
-
-  function is_char(character) {
-    var bool = false;
-    all.filter(function (i) {
-      bool = (i === character);
-    });
-    return bool;
-  }
-
-  function heComes(text, options) {
-    var result = '', counts, l;
-    options = options || {};
-    options["up"] = options["up"] || true;
-    options["mid"] = options["mid"] || true;
-    options["down"] = options["down"] || true;
-    options["size"] = options["size"] || "maxi";
-    text = text.split('');
-    for (l in text) {
-      if (is_char(l)) {
-        continue;
-      }
-      result = result + text[l];
-      counts = {"up" : 0, "down" : 0, "mid" : 0};
-      switch (options.size) {
-      case 'mini':
-        counts.up = randomNumber(8);
-        counts.min = randomNumber(2);
-        counts.down = randomNumber(8);
-        break;
-      case 'maxi':
-        counts.up = randomNumber(16) + 3;
-        counts.min = randomNumber(4) + 1;
-        counts.down = randomNumber(64) + 3;
-        break;
-      default:
-        counts.up = randomNumber(8) + 1;
-        counts.mid = randomNumber(6) / 2;
-        counts.down = randomNumber(8) + 1;
-        break;
-      }
-
-      var arr = ["up", "mid", "down"];
-      for (var d in arr) {
-        var index = arr[d];
-        for (var i = 0 ; i <= counts[index]; i++) {
-          if (options[index]) {
-            result = result + soul[index][randomNumber(soul[index].length)];
-          }
-        }
-      }
-    }
-    return result;
-  }
-  return heComes(text);
-}
-
-
-// don't summon zalgo
-addProperty('zalgo', function () {
-  return zalgo(this);
-});

+ 0 - 76
node_modules/keybase-installer/node_modules/colors/example.html

@@ -1,76 +0,0 @@
-<!DOCTYPE HTML>
-<html lang="en-us">
-  <head>
-    <meta http-equiv="Content-type" content="text/html; charset=utf-8">
-    <title>Colors Example</title>
-    <script src="colors.js"></script>
-  </head>
-  <body>
-    <script>
-
-    var test = colors.red("hopefully colorless output");
-
-    document.write('Rainbows are fun!'.rainbow + '<br/>');
-    document.write('So '.italic + 'are'.underline + ' styles! '.bold + 'inverse'.inverse); // styles not widely supported
-    document.write('Chains are also cool.'.bold.italic.underline.red); // styles not widely supported
-    //document.write('zalgo time!'.zalgo);
-    document.write(test.stripColors);
-    document.write("a".grey + " b".black);
-
-    document.write("Zebras are so fun!".zebra);
-
-    document.write(colors.rainbow('Rainbows are fun!'));
-    document.write("This is " + "not".strikethrough + " fun.");
-
-    document.write(colors.italic('So ') + colors.underline('are') + colors.bold(' styles! ') + colors.inverse('inverse')); // styles not widely supported
-    document.write(colors.bold(colors.italic(colors.underline(colors.red('Chains are also cool.'))))); // styles not widely supported
-    //document.write(colors.zalgo('zalgo time!'));
-    document.write(colors.stripColors(test));
-    document.write(colors.grey("a") + colors.black(" b"));
-
-    colors.addSequencer("america", function(letter, i, exploded) {
-      if(letter === " ") return letter;
-      switch(i%3) {
-        case 0: return letter.red;
-        case 1: return letter.white;
-        case 2: return letter.blue;
-      }
-    });
-
-    colors.addSequencer("random", (function() {
-      var available = ['bold', 'underline', 'italic', 'inverse', 'grey', 'yellow', 'red', 'green', 'blue', 'white', 'cyan', 'magenta'];
-
-      return function(letter, i, exploded) {
-        return letter === " " ? letter : letter[available[Math.round(Math.random() * (available.length - 1))]];
-      };
-    })());
-
-    document.write("AMERICA! F--K YEAH!".america);
-    document.write("So apparently I've been to Mars, with all the little green men. But you know, I don't recall.".random);
-
-    //
-    // Custom themes
-    //
-
-    colors.setTheme({
-      silly: 'rainbow',
-      input: 'grey',
-      verbose: 'cyan',
-      prompt: 'grey',
-      info: 'green',
-      data: 'grey',
-      help: 'cyan',
-      warn: 'yellow',
-      debug: 'blue',
-      error: 'red'
-    });
-
-    // outputs red text
-    document.write("this is an error".error);
-
-    // outputs yellow text
-    document.write("this is a warning".warn);
-
-    </script>
-  </body>
-</html>

+ 0 - 77
node_modules/keybase-installer/node_modules/colors/example.js

@@ -1,77 +0,0 @@
-var colors = require('./colors');
-
-//colors.mode = "browser";
-
-var test = colors.red("hopefully colorless output");
-console.log('Rainbows are fun!'.rainbow);
-console.log('So '.italic + 'are'.underline + ' styles! '.bold + 'inverse'.inverse); // styles not widely supported
-console.log('Chains are also cool.'.bold.italic.underline.red); // styles not widely supported
-//console.log('zalgo time!'.zalgo);
-console.log(test.stripColors);
-console.log("a".grey + " b".black);
-console.log("Zebras are so fun!".zebra);
-console.log('background color attack!'.black.whiteBG)
-
-//
-// Remark: .strikethrough may not work with Mac OS Terminal App
-//
-console.log("This is " + "not".strikethrough + " fun.");
-console.log(colors.rainbow('Rainbows are fun!'));
-console.log(colors.italic('So ') + colors.underline('are') + colors.bold(' styles! ') + colors.inverse('inverse')); // styles not widely supported
-console.log(colors.bold(colors.italic(colors.underline(colors.red('Chains are also cool.'))))); // styles not widely supported
-//console.log(colors.zalgo('zalgo time!'));
-console.log(colors.stripColors(test));
-console.log(colors.grey("a") + colors.black(" b"));
-
-colors.addSequencer("america", function(letter, i, exploded) {
-  if(letter === " ") return letter;
-  switch(i%3) {
-    case 0: return letter.red;
-    case 1: return letter.white;
-    case 2: return letter.blue;
-  }
-});
-
-colors.addSequencer("random", (function() {
-  var available = ['bold', 'underline', 'italic', 'inverse', 'grey', 'yellow', 'red', 'green', 'blue', 'white', 'cyan', 'magenta'];
-
-  return function(letter, i, exploded) {
-    return letter === " " ? letter : letter[available[Math.round(Math.random() * (available.length - 1))]];
-  };
-})());
-
-console.log("AMERICA! F--K YEAH!".america);
-console.log("So apparently I've been to Mars, with all the little green men. But you know, I don't recall.".random);
-
-//
-// Custom themes
-//
-
-// Load theme with JSON literal
-colors.setTheme({
-  silly: 'rainbow',
-  input: 'grey',
-  verbose: 'cyan',
-  prompt: 'grey',
-  info: 'green',
-  data: 'grey',
-  help: 'cyan',
-  warn: 'yellow',
-  debug: 'blue',
-  error: 'red'
-});
-
-// outputs red text
-console.log("this is an error".error);
-
-// outputs yellow text
-console.log("this is a warning".warn);
-
-// outputs grey text
-console.log("this is an input".input);
-
-// Load a theme from file
-colors.setTheme('./themes/winston-dark.js');
-
-console.log("this is an input".input);
-

+ 0 - 56
node_modules/keybase-installer/node_modules/colors/package.json

@@ -1,56 +0,0 @@
-{
-  "_from": "colors@0.6.2",
-  "_id": "colors@0.6.2",
-  "_location": "/keybase-installer/colors",
-  "_npmUser": {
-    "name": "marak",
-    "email": "marak.squires@gmail.com"
-  },
-  "_npmVersion": "1.2.30",
-  "_phantomChildren": {},
-  "_requiredBy": [
-    "/keybase-installer",
-    "/keybase-installer/iced-logger"
-  ],
-  "_resolved": "https://registry.npmjs.org/colors/-/colors-0.6.2.tgz",
-  "_shasum": "2423fe6678ac0c5dae8852e5d0e5be08c997abcc",
-  "_shrinkwrap": null,
-  "author": {
-    "name": "Marak Squires"
-  },
-  "bugs": {
-    "url": "https://github.com/Marak/colors.js/issues"
-  },
-  "dependencies": {},
-  "description": "get colors in your node.js console like what",
-  "devDependencies": {},
-  "directories": {},
-  "dist": {
-    "shasum": "2423fe6678ac0c5dae8852e5d0e5be08c997abcc",
-    "tarball": "http://registry.npmjs.org/colors/-/colors-0.6.2.tgz"
-  },
-  "engines": {
-    "node": ">=0.1.90"
-  },
-  "homepage": "https://github.com/Marak/colors.js",
-  "keywords": [
-    "ansi",
-    "terminal",
-    "colors"
-  ],
-  "main": "colors",
-  "maintainers": [
-    {
-      "name": "marak",
-      "email": "marak.squires@gmail.com"
-    }
-  ],
-  "name": "colors",
-  "optionalDependencies": {},
-  "readme": "ERROR: No README data found!",
-  "repository": {
-    "type": "git",
-    "url": "git+ssh://git@github.com/Marak/colors.js.git"
-  },
-  "version": "0.6.2"
-}

+ 0 - 70
node_modules/keybase-installer/node_modules/colors/test.js

@@ -1,70 +0,0 @@
-var assert = require('assert'),
-    colors = require('./colors');
-
-var s = 'string';
-
-function a(s, code) {
-  return '\x1B[' + code.toString() + 'm' + s + '\x1B[39m';
-}
-
-function aE(s, color, code) {
-  assert.equal(s[color], a(s, code));
-  assert.equal(colors[color](s), a(s, code));
-  assert.equal(s[color], colors[color](s));
-  assert.equal(s[color].stripColors, s);
-  assert.equal(s[color].stripColors, colors.stripColors(s));
-}
-
-function h(s, color) {
-  return '<span style="color:' + color + ';">' + s + '</span>';
-}
-
-var stylesColors = ['white', 'black', 'blue', 'cyan', 'green', 'magenta', 'red', 'yellow'];
-var stylesAll = stylesColors.concat(['bold', 'italic', 'underline', 'inverse', 'rainbow']);
-
-colors.mode = 'console';
-assert.equal(s.bold, '\x1B[1m' + s + '\x1B[22m');
-assert.equal(s.italic, '\x1B[3m' + s + '\x1B[23m');
-assert.equal(s.underline, '\x1B[4m' + s + '\x1B[24m');
-assert.equal(s.strikethrough, '\x1B[9m' + s + '\x1B[29m');
-assert.equal(s.inverse, '\x1B[7m' + s + '\x1B[27m');
-assert.ok(s.rainbow);
-aE(s, 'white', 37);
-aE(s, 'grey', 90);
-aE(s, 'black', 30);
-aE(s, 'blue', 34);
-aE(s, 'cyan', 36);
-aE(s, 'green', 32);
-aE(s, 'magenta', 35);
-aE(s, 'red', 31);
-aE(s, 'yellow', 33);
-assert.equal(s, 'string');
-
-colors.setTheme({error:'red'});
-
-assert.equal(typeof("astring".red),'string');
-assert.equal(typeof("astring".error),'string');
-
-colors.mode = 'browser';
-assert.equal(s.bold, '<b>' + s + '</b>');
-assert.equal(s.italic, '<i>' + s + '</i>');
-assert.equal(s.underline, '<u>' + s + '</u>');
-assert.equal(s.strikethrough, '<del>' + s + '</del>');
-assert.equal(s.inverse, '<span style="background-color:black;color:white;">' + s + '</span>');
-assert.ok(s.rainbow);
-stylesColors.forEach(function (color) {
-  assert.equal(s[color], h(s, color));
-  assert.equal(colors[color](s), h(s, color));
-});
-
-assert.equal(typeof("astring".red),'string');
-assert.equal(typeof("astring".error),'string');
-
-colors.mode = 'none';
-stylesAll.forEach(function (style) {
-  assert.equal(s[style], s);
-  assert.equal(colors[style](s), s);
-});
-
-assert.equal(typeof("astring".red),'string');
-assert.equal(typeof("astring".error),'string');

+ 0 - 12
node_modules/keybase-installer/node_modules/colors/themes/winston-dark.js

@@ -1,12 +0,0 @@
-module['exports'] = {
-  silly: 'rainbow',
-  input: 'black',
-  verbose: 'cyan',
-  prompt: 'grey',
-  info: 'green',
-  data: 'grey',
-  help: 'cyan',
-  warn: 'yellow',
-  debug: 'blue',
-  error: 'red'
-};

+ 0 - 12
node_modules/keybase-installer/node_modules/colors/themes/winston-light.js

@@ -1,12 +0,0 @@
-module['exports'] = {
-  silly: 'rainbow',
-  input: 'grey',
-  verbose: 'cyan',
-  prompt: 'grey',
-  info: 'green',
-  data: 'grey',
-  help: 'cyan',
-  warn: 'yellow',
-  debug: 'blue',
-  error: 'red'
-};

+ 0 - 16
node_modules/keybase-installer/node_modules/gpg-wrapper/.npmignore

@@ -1,16 +0,0 @@
-lib-cov
-*.seed
-*.log
-*.csv
-*.dat
-*.out
-*.pid
-*.gz
-
-pids
-logs
-results
-
-npm-debug.log
-node_modules
-build-stamp

+ 0 - 158
node_modules/keybase-installer/node_modules/gpg-wrapper/CHANGELOG.md

@@ -1,158 +0,0 @@
-## 1.0.1 (2014-11-17)
-
-Bugfixes:
-  - Parse revoked keys in output
-    - Support for https://github.com/keybase/node-client/pull/179
-
-## 1.0.0 (2014-09-23)
-
-Features:
-
-  - Address keybase/keybase-isssues#1002 and look for gpg2 first.
-  - Also bump to a release version, this software is pretty mature by now.
-
-## 0.0.46 and 0.0.47 (2014-06-05)
-
-Features:
-
-  - Version upgrades and ICS v1.7.1-c upgrade
-
-## 0.0.45 (2014-05-15)
-
-Bugfixes:
-
-  - Fix bug in Indexing, wasn't properly looking for `ssb`s
-    Add new test case for the above. Note that we need to supply `--with-fingerprint`
-    twice to get gpg to output fingerprints for subkeys
-
-## 0.0.44 (2014-03-29)
-
-Bugfixes:
-  - Simplify read_uids_from_key, and use the Index system
-  - Upgrade to pgp-utils@v0.0.19 to get more lax parsing
-
-## 0.0.43 (2014-03-28)
-
-Features:
-
-  - index2 which also has the ability to index secret keys and use a query
-
-## 0.0.42 (2014-03-20)
-
-Bugfixes:
-
-  - Close #5: Write an empty trust DB.
-
-## 0.0.41 (2014-03-17)
-
-Features:
-
-  - We probably should not call this a feature, but introduce the 
-    "nuclear" option for dealing with fussy gpg.conf files.  Just
-    ignore it for temporary keyrings.  Only on if you specify it.
-
-## 0.0.40 (2014-03-15)
-
-Bugfixes:
-
-  - Address #4.  Fix Indexing for people who have `with-fingerprint` in their 
-    `gpg.conf` files.
-  - Fix bugs with parsing columns from `gpg --with-colons` output.  We were
-    mangling dates and also key id 64s
-
-## 0.0.39 (2014-03-09)
-
-Bugfixes:
-
-  - Better support for users with `secret-keyring` off on an external device. In practice,
-    this means that we have to touch the temporary `secring.gpg` before we can import to it,
-    a constraint which isn't enforced if `secret-keyring` isn't specified in the `gpg.conf` file.
-    See issue keybase/keybase-issues#227
-
-## 0.0.38 (2014-03-09)
-
-Features:
-
-  - Better support for non-standard GPG
-
-## 0.0.37 (2014-03-03)
-
-Features:
-
-  - Do not print secret keys to stderr in debug
-  - New `QuarantinedKeyRing` type that corresponds to incoming public keys that are
-    not yet kosher.
-
-## 0.0.36 (2014-02-27)
-
-Bugfixes:
-  
-  - Export armored PGP data, we were forgetting to do so in a couple of cases.
-  - Use the iced-spawn@0.0.5 workaround to closing stdin bug on node 0.10.x
-
-## 0.0.35 (2014-02-26)
-
-Features:
-
-  - When loading keys, store all UIDs, not just the first, in the in-memory argument
-
-## 0.0.34 (2014-02-25)
-
-Bugfixes:
-
-  - Upgrade to pgp-utils v0.0.15 to allow null emails
-
-## 0.0.33 (2014-02-20)
-
-Features :
- 
-  - If quiet is on, and there's an error, we'll pass stderr back via the Error object.
-
-## 0.0.32 (2014-02-18)
-
-Bugfixes:
-
-  - More robust and secure file-touching mechanism for new Alt primary key dirs
-
-## 0.0.31 (2014-02-18)
-
-Bugfixes:
-
-  - Issues with Alt primary dirs on windows being created for the first time.
-
-## 0.0.30 (2014-02-17)
-
-Bugfixes:
-
-  - We dropped set_log a while ago, when we moved spawn functionality into iced-spawn.  So add it back.
-
-## 0.0.29 (2014-02-17)
-
-Bugfixes
-
-  - More windows testing bugfixes
-
-## 0.0.28 (2014-02-16)
-
-Features:
-
-  - New indexing system; can read in the whole keychain with -k and then access the index in memory (close issue #3)
-  - Small tweaks and features additions for new keybase-node-installer version
-
-
-## 0.0.27 (2014-02-15)
-
-Bugfixes:
-
-  - Upgrade to `iced-spawn` for all spawning work.
-  - Fix bugs in windows
-
-## 0.0.25 (2014-02-14)
-
-Bugfixes:
-  
-  - `verify_sig` now goes through `one_shot_verify` which should ease the dependence on our ability to parse the text output of GPG
-
-Features:
-
-  - Inaugural CHANGELOG.md

+ 0 - 27
node_modules/keybase-installer/node_modules/gpg-wrapper/LICENSE

@@ -1,27 +0,0 @@
-Copyright (c) 2013, keybase
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-
-* Neither the name of the {organization} nor the names of its
-  contributors may be used to endorse or promote products derived from
-  this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

+ 0 - 35
node_modules/keybase-installer/node_modules/gpg-wrapper/Makefile

@@ -1,35 +0,0 @@
-default: build
-all: build
-
-ICED=node_modules/.bin/iced
-BUILD_STAMP=build-stamp
-TEST_STAMP=test-stamp
-
-default: build
-all: build
-
-lib/%.js: src/%.iced
-	$(ICED) -I browserify -c -o `dirname $@` $<
-
-$(BUILD_STAMP): \
-	lib/err.js \
-	lib/gpg.js \
-	lib/keyring.js \
-	lib/index.js \
-	lib/main.js \
-	lib/parse.js \
-	lib/colgrep.js  
-	date > $@
-
-clean:
-	find lib -type f -name *.js -exec rm {} \;
-
-build: $(BUILD_STAMP) 
-
-setup: 
-	npm install -d
-
-test: $(BUILD_STAMP)
-	$(ICED) test/run.iced
-
-.PHONY: test setup

+ 0 - 4
node_modules/keybase-installer/node_modules/gpg-wrapper/README.md

@@ -1,4 +0,0 @@
-gpg-wrapper
-===========
-
-A wrapper around the GPG CLI.

+ 0 - 97
node_modules/keybase-installer/node_modules/gpg-wrapper/SIGNED.md

@@ -1,97 +0,0 @@
-##### Signed by https://keybase.io/max
-```
------BEGIN PGP SIGNATURE-----
-Version: GnuPG/MacGPG2 v2
-Comment: GPGTools - https://gpgtools.org
-
-iQEcBAABCgAGBQJUahLUAAoJEJgKPw0B/gTfPtwIAJBCXUgXEr3YJkZa0PLdA367
-T65sUet6dtL2lccEIZpJZrI01ih9/xsKOdFWDlIgRrOzf1ETUaMdZImZnuBpvUO8
-Q/x/NbXFG3rDfoy77P5xVeW+mmpAx+xnR3fICIW8iXM5sE97pEFb+uJUPTphqlUU
-X78pP5A3z8i+JaPB6dZI5XQrkMlB71VkXmiwIEB/7xlqfz8YmvzXEVSuILfnEjLZ
-bPWtJUBNoLUw02qaqUhitaYehvOAlZFunTrA+yOXLCFfu1YQP4s35chXVk5lwO2H
-N9PkXjumXeIRewS6uAFms6BJ/H8goPx8bloDup3ITeMcV5RY+HOzHXvEh4kS/NM=
-=9fuH
------END PGP SIGNATURE-----
-
-```
-
-<!-- END SIGNATURES -->
-
-### Begin signed statement 
-
-#### Expect
-
-```
-size   exec  file                contents                                                        
-             ./                                                                                  
-109            .gitignore        ec278daeb8f83cac2579d262b92ee6d7d872c4d1544e881ba515d8bcc05361ab
-3606           CHANGELOG.md      7005816f08a0721caff716ede9db01e4dd8b8a093aa5678f66dc735fb746e91a
-1483           LICENSE           333be7050513d91d9e77ca9acb4a91261721f0050209636076ed58676bfc643d
-502            Makefile          960fe8002c2c2866c0963c9b0ed138dcb2a4feed693a3c668875935902f9b486
-55             README.md         fac7947ca164bd97f854cec88bc0266773ec378f4fb79cb1554662a4fd4079f9
-               lib/                                                                              
-1100             colgrep.js      8cca2968a077b03d45b761139276f24f32b2a6948ada5fe825fcfd804105cda2
-408              err.js          ac74e7dbc52d8da10a4544bbedb78619a5407cdcdbb3893e7584fc5ca41c8e0d
-9864             gpg.js          58f656e45b780600861b7d65c55a3720804ca9697f8cf996247486829f186bf5
-11120            index.js        821e84c563ead9729196d12a80f3d990cd485fbe16df6de264fdc457fd781286
-92762            keyring.js      fda9c5c6d615c44e6ade52b884bf672c970a4737c9a2edee3f693c77df39e61e
-387              main.js         92476f33f1ce68c8f74c993c3b3d9603b9f435f44a69ec3098e552b0c4d736b8
-3985             parse.js        57abc69755fc4eea76600b17082827fc23574fd7ba5b2a414cba40b89f0150a2
-708            package.json      90fbf4bba998fa06495eed425c5d7e091615438c7fbe8114545eb71955f038c2
-               src/                                                                              
-604              colgrep.iced    a3c53c57e739b9af47f7b8cdb31c3aaf3f7416c978e7905ec42bee4966bc3920
-351              err.iced        db7ddbbfbe1f076ad895a83e22cac8e720f260768456dd6aa0c97e5faf7ae9e5
-2590             gpg.iced        cc3921f2f7c8b56940b3a8170e587d9375e7c58c50e873134c79c969c2db5148
-5740             index.iced      8d9d3029f836f5c608a75d010e557cc7cc7da8444b530191c9ca4282952dd8b2
-28456            keyring.iced    091e445fbb29355b5935e19c35f5952ec315bc7029550b7a122c2e76d9038192
-225              main.iced       d06200c91a7f18bf1ece9ed92123ecf2362cf4592318ca23639b08356ce877ab
-1731             parse.iced      f031af161d3e124ef77ed4ff2e679b84db797c2462d407be0975383c30400857
-               test/                                                                             
-                 files/                                                                          
-1066               colgrep.iced  e055590058160122daaddaf0fe2784394981c3d599a86cfce892b31dc89e030f
-360                error.iced    d47058171d6c5a61c57829d9b9fa05f6c06153ce899d6a6ae61dc13c32b956ac
-1690               gpg.iced      d44f312444b293b551240e3028ea08b3e7d98818c9df58f052ec37b78b410b1a
-10403              index.iced    fb73ed7d38df999852f8b68e0fcf2c37615f24eaca8d83e2f9b353d18380f338
-36214              keyring.iced  f91c6534f85e4a1c09144539d03026b9152e86e45b994312b6662233751868ca
-1458               parse.iced    6502b4cbe550249868f8c9f257b621898ba76acf1e20242ecad1b811e0829c3d
-183              run.iced        822568debeae702ca4d1f3026896d78b2d426e960d77cb3c374da059ef09f9fd
-```
-
-#### Ignore
-
-```
-/SIGNED.md
-```
-
-#### Presets
-
-```
-git      # ignore .git and anything as described by .gitignore files
-dropbox  # ignore .dropbox-cache and other Dropbox-related files    
-kb       # ignore anything as described by .kbignore files          
-```
-
-<!-- summarize version = 0.0.9 -->
-
-### End signed statement
-
-<hr>
-
-#### Notes
-
-With keybase you can sign any directory's contents, whether it's a git repo,
-source code distribution, or a personal documents folder. It aims to replace the drudgery of:
-
-  1. comparing a zipped file to a detached statement
-  2. downloading a public key
-  3. confirming it is in fact the author's by reviewing public statements they've made, using it
-
-All in one simple command:
-
-```bash
-keybase dir verify
-```
-
-There are lots of options, including assertions for automating your checks.
-
-For more info, check out https://keybase.io/docs/command_line/code_signing

+ 0 - 41
node_modules/keybase-installer/node_modules/gpg-wrapper/lib/colgrep.js

@@ -1,41 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-c
-(function() {
-  var colgrep;
-
-  exports.colgrep = colgrep = function(_arg) {
-    var buffer, cols, found, indices, k, line, lines, max_index, out, patterns, separator, v, _i, _len;
-    patterns = _arg.patterns, buffer = _arg.buffer, separator = _arg.separator;
-    separator || (separator = /:/);
-    lines = buffer.toString('utf8').split('\n');
-    indices = (function() {
-      var _results;
-      _results = [];
-      for (k in patterns) {
-        v = patterns[k];
-        _results.push(parseInt(k));
-      }
-      return _results;
-    })();
-    max_index = Math.max.apply(Math, indices);
-    out = [];
-    for (_i = 0, _len = lines.length; _i < _len; _i++) {
-      line = lines[_i];
-      if (!(((cols = line.split(separator)) != null) && (max_index < cols.length))) {
-        continue;
-      }
-      found = true;
-      for (k in patterns) {
-        v = patterns[k];
-        if (!cols[k].match(v)) {
-          found = false;
-          break;
-        }
-      }
-      if (found) {
-        out.push(cols);
-      }
-    }
-    return out;
-  };
-
-}).call(this);

+ 0 - 17
node_modules/keybase-installer/node_modules/gpg-wrapper/lib/err.js

@@ -1,17 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-c
-(function() {
-  var ie;
-
-  ie = require('iced-error');
-
-  exports.E = ie.make_errors({
-    GPG: "Command line error",
-    PGP_ID_COLLISION: "PGP ID collision error",
-    NOT_FOUND: "Key wasn't found",
-    CMD: "Non-zero exit code",
-    PARSE: "parse error",
-    VERIFY: "Signature verification error",
-    NO_FINGERPRINT: "No fingerprint found"
-  });
-
-}).call(this);

+ 0 - 314
node_modules/keybase-installer/node_modules/gpg-wrapper/lib/gpg.js

@@ -1,314 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-c
-(function() {
-  var E, GPG, colgrep, iced, ispawn, parse, set_gpg_cmd, __iced_k, __iced_k_noop, _gpg_cmd, _log;
-
-  iced = require('iced-runtime').iced;
-  __iced_k = __iced_k_noop = function() {};
-
-  colgrep = require('./colgrep').colgrep;
-
-  E = require('./err').E;
-
-  parse = require('pgp-utils').userid.parse;
-
-  ispawn = require('iced-spawn');
-
-  _gpg_cmd = "gpg";
-
-  exports.set_gpg_cmd = set_gpg_cmd = function(c) {
-    return _gpg_cmd = c;
-  };
-
-  exports.get_gpg_cmd = function() {
-    return _gpg_cmd;
-  };
-
-  _log = null;
-
-  exports.set_log = function(l) {
-    return _log = l;
-  };
-
-  exports.find_and_set_cmd = function(cmd, cb) {
-    var cmds, err, v, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-    __iced_k = __iced_k_noop;
-    ___iced_passed_deferral = iced.findDeferral(arguments);
-    (function(_this) {
-      return (function(__iced_k) {
-        if (cmd != null) {
-          (function(__iced_k) {
-            __iced_deferrals = new iced.Deferrals(__iced_k, {
-              parent: ___iced_passed_deferral,
-              filename: "/Users/max/src/keybase/gpg-wrapper/src/gpg.iced",
-              funcname: "find_and_set_cmd"
-            });
-            (new GPG({
-              cmd: cmd
-            })).test(__iced_deferrals.defer({
-              assign_fn: (function() {
-                return function() {
-                  err = arguments[0];
-                  return v = arguments[1];
-                };
-              })(),
-              lineno: 20
-            }));
-            __iced_deferrals._fulfill();
-          })(function() {
-            return __iced_k(typeof err !== "undefined" && err !== null ? err = new Error("Could not access the supplied GPG command '" + cmd + "'") : void 0);
-          });
-        } else {
-          cmds = ["gpg2", "gpg"];
-          (function(__iced_k) {
-            var _i, _len, _ref, _results, _while;
-            _ref = cmds;
-            _len = _ref.length;
-            _i = 0;
-            _results = [];
-            _while = function(__iced_k) {
-              var _break, _continue, _next;
-              _break = function() {
-                return __iced_k(_results);
-              };
-              _continue = function() {
-                return iced.trampoline(function() {
-                  ++_i;
-                  return _while(__iced_k);
-                });
-              };
-              _next = function(__iced_next_arg) {
-                _results.push(__iced_next_arg);
-                return _continue();
-              };
-              if (!(_i < _len)) {
-                return _break();
-              } else {
-                cmd = _ref[_i];
-                (function(__iced_k) {
-                  __iced_deferrals = new iced.Deferrals(__iced_k, {
-                    parent: ___iced_passed_deferral,
-                    filename: "/Users/max/src/keybase/gpg-wrapper/src/gpg.iced",
-                    funcname: "find_and_set_cmd"
-                  });
-                  (new GPG({
-                    cmd: cmd
-                  })).test(__iced_deferrals.defer({
-                    assign_fn: (function() {
-                      return function() {
-                        err = arguments[0];
-                        return v = arguments[1];
-                      };
-                    })(),
-                    lineno: 26
-                  }));
-                  __iced_deferrals._fulfill();
-                })(function() {
-                  (function(__iced_k) {
-                    if (!err) {
-                      (function(__iced_k) {
-_break()
-                      })(__iced_k);
-                    } else {
-                      return __iced_k();
-                    }
-                  })(_next);
-                });
-              }
-            };
-            _while(__iced_k);
-          })(function() {
-            return __iced_k(err != null ? err = new Error("Could not find GPG command: tried 'gpg2' and 'gpg'") : void 0);
-          });
-        }
-      });
-    })(this)((function(_this) {
-      return function() {
-        if (typeof err === "undefined" || err === null) {
-          set_gpg_cmd(cmd);
-        }
-        return cb(err, v, cmd);
-      };
-    })(this));
-  };
-
-  exports.GPG = GPG = (function() {
-    function GPG(opts) {
-      var c;
-      this.CMD = (c = opts != null ? opts.cmd : void 0) != null ? c : _gpg_cmd;
-    }
-
-    GPG.prototype.mutate_args = function(args) {};
-
-    GPG.prototype.test = function(cb) {
-      var err, out, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/gpg.iced",
-            funcname: "GPG.test"
-          });
-          ispawn.run({
-            name: _this.CMD,
-            args: ["--version"],
-            quiet: true
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return out = arguments[1];
-              };
-            })(),
-            lineno: 49
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err, out);
-        };
-      })(this));
-    };
-
-    GPG.prototype.run = function(inargs, cb) {
-      var env, err, out, stderr, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      stderr = null;
-      this.mutate_args(inargs);
-      env = process.env;
-      delete env.LANGUAGE;
-      inargs.name = this.CMD;
-      inargs.eklass = E.GpgError;
-      inargs.opts = {
-        env: env
-      };
-      if (_log != null) {
-        inargs.log = _log;
-      }
-      if ((inargs.stderr == null) && inargs.quiet) {
-        inargs.stderr = stderr = new ispawn.BufferOutStream();
-      }
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/gpg.iced",
-            funcname: "GPG.run"
-          });
-          ispawn.run(inargs, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return out = arguments[1];
-              };
-            })(),
-            lineno: 64
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          if ((typeof err !== "undefined" && err !== null) && (stderr != null)) {
-            err.stderr = stderr.data();
-          }
-          return cb(err, out);
-        };
-      })(this));
-    };
-
-    GPG.prototype.command_line = function(inargs) {
-      var v;
-      this.mutate_args(inargs);
-      v = [this.CMD].concat(inargs.args);
-      return v.join(" ");
-    };
-
-    GPG.prototype.assert_no_collision = function(id, cb) {
-      var args, err, n, out, rows, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      args = ["-k", "--with-colons", id];
-      n = 0;
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/gpg.iced",
-            funcname: "GPG.assert_no_collision"
-          });
-          _this.run({
-            args: args,
-            quiet: true
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return out = arguments[1];
-              };
-            })(),
-            lineno: 81
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          if (typeof err !== "undefined" && err !== null) {
-
-          } else {
-            rows = colgrep({
-              patterns: {
-                0: /^[sp]ub$/,
-                4: new RegExp("^.*" + id + "$", "i")
-              },
-              buffer: out,
-              separator: /:/
-            });
-            if ((n = rows.length) > 1) {
-              err = new E.PgpIdCollisionError("Found two keys for ID=" + short_id);
-            }
-          }
-          return cb(err, n);
-        };
-      })(this));
-    };
-
-    GPG.prototype.assert_exactly_one = function(short_id, cb) {
-      var err, n, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/gpg.iced",
-            funcname: "GPG.assert_exactly_one"
-          });
-          _this.assert_no_collision(short_id, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return n = arguments[1];
-              };
-            })(),
-            lineno: 99
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          if (n !== 1) {
-            err = new E.NotFoundError("Didn't find a key for " + short_id);
-          }
-          return cb(err);
-        };
-      })(this));
-    };
-
-    return GPG;
-
-  })();
-
-}).call(this);

+ 0 - 470
node_modules/keybase-installer/node_modules/gpg-wrapper/lib/index.js

@@ -1,470 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-c
-(function() {
-  var BaseKey, BucketDict, Element, Ignored, Index, Key, Line, Parser, Subkey, Warnings, list_fingerprints, parse, parse_int, pgpu, uniquify, util,
-    __hasProp = {}.hasOwnProperty,
-    __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
-
-  pgpu = require('pgp-utils').userid;
-
-  Warnings = require('iced-utils').util.Warnings;
-
-  util = require('util');
-
-  BucketDict = (function() {
-    function BucketDict() {
-      this._d = {};
-    }
-
-    BucketDict.prototype.add = function(k, v) {
-      var b;
-      k = ("" + k).toLowerCase();
-      if ((b = this._d[k]) == null) {
-        this._d[k] = b = [];
-      }
-      return b.push(v);
-    };
-
-    BucketDict.prototype.get = function(k) {
-      return this._d[("" + k).toLowerCase()] || [];
-    };
-
-    BucketDict.prototype.get_0_or_1 = function(k) {
-      var err, l, n, obj;
-      l = this.get(k);
-      err = obj = null;
-      if ((n = l.length) > 1) {
-        err = new Error("wanted a unique lookup, but got " + n + " object for key " + k);
-      } else {
-        obj = n === 0 ? null : l[0];
-      }
-      return [err, obj];
-    };
-
-    return BucketDict;
-
-  })();
-
-  uniquify = function(v) {
-    var e, h, k, _i, _len, _results;
-    h = {};
-    for (_i = 0, _len = v.length; _i < _len; _i++) {
-      e = v[_i];
-      h[e] = true;
-    }
-    _results = [];
-    for (k in h) {
-      _results.push(k);
-    }
-    return _results;
-  };
-
-  Index = (function() {
-    function Index() {
-      this._keys = [];
-      this._lookup = {
-        email: new BucketDict(),
-        fingerprint: new BucketDict(),
-        key_id_64: new BucketDict()
-      };
-    }
-
-    Index.prototype.push_element = function(el) {
-      var k;
-      if ((k = el.to_key())) {
-        return this.index_key(k);
-      }
-    };
-
-    Index.prototype.index_key = function(k) {
-      var e, i, _i, _j, _len, _len1, _ref, _ref1, _results;
-      this._keys.push(k);
-      this._lookup.fingerprint.add(k.fingerprint(), k);
-      _ref = uniquify(k.emails());
-      for (_i = 0, _len = _ref.length; _i < _len; _i++) {
-        e = _ref[_i];
-        this._lookup.email.add(e, k);
-      }
-      _ref1 = k.all_key_id_64s();
-      _results = [];
-      for (_j = 0, _len1 = _ref1.length; _j < _len1; _j++) {
-        i = _ref1[_j];
-        _results.push(this._lookup.key_id_64.add(i, k));
-      }
-      return _results;
-    };
-
-    Index.prototype.lookup = function() {
-      return this._lookup;
-    };
-
-    Index.prototype.keys = function() {
-      return this._keys;
-    };
-
-    Index.prototype.fingerprints = function() {
-      var k, _i, _len, _ref, _results;
-      _ref = this.keys();
-      _results = [];
-      for (_i = 0, _len = _ref.length; _i < _len; _i++) {
-        k = _ref[_i];
-        _results.push(k.fingerprint());
-      }
-      return _results;
-    };
-
-    return Index;
-
-  })();
-
-  Element = (function() {
-    function Element() {
-      this._err = null;
-    }
-
-    Element.prototype.err = function() {
-      return this._err;
-    };
-
-    Element.prototype.is_ok = function() {
-      return this._err == null;
-    };
-
-    Element.prototype.to_key = function() {
-      return null;
-    };
-
-    return Element;
-
-  })();
-
-  parse_int = function(s) {
-    if (s != null ? s.match(/^[0-9]+$/) : void 0) {
-      return parseInt(s, 10);
-    } else {
-      return s;
-    }
-  };
-
-  BaseKey = (function(_super) {
-    __extends(BaseKey, _super);
-
-    function BaseKey(line) {
-      var e, v;
-      BaseKey.__super__.constructor.call(this);
-      if (line.v.length < 12) {
-        this._err = new Error("Key is malformed; needs at least 12 fields");
-      } else {
-        v = (function() {
-          var _i, _len, _ref, _results;
-          _ref = line.v;
-          _results = [];
-          for (_i = 0, _len = _ref.length; _i < _len; _i++) {
-            e = _ref[_i];
-            _results.push(parse_int(e));
-          }
-          return _results;
-        })();
-        this._pub = v[0], this._trust = v[1], this._n_bits = v[2], this._type = v[3], this._key_id_64 = v[4], this._created = v[5], this._expires = v[6];
-      }
-    }
-
-    BaseKey.prototype.err = function() {
-      return this._err;
-    };
-
-    BaseKey.prototype.to_key = function() {
-      return null;
-    };
-
-    BaseKey.prototype.key_id_64 = function() {
-      return this._key_id_64;
-    };
-
-    BaseKey.prototype.fingerprint = function() {
-      return this._fingerprint;
-    };
-
-    BaseKey.prototype.add_fingerprint = function(line) {
-      return this._fingerprint = line.get(9);
-    };
-
-    BaseKey.prototype.is_revoked = function() {
-      return this._trust === 'r';
-    };
-
-    BaseKey.prototype.to_dict = function(_arg) {
-      var secret;
-      secret = _arg.secret;
-      return {
-        fingerprint: this.fingerprint(),
-        key_id_64: this.key_id_64(),
-        secret: secret,
-        is_revoked: this.is_revoked()
-      };
-    };
-
-    return BaseKey;
-
-  })(Element);
-
-  Subkey = (function(_super) {
-    __extends(Subkey, _super);
-
-    function Subkey() {
-      return Subkey.__super__.constructor.apply(this, arguments);
-    }
-
-    return Subkey;
-
-  })(BaseKey);
-
-  Key = (function(_super) {
-    __extends(Key, _super);
-
-    function Key(line) {
-      Key.__super__.constructor.call(this, line);
-      this._userids = [];
-      this._subkeys = [];
-      this._top = this;
-      if (this.is_ok()) {
-        this.add_uid(line);
-      }
-    }
-
-    Key.prototype.emails = function() {
-      var e, u, _i, _len, _ref, _results;
-      _ref = this._userids;
-      _results = [];
-      for (_i = 0, _len = _ref.length; _i < _len; _i++) {
-        u = _ref[_i];
-        if ((e = u.email) != null) {
-          _results.push(e);
-        }
-      }
-      return _results;
-    };
-
-    Key.prototype.to_key = function() {
-      return this;
-    };
-
-    Key.prototype.userids = function() {
-      return this._userids;
-    };
-
-    Key.prototype.subkeys = function() {
-      return this._subkeys;
-    };
-
-    Key.prototype.to_dict = function(d) {
-      var r;
-      r = Key.__super__.to_dict.call(this, d);
-      r.uid = this.userids()[0];
-      r.all_uids = this.userids;
-      return r;
-    };
-
-    Key.prototype.all_keys = function() {
-      return [this].concat(this._subkeys);
-    };
-
-    Key.prototype.all_key_id_64s = function() {
-      var i, ret, s;
-      ret = (function() {
-        var _i, _len, _ref, _results;
-        _ref = this.all_keys();
-        _results = [];
-        for (_i = 0, _len = _ref.length; _i < _len; _i++) {
-          s = _ref[_i];
-          if ((i = s.key_id_64()) != null) {
-            _results.push(i);
-          }
-        }
-        return _results;
-      }).call(this);
-      return ret;
-    };
-
-    Key.prototype.add_line = function(line) {
-      var err, f, n;
-      err = null;
-      if ((n = line.v.length) < 2) {
-        return line.warn("got too few fields (" + n + ")");
-      } else {
-        switch ((f = line.v[0])) {
-          case 'fpr':
-            return this._top.add_fingerprint(line);
-          case 'uid':
-            return this.add_uid(line);
-          case 'uat':
-            break;
-          case 'sub':
-          case 'ssb':
-            return this.add_subkey(line);
-          default:
-            return line.warn("unexpected subfield: " + f);
-        }
-      }
-    };
-
-    Key.prototype.add_subkey = function(line) {
-      var key;
-      key = new Subkey(line);
-      if (key.is_ok()) {
-        this._subkeys.push(key);
-        return this._top = key;
-      } else {
-        return line.warn("Bad subkey: " + (key.err().message));
-      }
-    };
-
-    Key.prototype.add_uid = function(line) {
-      var e, u;
-      if (((e = line.get(9)) != null) && ((u = pgpu.parse(e)) != null)) {
-        return this._userids.push(u);
-      }
-    };
-
-    return Key;
-
-  })(BaseKey);
-
-  Ignored = (function(_super) {
-    __extends(Ignored, _super);
-
-    function Ignored(line) {}
-
-    return Ignored;
-
-  })(Element);
-
-  Line = (function() {
-    function Line(txt, number, parser) {
-      this.number = number;
-      this.parser = parser;
-      this.v = txt.split(":");
-      if (this.v.length < 2) {
-        this.warn("Bad line; expectect at least 2 fields");
-      }
-    }
-
-    Line.prototype.warn = function(m) {
-      return this.parser.warn(this.number + ": " + m);
-    };
-
-    Line.prototype.get = function(n) {
-      if (n < this.v.length && this.v[n].length) {
-        return this.v[n];
-      } else {
-        return null;
-      }
-    };
-
-    return Line;
-
-  })();
-
-  exports.Parser = Parser = (function() {
-    function Parser(txt) {
-      this.txt = txt;
-      this._warnings = new Warnings();
-      this.init();
-    }
-
-    Parser.prototype.warn = function(w) {
-      return this._warnings.push(w);
-    };
-
-    Parser.prototype.warnings = function() {
-      return this._warnings;
-    };
-
-    Parser.prototype.init = function() {
-      var i, l;
-      return this.lines = (function() {
-        var _i, _len, _ref, _results;
-        _ref = this.txt.split(/\r?\n/);
-        _results = [];
-        for (i = _i = 0, _len = _ref.length; _i < _len; i = ++_i) {
-          l = _ref[i];
-          if (l.length > 0) {
-            _results.push(new Line(l, i + 1, this));
-          }
-        }
-        return _results;
-      }).call(this);
-    };
-
-    Parser.prototype.peek = function() {
-      if (this.is_eof()) {
-        return null;
-      } else {
-        return this.lines[0];
-      }
-    };
-
-    Parser.prototype.get = function() {
-      if (this.is_eof()) {
-        return null;
-      } else {
-        return this.lines.shift();
-      }
-    };
-
-    Parser.prototype.is_eof = function() {
-      return this.lines.length === 0;
-    };
-
-    Parser.prototype.parse_ignored = function(line) {
-      return new Ignored(line);
-    };
-
-    Parser.prototype.parse = function() {
-      var element, index;
-      index = new Index();
-      while (!this.is_eof()) {
-        if ((element = this.parse_element()) && element.is_ok()) {
-          index.push_element(element);
-        }
-      }
-      return index;
-    };
-
-    Parser.prototype.is_new_key = function(line) {
-      var _ref;
-      return (line != null) && ((_ref = line.get(0)) === 'pub' || _ref === 'sec');
-    };
-
-    Parser.prototype.parse_element = function() {
-      var line;
-      line = this.get();
-      if (this.is_new_key(line)) {
-        return this.parse_key(line);
-      } else {
-        return this.parse_ignored(line);
-      }
-    };
-
-    Parser.prototype.parse_key = function(first_line) {
-      var key, nxt;
-      key = new Key(first_line);
-      while (((nxt = this.peek()) != null) && !(this.is_new_key(nxt))) {
-        this.get();
-        key.add_line(nxt);
-      }
-      return key;
-    };
-
-    return Parser;
-
-  })();
-
-  exports.parse = parse = function(txt) {
-    return new Parser(txt).parse();
-  };
-
-  exports.list_fingerprints = list_fingerprints = function(txt) {
-    return parse(txt).fingerprints();
-  };
-
-}).call(this);

+ 0 - 2561
node_modules/keybase-installer/node_modules/gpg-wrapper/lib/keyring.js

@@ -1,2561 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-c
-(function() {
-  var AltKeyRing, AltKeyRingBase, BaseKeyRing, E, GPG, Globals, GpgKey, Log, MasterKeyRing, Parser, QuarantinedKeyRing, RingFileBundle, TmpKeyRing, TmpKeyRingBase, TmpOneShotKeyRing, TmpPrimaryKeyRing, a_json_parse, athrow, base64u, chain, colgrep, fingerprint_to_key_id_64, fpeq, fs, globals, iced, list_fingerprints, log, make_esc, master_ring, mkdir_p, os, path, pgp_utils, prng, reset_master_ring, states, strip, userid, util, __iced_k, __iced_k_noop, _globals, _ref, _ref1, _ref2,
-    __hasProp = {}.hasOwnProperty,
-    __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
-
-  iced = require('iced-runtime').iced;
-  __iced_k = __iced_k_noop = function() {};
-
-  GPG = require('./gpg').GPG;
-
-  _ref = require('iced-error'), chain = _ref.chain, make_esc = _ref.make_esc;
-
-  mkdir_p = require('iced-utils').fs.mkdir_p;
-
-  prng = require('crypto').prng;
-
-  pgp_utils = require('pgp-utils');
-
-  _ref1 = pgp_utils.util, fingerprint_to_key_id_64 = _ref1.fingerprint_to_key_id_64, fpeq = _ref1.fpeq, athrow = _ref1.athrow, base64u = _ref1.base64u;
-
-  userid = pgp_utils.userid;
-
-  E = require('./err').E;
-
-  path = require('path');
-
-  fs = require('fs');
-
-  colgrep = require('./colgrep').colgrep;
-
-  util = require('util');
-
-  os = require('os');
-
-  a_json_parse = require('iced-utils').util.a_json_parse;
-
-  _ref2 = require('./index'), list_fingerprints = _ref2.list_fingerprints, Parser = _ref2.Parser;
-
-  strip = function(m) {
-    return m.split(/\s+/).join('');
-  };
-
-  states = {
-    NONE: 0,
-    LOADED: 1,
-    SAVED: 2
-  };
-
-  exports.Log = Log = (function() {
-    function Log() {}
-
-    Log.prototype.debug = function(x) {
-      return console.error(x);
-    };
-
-    Log.prototype.warn = function(x) {
-      return console.error(x);
-    };
-
-    Log.prototype.error = function(x) {
-      return console.error(x);
-    };
-
-    Log.prototype.info = function(x) {
-      return console.error(x);
-    };
-
-    return Log;
-
-  })();
-
-  exports.Globals = Globals = (function() {
-    function Globals(_arg) {
-      this.get_preserve_tmp_keyring = _arg.get_preserve_tmp_keyring, this.get_debug = _arg.get_debug, this.get_tmp_keyring_dir = _arg.get_tmp_keyring_dir, this.get_key_klass = _arg.get_key_klass, this.get_home_dir = _arg.get_home_dir, this.get_gpg_cmd = _arg.get_gpg_cmd, this.get_no_options = _arg.get_no_options, this.log = _arg.log;
-      this.get_preserve_tmp_keyring || (this.get_preserve_tmp_keyring = function() {
-        return false;
-      });
-      this.log || (this.log = new Log);
-      this.get_debug || (this.get_debug = function() {
-        return false;
-      });
-      this.get_tmp_keyring_dir || (this.get_tmp_keyring_dir = function() {
-        return os.tmpdir();
-      });
-      this.get_key_klass || (this.get_key_klass = function() {
-        return GpgKey;
-      });
-      this.get_home_dir || (this.get_home_dir = function() {
-        return null;
-      });
-      this.get_gpg_cmd || (this.get_gpg_cmd = function() {
-        return null;
-      });
-      this.get_no_options || (this.get_no_options = function() {
-        return false;
-      });
-      this._mring = null;
-    }
-
-    Globals.prototype.master_ring = function() {
-      return this._mring;
-    };
-
-    Globals.prototype.set_master_ring = function(r) {
-      return this._mring = r;
-    };
-
-    return Globals;
-
-  })();
-
-  _globals = new Globals({});
-
-  globals = function() {
-    return _globals;
-  };
-
-  exports.init = function(d) {
-    _globals = new Globals(d);
-    return _globals.set_master_ring(new MasterKeyRing());
-  };
-
-  log = function() {
-    return globals().log;
-  };
-
-  exports.GpgKey = GpgKey = (function() {
-    function GpgKey(fields) {
-      var k, v;
-      this._state = states.NONE;
-      for (k in fields) {
-        v = fields[k];
-        this["_" + k] = v;
-      }
-    }
-
-    GpgKey.prototype.fingerprint = function() {
-      return this._fingerprint;
-    };
-
-    GpgKey.prototype.key_id_64 = function() {
-      return this._key_id_64 || (this.fingerprint() ? this.fingerprint().slice(-16) : null);
-    };
-
-    GpgKey.prototype.load_id = function() {
-      return this.key_id_64() || this.fingerprint() || this.username();
-    };
-
-    GpgKey.prototype.username = function() {
-      return this._username;
-    };
-
-    GpgKey.prototype.uid = function() {
-      return this._uid;
-    };
-
-    GpgKey.prototype.all_uids = function() {
-      return this._all_uids;
-    };
-
-    GpgKey.prototype.key_data = function() {
-      return this._key_data;
-    };
-
-    GpgKey.prototype.keyring = function() {
-      return this._keyring;
-    };
-
-    GpgKey.prototype.get_pgp_key_id = function() {
-      return this.key_id_64();
-    };
-
-    GpgKey.prototype.get_pgp_fingerprint = function() {
-      return this.fingerprint().toLowerCase();
-    };
-
-    GpgKey.prototype.is_signed = function() {
-      return !!this._is_signed;
-    };
-
-    GpgKey.prototype.check_is_signed = function(signer, cb) {
-      var args, err, id, out, row, rows, to_find, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      log().debug("+ Check if " + (signer.to_string()) + " signed " + (this.to_string()));
-      id = this.load_id();
-      args = ["--list-sigs", "--with-colons", id];
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "GpgKey.check_is_signed"
-          });
-          _this.gpg({
-            args: args
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return out = arguments[1];
-              };
-            })(),
-            lineno: 124
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          var _i, _len;
-          if (typeof err === "undefined" || err === null) {
-            rows = colgrep({
-              buffer: out,
-              patterns: {
-                0: /^sig$/
-              },
-              separator: /:/
-            });
-            to_find = signer.key_id_64().toUpperCase();
-            for (_i = 0, _len = rows.length; _i < _len; _i++) {
-              row = rows[_i];
-              if (row[4] === to_find) {
-                log().debug("| Found in row: " + (JSON.stringify(row)));
-                _this._is_signed = true;
-                break;
-              }
-            }
-          }
-          log().debug("- Check -> " + _this._is_signed);
-          return cb(err, _this._is_signed);
-        };
-      })(this));
-    };
-
-    GpgKey.prototype.find = function(cb) {
-      var args, err, fp, out, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      (function(_this) {
-        return (function(__iced_k) {
-          if ((fp = _this.fingerprint()) != null) {
-            args = ["-" + (_this._secret ? 'K' : 'k'), "--with-colons", fp];
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                funcname: "GpgKey.find"
-              });
-              _this.gpg({
-                args: args,
-                quiet: true
-              }, __iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    err = arguments[0];
-                    return out = arguments[1];
-                  };
-                })(),
-                lineno: 142
-              }));
-              __iced_deferrals._fulfill();
-            })(function() {
-              return __iced_k(typeof err !== "undefined" && err !== null ? err = new E.NotFoundError("Key for " + (_this.to_string()) + " not found") : void 0);
-            });
-          } else {
-            return __iced_k(err = new E.NoFingerprintError("No fingerprint given for " + _this._username));
-          }
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err);
-        };
-      })(this));
-    };
-
-    GpgKey.prototype.check_sig = function(signing_key, cb) {
-      var args, err, out, rows, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      args = ['--list-sigs', '--with-colon', this.fingerprint()];
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "GpgKey.check_sig"
-          });
-          _this.gpg({
-            args: args
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return out = arguments[1];
-              };
-            })(),
-            lineno: 154
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          if (typeof err === "undefined" || err === null) {
-            rows = colgrep({
-              buffer: out,
-              patterns: {
-                0: /^sub$/,
-                4: new RegExp("^" + (signing_key.key_id_64()) + "$", "i")
-              }
-            });
-            if (rows.length === 0) {
-              err = new E.VerifyError("No signature of " + (_this.to_string()) + " by " + (signing_key.to_string()));
-            }
-          }
-          return cb(err);
-        };
-      })(this));
-    };
-
-    GpgKey.prototype.set_keyring = function(r) {
-      return this._keyring = r;
-    };
-
-    GpgKey.prototype.to_string = function() {
-      return [this.username(), this.key_id_64()].join("/");
-    };
-
-    GpgKey.prototype.gpg = function(gargs, cb) {
-      return this.keyring().gpg(gargs, cb);
-    };
-
-    GpgKey.prototype.save = function(cb) {
-      var args, err, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      args = ["--import"];
-      if (this._secret) {
-        args.push("--import-options", "import-local-sigs");
-      }
-      log().debug("| Save key " + (this.to_string()) + " to " + (this.keyring().to_string()));
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "GpgKey.save"
-          });
-          _this.gpg({
-            args: args,
-            stdin: _this._key_data,
-            quiet: true,
-            secret: _this._secret
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                return err = arguments[0];
-              };
-            })(),
-            lineno: 184
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          _this._state = states.SAVED;
-          return cb(err);
-        };
-      })(this));
-    };
-
-    GpgKey.prototype.load = function(cb) {
-      var args, err, esc, fp, id, l, out, uids, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      id = this.load_id();
-      esc = make_esc(cb, "GpgKey::load");
-      args = [(this._secret ? "--export-secret-key" : "--export"), "--export-options", "export-local-sigs", "-a", id];
-      log().debug("| Load key " + (this.to_string()) + " from " + (this.keyring().to_string()) + " (secret=" + this._secret + ")");
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "GpgKey.load"
-          });
-          _this.gpg({
-            args: args
-          }, esc(__iced_deferrals.defer({
-            assign_fn: (function(__slot_1) {
-              return function() {
-                return __slot_1._key_data = arguments[0];
-              };
-            })(_this),
-            lineno: 201
-          })));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            if (_this.fingerprint() == null) {
-              log().debug("+ lookup fingerprint");
-              args = ["-k", "--fingerprint", "--with-colons", id];
-              (function(__iced_k) {
-                __iced_deferrals = new iced.Deferrals(__iced_k, {
-                  parent: ___iced_passed_deferral,
-                  filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                  funcname: "GpgKey.load"
-                });
-                _this.gpg({
-                  args: args
-                }, esc(__iced_deferrals.defer({
-                  assign_fn: (function() {
-                    return function() {
-                      return out = arguments[0];
-                    };
-                  })(),
-                  lineno: 206
-                })));
-                __iced_deferrals._fulfill();
-              })(function() {
-                fp = list_fingerprints(out.toString('utf8'));
-                return __iced_k((l = fp.length) === 0 ? err = new E.GpgError("Couldn't find GPG fingerprint for " + id) : l > 1 ? err = new E.GpgError("Found more than one (#l) keys for " + id) : (_this._state = states.LOADED, _this._fingerprint = fp[0], log().debug("- Map " + id + " -> " + _this._fingerprint + " via gpg")));
-              });
-            } else {
-              return __iced_k();
-            }
-          })(function() {
-            (function(__iced_k) {
-              if (_this.uid() == null) {
-                log().debug("+ lookup UID");
-                (function(__iced_k) {
-                  __iced_deferrals = new iced.Deferrals(__iced_k, {
-                    parent: ___iced_passed_deferral,
-                    filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                    funcname: "GpgKey.load"
-                  });
-                  _this.read_uids_from_key(esc(__iced_deferrals.defer({
-                    assign_fn: (function() {
-                      return function() {
-                        return uids = arguments[0];
-                      };
-                    })(),
-                    lineno: 219
-                  })));
-                  __iced_deferrals._fulfill();
-                })(function() {
-                  l = uids.length;
-                  if (l === 0) {
-                    log().debug("| weird; no UIDs found");
-                  } else {
-                    if (l > 1) {
-                      log().debug("| got back more than one UID; using the first: (" + (JSON.stringify(uids)) + ")");
-                    }
-                    _this._uid = uids[0];
-                    log().debug(" - Map " + id + " -> " + _this._uid + " via gpg");
-                  }
-                  _this._all_uids = uids;
-                  return __iced_k(log().debug("- looked up UID"));
-                });
-              } else {
-                return __iced_k();
-              }
-            })(function() {
-              return cb(err);
-            });
-          });
-        };
-      })(this));
-    };
-
-    GpgKey.prototype.remove = function(cb) {
-      var args, err, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      args = [(this._secret ? "--delete-secret-and-public-key" : "--delete-keys"), "--batch", "--yes", this.fingerprint()];
-      log().debug("| Delete key " + (this.to_string()) + " from " + (this.keyring().to_string()));
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "GpgKey.remove"
-          });
-          _this.gpg({
-            args: args
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                return err = arguments[0];
-              };
-            })(),
-            lineno: 242
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err);
-        };
-      })(this));
-    };
-
-    GpgKey.prototype.read_uids_from_key = function(cb) {
-      var args, err, fp, tmp, uids, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      fp = this.fingerprint();
-      log().debug("+ read_uids_from_keys " + fp);
-      uids = null;
-      (function(_this) {
-        return (function(__iced_k) {
-          if ((uids = _this._my_userids) != null) {
-            return __iced_k(log().debug("| hit cache"));
-          } else {
-            args = {
-              fingerprint: fp
-            };
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                funcname: "GpgKey.read_uids_from_key"
-              });
-              _this.keyring().read_uids_from_key(args, __iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    err = arguments[0];
-                    return tmp = arguments[1];
-                  };
-                })(),
-                lineno: 256
-              }));
-              __iced_deferrals._fulfill();
-            })(function() {
-              return __iced_k(uids = _this._my_userids = tmp);
-            });
-          }
-        });
-      })(this)((function(_this) {
-        return function() {
-          log().debug("| got: " + (uids != null ? JSON.stringify(uids) : null));
-          log().debug("- read_uids_from_key -> " + err);
-          return cb(err, uids);
-        };
-      })(this));
-    };
-
-    GpgKey.prototype.sign_key = function(_arg, cb) {
-      var args, err, hsk, signer, skip, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      signer = _arg.signer;
-      log().debug("| GPG-signing " + (this.username()) + "'s key with your key");
-      args = ["--sign-key", "--batch", "--yes"];
-      skip = false;
-      err = null;
-      (function(_this) {
-        return (function(__iced_k) {
-          if (signer != null) {
-            return __iced_k(args.push("-u", signer.fingerprint()));
-          } else {
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                funcname: "GpgKey.sign_key"
-              });
-              _this.keyring().has_signing_key(__iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    err = arguments[0];
-                    return hsk = arguments[1];
-                  };
-                })(),
-                lineno: 272
-              }));
-              __iced_deferrals._fulfill();
-            })(function() {
-              return __iced_k(err != null ? skip = true : !hsk ? (log().info("Not trying to sign key " + (_this.to_string()) + " since there's no signing key available"), skip = true) : void 0);
-            });
-          }
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            if (!skip) {
-              args.push(_this.fingerprint());
-              (function(__iced_k) {
-                __iced_deferrals = new iced.Deferrals(__iced_k, {
-                  parent: ___iced_passed_deferral,
-                  filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                  funcname: "GpgKey.sign_key"
-                });
-                _this.gpg({
-                  args: args,
-                  quiet: true
-                }, __iced_deferrals.defer({
-                  assign_fn: (function() {
-                    return function() {
-                      return err = arguments[0];
-                    };
-                  })(),
-                  lineno: 279
-                }));
-                __iced_deferrals._fulfill();
-              })(__iced_k);
-            } else {
-              return __iced_k();
-            }
-          })(function() {
-            return cb(err);
-          });
-        };
-      })(this));
-    };
-
-    GpgKey.prototype.commit = function(_arg, cb) {
-      var esc, ring, sign_key, signer, try_sign, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      signer = _arg.signer, sign_key = _arg.sign_key, ring = _arg.ring;
-      esc = make_esc(cb, "GpgKey::commit");
-      try_sign = sign_key || (signer != null);
-      (function(_this) {
-        return (function(__iced_k) {
-          if (_this.keyring().is_temporary()) {
-            log().debug("+ " + (_this.to_string()) + ": Commit temporary key");
-            (function(__iced_k) {
-              if (try_sign) {
-                (function(__iced_k) {
-                  __iced_deferrals = new iced.Deferrals(__iced_k, {
-                    parent: ___iced_passed_deferral,
-                    filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                    funcname: "GpgKey.commit"
-                  });
-                  _this.sign_key({
-                    signer: signer
-                  }, esc(__iced_deferrals.defer({
-                    lineno: 290
-                  })));
-                  __iced_deferrals._fulfill();
-                })(__iced_k);
-              } else {
-                return __iced_k();
-              }
-            })(function() {
-              (function(__iced_k) {
-                __iced_deferrals = new iced.Deferrals(__iced_k, {
-                  parent: ___iced_passed_deferral,
-                  filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                  funcname: "GpgKey.commit"
-                });
-                _this.load(esc(__iced_deferrals.defer({
-                  lineno: 291
-                })));
-                __iced_deferrals._fulfill();
-              })(function() {
-                (function(__iced_k) {
-                  __iced_deferrals = new iced.Deferrals(__iced_k, {
-                    parent: ___iced_passed_deferral,
-                    filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                    funcname: "GpgKey.commit"
-                  });
-                  _this.remove(esc(__iced_deferrals.defer({
-                    lineno: 292
-                  })));
-                  __iced_deferrals._fulfill();
-                })(function() {
-                  ring || (ring = master_ring());
-                  (function(__iced_k) {
-                    __iced_deferrals = new iced.Deferrals(__iced_k, {
-                      parent: ___iced_passed_deferral,
-                      filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                      funcname: "GpgKey.commit"
-                    });
-                    (_this.copy_to_keyring(ring)).save(esc(__iced_deferrals.defer({
-                      lineno: 294
-                    })));
-                    __iced_deferrals._fulfill();
-                  })(function() {
-                    return __iced_k(log().debug("- " + (_this.to_string()) + ": Commit temporary key"));
-                  });
-                });
-              });
-            });
-          } else {
-            (function(__iced_k) {
-              if (!_this._is_signed) {
-                (function(__iced_k) {
-                  if (try_sign) {
-                    log().debug("| " + (_this.to_string()) + ": signing key, since it wasn't signed");
-                    (function(__iced_k) {
-                      __iced_deferrals = new iced.Deferrals(__iced_k, {
-                        parent: ___iced_passed_deferral,
-                        filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                        funcname: "GpgKey.commit"
-                      });
-                      _this.sign_key({
-                        signer: signer
-                      }, esc(__iced_deferrals.defer({
-                        lineno: 299
-                      })));
-                      __iced_deferrals._fulfill();
-                    })(__iced_k);
-                  } else {
-                    return __iced_k(log().debug("| " + (_this.to_string()) + ": key wasn't signed, but signing was skipping"));
-                  }
-                })(__iced_k);
-              } else {
-                return __iced_k(log().debug("| " + (_this.to_string()) + ": key was previously commited; noop"));
-              }
-            })(__iced_k);
-          }
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(null);
-        };
-      })(this));
-    };
-
-    GpgKey.prototype.rollback = function(cb) {
-      var err, s, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      s = this.to_string();
-      err = null;
-      (function(_this) {
-        return (function(__iced_k) {
-          if (globals().get_preserve_tmp_keyring() && _this.keyring().is_temporary()) {
-            return __iced_k(log().debug("| " + s + ": preserving temporary keyring by command-line flag"));
-          } else {
-            (function(__iced_k) {
-              if (_this.keyring().is_temporary()) {
-                log().debug("| " + s + ": Rolling back temporary key");
-                (function(__iced_k) {
-                  __iced_deferrals = new iced.Deferrals(__iced_k, {
-                    parent: ___iced_passed_deferral,
-                    filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                    funcname: "GpgKey.rollback"
-                  });
-                  _this.remove(__iced_deferrals.defer({
-                    assign_fn: (function() {
-                      return function() {
-                        return err = arguments[0];
-                      };
-                    })(),
-                    lineno: 315
-                  }));
-                  __iced_deferrals._fulfill();
-                })(__iced_k);
-              } else {
-                return __iced_k(log().debug("| " + s + ": no need to rollback key, it's permanent"));
-              }
-            })(__iced_k);
-          }
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err);
-        };
-      })(this));
-    };
-
-    GpgKey.prototype.to_data_dict = function() {
-      var d, k, v;
-      d = {};
-      for (k in this) {
-        v = this[k];
-        if (k[0] === '_') {
-          d[k.slice(1)] = v;
-        }
-      }
-      return d;
-    };
-
-    GpgKey.prototype.copy_to_keyring = function(keyring) {
-      return keyring.make_key(this.to_data_dict());
-    };
-
-    GpgKey.prototype._find_key_in_stderr = function(which, buf) {
-      var d, err, fingerprint, ki64, m;
-      err = ki64 = fingerprint = null;
-      d = buf.toString('utf8');
-      if ((m = d.match(/Primary key fingerprint: (.*)/)) != null) {
-        fingerprint = m[1];
-      } else if ((m = d.match(/using [RD]SA key ([A-F0-9]{16})/)) != null) {
-        ki64 = m[1];
-      } else {
-        err = new E.VerifyError("" + which + ": can't parse PGP output in verify signature");
-      }
-      return {
-        err: err,
-        ki64: ki64,
-        fingerprint: fingerprint
-      };
-    };
-
-    GpgKey.prototype._verify_key_id_64 = function(_arg, cb) {
-      var a, b, err, ki64, m, out, sig, which, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      ki64 = _arg.ki64, which = _arg.which, sig = _arg.sig;
-      log().debug("+ GpgKey::_verify_key_id_64: " + which + ": " + ki64 + " vs " + (this.fingerprint()));
-      err = null;
-      (function(_this) {
-        return (function(__iced_k) {
-          if (ki64 !== _this.key_id_64()) {
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                funcname: "GpgKey._verify_key_id_64"
-              });
-              _this.gpg({
-                args: ["--fingerprint", "--keyid-format", "long", ki64]
-              }, __iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    err = arguments[0];
-                    return out = arguments[1];
-                  };
-                })(),
-                lineno: 348
-              }));
-              __iced_deferrals._fulfill();
-            })(function() {
-              return __iced_k(err != null ? void 0 : (m = out.toString('utf8').match(/Key fingerprint = ([A-F0-9 ]+)/)) == null ? err = new E.VerifyError("Querying for a fingerprint failed") : !(a = strip(m[1])) === (b = _this.fingerprint()) ? err = new E.VerifyError("Fingerprint mismatch: " + a + " != " + b) : log().debug("| Successful map of " + ki64 + " -> " + (_this.fingerprint())));
-            });
-          } else {
-            return __iced_k();
-          }
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            if (err == null) {
-              (function(__iced_k) {
-                __iced_deferrals = new iced.Deferrals(__iced_k, {
-                  parent: ___iced_passed_deferral,
-                  filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                  funcname: "GpgKey._verify_key_id_64"
-                });
-                _this.keyring().assert_no_collision(ki64, __iced_deferrals.defer({
-                  assign_fn: (function() {
-                    return function() {
-                      return err = arguments[0];
-                    };
-                  })(),
-                  lineno: 358
-                }));
-                __iced_deferrals._fulfill();
-              })(__iced_k);
-            } else {
-              return __iced_k();
-            }
-          })(function() {
-            log().debug("- GpgKey::_verify_key_id_64: " + which + ": " + ki64 + " vs " + (_this.fingerprint()) + " -> " + err);
-            return cb(err);
-          });
-        };
-      })(this));
-    };
-
-    GpgKey.prototype.verify_sig = function(_arg, cb) {
-      var a, args, b, err, fp, msg, out, payload, sig, which, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      which = _arg.which, sig = _arg.sig, payload = _arg.payload;
-      log().debug("+ GpgKey::verify_sig " + which);
-      err = null;
-      args = {
-        query: this.fingerprint(),
-        single: true,
-        sig: sig,
-        no_json: true,
-        keyblock: this._key_data,
-        secret: this._secret
-      };
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "GpgKey.verify_sig"
-          });
-          _this.keyring().oneshot_verify(args, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                out = arguments[1];
-                return fp = arguments[2];
-              };
-            })(),
-            lineno: 375
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          if ((err == null) && !(_this._fingerprint != null) && (typeof fp !== "undefined" && fp !== null)) {
-            _this._fingerprint = fp;
-            log().debug("| Setting fingerprint to " + fp + " as a result of oneshot_verify");
-          }
-          msg = err != null ? "signature verification failed" : (_this._fingerprint != null) && (_this._fingerprint.toLowerCase() !== fp.toLowerCase()) ? "Wrong key fingerprint; was the server lying? " + _this._fingerprint + " != " + fp : (a = out.toString('utf8')) !== (b = payload) ? "wrong payload: " + a + " != " + b + " (" + a.length + " v " + b.length + ")" : null;
-          if (msg != null) {
-            err = new E.VerifyError("" + which + ": " + msg);
-          }
-          log().debug("- GpgKey::verify_sig " + which + " -> " + err);
-          return cb(err);
-        };
-      })(this));
-    };
-
-    return GpgKey;
-
-  })();
-
-  exports.BaseKeyRing = BaseKeyRing = (function(_super) {
-    __extends(BaseKeyRing, _super);
-
-    function BaseKeyRing() {
-      BaseKeyRing.__super__.constructor.call(this, {
-        cmd: globals().get_gpg_cmd()
-      });
-      this._has_signing_key = null;
-    }
-
-    BaseKeyRing.prototype.has_signing_key = function(cb) {
-      var err, ids, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      err = null;
-      (function(_this) {
-        return (function(__iced_k) {
-          if (_this._has_signing_key == null) {
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                funcname: "BaseKeyRing.has_signing_key"
-              });
-              _this.find_secret_keys({}, __iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    err = arguments[0];
-                    return ids = arguments[1];
-                  };
-                })(),
-                lineno: 407
-              }));
-              __iced_deferrals._fulfill();
-            })(function() {
-              return __iced_k(err != null ? log().warn("Issue listing secret keys: " + err.message) : _this._has_signing_key = ids.length > 0);
-            });
-          } else {
-            return __iced_k();
-          }
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err, _this._has_signing_key);
-        };
-      })(this));
-    };
-
-    BaseKeyRing.prototype.make_key = function(opts) {
-      var klass, ret;
-      klass = globals().get_key_klass();
-      ret = new klass(opts);
-      ret.set_keyring(this);
-      return ret;
-    };
-
-    BaseKeyRing.prototype.is_temporary = function() {
-      return false;
-    };
-
-    BaseKeyRing.prototype.tmp_dir = function() {
-      return os.tmpdir();
-    };
-
-    BaseKeyRing.prototype.make_oneshot_ring_2 = function(_arg, cb) {
-      var err, esc, fps, keyblock, n, secret, single, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      keyblock = _arg.keyblock, single = _arg.single, secret = _arg.secret;
-      esc = make_esc(cb, "BaseKeyRing::_make_oneshot_ring_2");
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "BaseKeyRing.make_oneshot_ring_2"
-          });
-          _this.gpg({
-            args: ["--import"],
-            stdin: keyblock,
-            quiet: true,
-            secret: secret
-          }, esc(__iced_deferrals.defer({
-            lineno: 431
-          })));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            __iced_deferrals = new iced.Deferrals(__iced_k, {
-              parent: ___iced_passed_deferral,
-              filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-              funcname: "BaseKeyRing.make_oneshot_ring_2"
-            });
-            _this.list_fingerprints(esc(__iced_deferrals.defer({
-              assign_fn: (function() {
-                return function() {
-                  return fps = arguments[0];
-                };
-              })(),
-              lineno: 432
-            })));
-            __iced_deferrals._fulfill();
-          })(function() {
-            n = fps.length;
-            err = n === 0 ? new E.NotFoundError("key import failed") : single && n > 1 ? new E.PgpIdCollisionError("too many keys found: " + n) : (_this._fingerprint = fps[0], _this._key_id_64 = _this._fingerprint.slice(-16), null);
-            return cb(err, _this._fingerprint);
-          });
-        };
-      })(this));
-    };
-
-    BaseKeyRing.prototype.make_oneshot_ring = function(_arg, cb) {
-      var args, e2, err, esc, fp, keyblock, query, ring, secret, single, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      query = _arg.query, single = _arg.single, keyblock = _arg.keyblock, secret = _arg.secret;
-      esc = make_esc(cb, "BaseKeyRing::make_oneshot_ring");
-      (function(_this) {
-        return (function(__iced_k) {
-          if (keyblock == null) {
-            args = ["-a", "--export", query];
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                funcname: "BaseKeyRing.make_oneshot_ring"
-              });
-              _this.gpg({
-                args: args
-              }, esc(__iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    return keyblock = arguments[0];
-                  };
-                })(),
-                lineno: 449
-              })));
-              __iced_deferrals._fulfill();
-            })(__iced_k);
-          } else {
-            return __iced_k();
-          }
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            __iced_deferrals = new iced.Deferrals(__iced_k, {
-              parent: ___iced_passed_deferral,
-              filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-              funcname: "BaseKeyRing.make_oneshot_ring"
-            });
-            TmpOneShotKeyRing.make(esc(__iced_deferrals.defer({
-              assign_fn: (function() {
-                return function() {
-                  return ring = arguments[0];
-                };
-              })(),
-              lineno: 450
-            })));
-            __iced_deferrals._fulfill();
-          })(function() {
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                funcname: "BaseKeyRing.make_oneshot_ring"
-              });
-              ring.make_oneshot_ring_2({
-                keyblock: keyblock,
-                single: single,
-                secret: secret
-              }, __iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    err = arguments[0];
-                    return fp = arguments[1];
-                  };
-                })(),
-                lineno: 451
-              }));
-              __iced_deferrals._fulfill();
-            })(function() {
-              (function(__iced_k) {
-                if (typeof err !== "undefined" && err !== null) {
-                  (function(__iced_k) {
-                    __iced_deferrals = new iced.Deferrals(__iced_k, {
-                      parent: ___iced_passed_deferral,
-                      filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                      funcname: "BaseKeyRing.make_oneshot_ring"
-                    });
-                    ring.nuke(__iced_deferrals.defer({
-                      assign_fn: (function() {
-                        return function() {
-                          return e2 = arguments[0];
-                        };
-                      })(),
-                      lineno: 453
-                    }));
-                    __iced_deferrals._fulfill();
-                  })(function() {
-                    return __iced_k(typeof e2 !== "undefined" && e2 !== null ? log().warn("Error cleaning up keyring after failure: " + e2.message) : void 0);
-                  });
-                } else {
-                  return __iced_k();
-                }
-              })(function() {
-                return cb(err, ring, fp);
-              });
-            });
-          });
-        };
-      })(this));
-    };
-
-    BaseKeyRing.prototype.find_keys_full = function(_arg, cb) {
-      var args, err, index, k, out, query, res, secret, sigs, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      query = _arg.query, secret = _arg.secret, sigs = _arg.sigs;
-      args = ["--with-colons", "--fingerprint"];
-      args.push(secret ? "-K" : "-k");
-      if (query) {
-        args.push(query);
-      }
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "BaseKeyRing.find_keys_full"
-          });
-          _this.gpg({
-            args: args,
-            list_keys: true
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return out = arguments[1];
-              };
-            })(),
-            lineno: 463
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          res = null;
-          if (typeof err === "undefined" || err === null) {
-            index = (new Parser(out.toString('utf8'))).parse();
-            res = (function() {
-              var _i, _len, _ref3, _results;
-              _ref3 = index.keys();
-              _results = [];
-              for (_i = 0, _len = _ref3.length; _i < _len; _i++) {
-                k = _ref3[_i];
-                _results.push(this.make_key(k.to_dict({
-                  secret: secret
-                })));
-              }
-              return _results;
-            }).call(_this);
-          }
-          return cb(err, res);
-        };
-      })(this));
-    };
-
-    BaseKeyRing.prototype.find_keys = function(_arg, cb) {
-      var args, err, id64s, out, query, row, rows, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      query = _arg.query;
-      args = ["-k", "--with-colons"];
-      if (query) {
-        args.push(query);
-      }
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "BaseKeyRing.find_keys"
-          });
-          _this.gpg({
-            args: args,
-            list_keys: true
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return out = arguments[1];
-              };
-            })(),
-            lineno: 475
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          id64s = null;
-          if (typeof err === "undefined" || err === null) {
-            rows = colgrep({
-              buffer: out,
-              patterns: {
-                0: /^pub$/
-              },
-              separator: /:/
-            });
-            id64s = (function() {
-              var _i, _len, _results;
-              _results = [];
-              for (_i = 0, _len = rows.length; _i < _len; _i++) {
-                row = rows[_i];
-                _results.push(row[4]);
-              }
-              return _results;
-            })();
-          }
-          return cb(err, id64s);
-        };
-      })(this));
-    };
-
-    BaseKeyRing.prototype.find_secret_keys = function(_arg, cb) {
-      var args, err, id64s, out, query, row, rows, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      query = _arg.query;
-      args = ["-K", "--with-colons"];
-      if (query) {
-        args.push(query);
-      }
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "BaseKeyRing.find_secret_keys"
-          });
-          _this.gpg({
-            args: args
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return out = arguments[1];
-              };
-            })(),
-            lineno: 489
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          id64s = null;
-          if (typeof err === "undefined" || err === null) {
-            rows = colgrep({
-              buffer: out,
-              patterns: {
-                0: /^sec$/
-              },
-              separator: /:/
-            });
-            id64s = (function() {
-              var _i, _len, _results;
-              _results = [];
-              for (_i = 0, _len = rows.length; _i < _len; _i++) {
-                row = rows[_i];
-                _results.push(row[4]);
-              }
-              return _results;
-            })();
-          }
-          return cb(err, id64s);
-        };
-      })(this));
-    };
-
-    BaseKeyRing.prototype.list_fingerprints = function(cb) {
-      var err, out, ret, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "BaseKeyRing.list_fingerprints"
-          });
-          _this.gpg({
-            args: ["--with-colons", "--fingerprint"]
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return out = arguments[1];
-              };
-            })(),
-            lineno: 500
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          ret = [];
-          if (typeof err === "undefined" || err === null) {
-            ret = list_fingerprints(out.toString('utf8'));
-          }
-          return cb(err, ret);
-        };
-      })(this));
-    };
-
-    BaseKeyRing.prototype.list_keys = function(cb) {
-      var err, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "BaseKeyRing.list_keys"
-          });
-          _this.find_keys({}, __iced_deferrals.defer({
-            assign_fn: (function(__slot_1) {
-              return function() {
-                err = arguments[0];
-                return __slot_1._all_id_64s = arguments[1];
-              };
-            })(_this),
-            lineno: 509
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err, _this._all_id_64s);
-        };
-      })(this));
-    };
-
-    BaseKeyRing.prototype.safe_inspect = function(gargs) {
-      var d, k, v;
-      d = {};
-      for (k in gargs) {
-        v = gargs[k];
-        if ((k === 'stdin') && gargs.secret) {
-          v = "<redacted>";
-        }
-        d[k] = v;
-      }
-      return util.inspect(d);
-    };
-
-    BaseKeyRing.prototype.gpg = function(gargs, cb) {
-      var err, res, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      log().debug("| Call to " + this.CMD + ": " + (this.safe_inspect(gargs)));
-      if (gargs.quiet && globals().get_debug()) {
-        gargs.quiet = false;
-      }
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "BaseKeyRing.gpg"
-          });
-          _this.run(gargs, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return res = arguments[1];
-              };
-            })(),
-            lineno: 527
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err, res);
-        };
-      })(this));
-    };
-
-    BaseKeyRing.prototype.index2 = function(opts, cb) {
-      var args, err, i, k, out, p, q, w, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      k = (opts != null ? opts.secret : void 0) ? '-K' : '-k';
-      args = [k, "--with-fingerprint", "--with-colons"];
-      if ((q = opts.query) != null) {
-        args.push(q);
-      }
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "BaseKeyRing.index2"
-          });
-          _this.gpg({
-            args: args,
-            quiet: true
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return out = arguments[1];
-              };
-            })(),
-            lineno: 536
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          i = w = null;
-          if (typeof err === "undefined" || err === null) {
-            p = new Parser(out.toString('utf8'));
-            i = p.parse();
-            w = p.warnings();
-          }
-          return cb(err, i, w);
-        };
-      })(this));
-    };
-
-    BaseKeyRing.prototype.read_uids_from_key = function(_arg, cb) {
-      var err, fingerprint, index, opts, query, ret, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      fingerprint = _arg.fingerprint, query = _arg.query;
-      query = fingerprint || query;
-      opts = {
-        query: query
-      };
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "BaseKeyRing.read_uids_from_key"
-          });
-          _this.index2(opts, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return index = arguments[1];
-              };
-            })(),
-            lineno: 549
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          var _ref3, _ref4;
-          ret = typeof err !== "undefined" && err !== null ? null : typeof index !== "undefined" && index !== null ? (_ref3 = index.keys()) != null ? (_ref4 = _ref3[0]) != null ? _ref4.userids() : void 0 : void 0 : void 0;
-          return cb(err, ret);
-        };
-      })(this));
-    };
-
-    BaseKeyRing.prototype.index = function(cb) {
-      return this.index2({}, cb);
-    };
-
-    BaseKeyRing.prototype.oneshot_verify_2 = function(_arg, cb) {
-      var err, file, no_json, raw, ret, ring, sig, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      ring = _arg.ring, sig = _arg.sig, file = _arg.file, no_json = _arg.no_json;
-      err = ret = null;
-      (function(_this) {
-        return (function(__iced_k) {
-          if (file != null) {
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                funcname: "BaseKeyRing.oneshot_verify_2"
-              });
-              ring.verify_sig_on_file({
-                sig: sig,
-                file: file
-              }, __iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    return err = arguments[0];
-                  };
-                })(),
-                lineno: 562
-              }));
-              __iced_deferrals._fulfill();
-            })(__iced_k);
-          } else {
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                funcname: "BaseKeyRing.oneshot_verify_2"
-              });
-              ring.verify_and_decrypt_sig({
-                sig: sig
-              }, __iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    err = arguments[0];
-                    return raw = arguments[1];
-                  };
-                })(),
-                lineno: 564
-              }));
-              __iced_deferrals._fulfill();
-            })(function() {
-              (function(__iced_k) {
-                if (err != null) {
-                  return __iced_k();
-                } else {
-                  (function(__iced_k) {
-                    if (no_json) {
-                      return __iced_k(ret = raw);
-                    } else {
-                      (function(__iced_k) {
-                        __iced_deferrals = new iced.Deferrals(__iced_k, {
-                          parent: ___iced_passed_deferral,
-                          filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                          funcname: "BaseKeyRing.oneshot_verify_2"
-                        });
-                        a_json_parse(raw, __iced_deferrals.defer({
-                          assign_fn: (function() {
-                            return function() {
-                              err = arguments[0];
-                              return ret = arguments[1];
-                            };
-                          })(),
-                          lineno: 568
-                        }));
-                        __iced_deferrals._fulfill();
-                      })(__iced_k);
-                    }
-                  })(__iced_k);
-                }
-              })(__iced_k);
-            });
-          }
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err, ret);
-        };
-      })(this));
-    };
-
-    BaseKeyRing.prototype.oneshot_verify = function(_arg, cb) {
-      var clean, esc, file, fp, keyblock, no_json, query, ret, ring, secret, sig, single, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      query = _arg.query, single = _arg.single, sig = _arg.sig, file = _arg.file, no_json = _arg.no_json, keyblock = _arg.keyblock, secret = _arg.secret;
-      log().debug("+ oneshot verify");
-      ring = null;
-      clean = function(cb) {
-        var err, ___iced_passed_deferral1, __iced_deferrals, __iced_k;
-        __iced_k = __iced_k_noop;
-        ___iced_passed_deferral1 = iced.findDeferral(arguments);
-        log().debug("| oneshot clean");
-        (function(_this) {
-          return (function(__iced_k) {
-            if (ring != null) {
-              (function(__iced_k) {
-                __iced_deferrals = new iced.Deferrals(__iced_k, {
-                  parent: ___iced_passed_deferral1,
-                  filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced"
-                });
-                ring.nuke(__iced_deferrals.defer({
-                  assign_fn: (function() {
-                    return function() {
-                      return err = arguments[0];
-                    };
-                  })(),
-                  lineno: 579
-                }));
-                __iced_deferrals._fulfill();
-              })(function() {
-                return __iced_k(typeof err !== "undefined" && err !== null ? log().warn("Error cleaning up 1-shot ring: " + err.message) : void 0);
-              });
-            } else {
-              return __iced_k();
-            }
-          });
-        })(this)((function(_this) {
-          return function() {
-            return cb();
-          };
-        })(this));
-      };
-      cb = chain(cb, clean);
-      esc = make_esc(cb, "BaseKeyRing::oneshot_verify");
-      ret = null;
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "BaseKeyRing.oneshot_verify"
-          });
-          _this.make_oneshot_ring({
-            query: query,
-            single: single,
-            keyblock: keyblock,
-            secret: secret
-          }, esc(__iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                ring = arguments[0];
-                return fp = arguments[1];
-              };
-            })(),
-            lineno: 585
-          })));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            __iced_deferrals = new iced.Deferrals(__iced_k, {
-              parent: ___iced_passed_deferral,
-              filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-              funcname: "BaseKeyRing.oneshot_verify"
-            });
-            _this.oneshot_verify_2({
-              ring: ring,
-              sig: sig,
-              file: file,
-              no_json: no_json
-            }, esc(__iced_deferrals.defer({
-              assign_fn: (function() {
-                return function() {
-                  return ret = arguments[0];
-                };
-              })(),
-              lineno: 586
-            })));
-            __iced_deferrals._fulfill();
-          })(function() {
-            log().debug("- oneshot verify -> ok! (fp=" + fp + ")");
-            return cb(null, ret, fp);
-          });
-        };
-      })(this));
-    };
-
-    return BaseKeyRing;
-
-  })(GPG);
-
-  exports.MasterKeyRing = MasterKeyRing = (function(_super) {
-    __extends(MasterKeyRing, _super);
-
-    function MasterKeyRing() {
-      return MasterKeyRing.__super__.constructor.apply(this, arguments);
-    }
-
-    MasterKeyRing.prototype.to_string = function() {
-      return "master keyring";
-    };
-
-    MasterKeyRing.prototype.mutate_args = function(gargs) {
-      var h;
-      if ((h = globals().get_home_dir()) != null) {
-        gargs.args = ["--homedir", h].concat(gargs.args);
-        return log().debug("| Mutate GPG args; new args: " + (gargs.args.join(' ')));
-      }
-    };
-
-    return MasterKeyRing;
-
-  })(BaseKeyRing);
-
-  exports.make_ring = function(d) {
-    var klass;
-    klass = d != null ? AltKeyRing : MasterKeyRing;
-    return new klass(d);
-  };
-
-  exports.reset_master_ring = reset_master_ring = function() {
-    return globals().set_master_ring(new MasterKeyRing());
-  };
-
-  exports.master_ring = master_ring = function() {
-    return globals().master_ring();
-  };
-
-  exports.load_key = function(opts, cb) {
-    var err, key, signer, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-    __iced_k = __iced_k_noop;
-    ___iced_passed_deferral = iced.findDeferral(arguments);
-    if ((signer = opts.signer) != null) {
-      delete opts.signer;
-    }
-    key = master_ring().make_key(opts);
-    (function(_this) {
-      return (function(__iced_k) {
-        __iced_deferrals = new iced.Deferrals(__iced_k, {
-          parent: ___iced_passed_deferral,
-          filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-          funcname: "load_key"
-        });
-        key.load(__iced_deferrals.defer({
-          assign_fn: (function() {
-            return function() {
-              return err = arguments[0];
-            };
-          })(),
-          lineno: 621
-        }));
-        __iced_deferrals._fulfill();
-      });
-    })(this)((function(_this) {
-      return function() {
-        (function(__iced_k) {
-          if ((typeof err === "undefined" || err === null) && (signer != null)) {
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                funcname: "load_key"
-              });
-              key.check_is_signed(signer, __iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    return err = arguments[0];
-                  };
-                })(),
-                lineno: 623
-              }));
-              __iced_deferrals._fulfill();
-            })(__iced_k);
-          } else {
-            return __iced_k();
-          }
-        })(function() {
-          return cb(err, key);
-        });
-      };
-    })(this));
-  };
-
-  RingFileBundle = (function() {
-    RingFileBundle.prototype.FILES = {
-      secring: {
-        arg: "secret-keyring",
-        "default": ""
-      },
-      pubring: {
-        arg: "keyring",
-        "default": ""
-      },
-      trustdb: {
-        arg: "trustdb-name",
-        "default": "016770670303010501020000532b0f0c000000000000000000000000000000000000000000000000"
-      }
-    };
-
-    function RingFileBundle(_arg) {
-      var pub_only, w, which, _i, _len;
-      this.dir = _arg.dir, pub_only = _arg.pub_only, this.no_default = _arg.no_default, this.primary = _arg.primary;
-      this._files = {};
-      which = pub_only ? ["pubring"] : ["pubring", "secring", "trustdb"];
-      for (_i = 0, _len = which.length; _i < _len; _i++) {
-        w = which[_i];
-        this._files[w] = this.get_file(w);
-      }
-    }
-
-    RingFileBundle.prototype.get_file = function(which) {
-      return path.join(this.dir, [which, "gpg"].join("."));
-    };
-
-    RingFileBundle.prototype.mutate_args = function(gargs, opts) {
-      var arg, file, prepend, w, _ref3;
-      if (opts == null) {
-        opts = {};
-      }
-      prepend = [];
-      if (this.no_default || opts.no_default) {
-        prepend.push("--no-default-keyring");
-      }
-      _ref3 = this._files;
-      for (w in _ref3) {
-        file = _ref3[w];
-        arg = w === 'pubring' && this.primary ? "primary-keyring" : this.FILES[w].arg;
-        prepend.push("--" + arg, file);
-      }
-      return gargs.args = prepend.concat(gargs.args);
-    };
-
-    RingFileBundle.prototype.touch = function(which, f, cb) {
-      var d, e2, err, fd, ok, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      log().debug("+ Make/check empty " + which + " " + f);
-      ok = true;
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "RingFileBundle.touch"
-          });
-          fs.open(f, "ax", 0x180, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return fd = arguments[1];
-              };
-            })(),
-            lineno: 668
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            if (typeof err === "undefined" || err === null) {
-              log().debug("| Made a new one");
-              d = new Buffer(_this.FILES[which]["default"], "hex");
-              (function(__iced_k) {
-                __iced_deferrals = new iced.Deferrals(__iced_k, {
-                  parent: ___iced_passed_deferral,
-                  filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                  funcname: "RingFileBundle.touch"
-                });
-                fs.write(fd, d, 0, d.length, null, __iced_deferrals.defer({
-                  assign_fn: (function() {
-                    return function() {
-                      return e2 = arguments[0];
-                    };
-                  })(),
-                  lineno: 672
-                }));
-                __iced_deferrals._fulfill();
-              })(function() {
-                return __iced_k(e2 != null ? log().error("Write failed: " + e2.message) : void 0);
-              });
-            } else {
-              return __iced_k(err.code === "EEXIST" ? log().debug("| Found one") : (log().warn("Unexpected error code from file touch " + f + ": " + err.message), ok = false));
-            }
-          })(function() {
-            (function(__iced_k) {
-              if (fd >= 0 && (typeof err === "undefined" || err === null)) {
-                (function(__iced_k) {
-                  __iced_deferrals = new iced.Deferrals(__iced_k, {
-                    parent: ___iced_passed_deferral,
-                    filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                    funcname: "RingFileBundle.touch"
-                  });
-                  fs.close(fd, __iced_deferrals.defer({
-                    assign_fn: (function() {
-                      return function() {
-                        return e2 = arguments[0];
-                      };
-                    })(),
-                    lineno: 680
-                  }));
-                  __iced_deferrals._fulfill();
-                })(function() {
-                  return __iced_k(typeof e2 !== "undefined" && e2 !== null ? log().error("Close failed: " + e2.message) : void 0);
-                });
-              } else {
-                return __iced_k();
-              }
-            })(function() {
-              log().debug("- Made/check empty " + which + " -> " + ok);
-              return cb(null);
-            });
-          });
-        };
-      })(this));
-    };
-
-    RingFileBundle.prototype.touch_all = function(cb) {
-      var esc, f, which, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      esc = make_esc(cb, "RingFileBundle::touch_all");
-      (function(_this) {
-        return (function(__iced_k) {
-          var _i, _k, _keys, _ref3, _results, _while;
-          _ref3 = _this._files;
-          _keys = (function() {
-            var _results1;
-            _results1 = [];
-            for (_k in _ref3) {
-              _results1.push(_k);
-            }
-            return _results1;
-          })();
-          _i = 0;
-          _results = [];
-          _while = function(__iced_k) {
-            var _break, _continue, _next;
-            _break = function() {
-              return __iced_k(_results);
-            };
-            _continue = function() {
-              return iced.trampoline(function() {
-                ++_i;
-                return _while(__iced_k);
-              });
-            };
-            _next = function(__iced_next_arg) {
-              _results.push(__iced_next_arg);
-              return _continue();
-            };
-            if (!(_i < _keys.length)) {
-              return _break();
-            } else {
-              which = _keys[_i];
-              f = _ref3[which];
-              (function(__iced_k) {
-                __iced_deferrals = new iced.Deferrals(__iced_k, {
-                  parent: ___iced_passed_deferral,
-                  filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                  funcname: "RingFileBundle.touch_all"
-                });
-                _this.touch(which, f, esc(__iced_deferrals.defer({
-                  lineno: 690
-                })));
-                __iced_deferrals._fulfill();
-              })(_next);
-            }
-          };
-          _while(__iced_k);
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(null);
-        };
-      })(this));
-    };
-
-    return RingFileBundle;
-
-  })();
-
-  AltKeyRingBase = (function(_super) {
-    __extends(AltKeyRingBase, _super);
-
-    function AltKeyRingBase(dir) {
-      this.dir = dir;
-      AltKeyRingBase.__super__.constructor.call(this);
-      this._rfb = this.make_ring_file_bundle();
-    }
-
-    AltKeyRingBase.prototype.to_string = function() {
-      return "keyring " + this.dir;
-    };
-
-    AltKeyRingBase.prototype.make_ring_file_bundle = function() {
-      return new RingFileBundle({
-        dir: this.dir,
-        no_default: true
-      });
-    };
-
-    AltKeyRingBase.prototype.mkfile = function(n) {
-      return path.join(this.dir, n);
-    };
-
-    AltKeyRingBase.prototype.post_make = function(cb) {
-      return this._rfb.touch_all(cb);
-    };
-
-    AltKeyRingBase.make = function(klass, dir, cb, opts) {
-      var err, made, mode, nxt, parent, so, targ, tkr, tmp, type, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      opts || (opts = {});
-      tmp = !opts.perm;
-      type = tmp ? "temporary" : "permanent";
-      parent = path.dirname(dir);
-      nxt = path.basename(dir);
-      mode = 0x1c0;
-      log().debug("+ Make new " + type + " keychain");
-      log().debug("| mkdir_p parent " + parent);
-      targ = tmp ? parent : dir;
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "AltKeyRingBase.make"
-          });
-          mkdir_p(targ, mode, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return made = arguments[1];
-              };
-            })(),
-            lineno: 736
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          (function(__iced_k) {
-            if (err != null) {
-              return __iced_k(log().error("Error making keyring dir " + parent + ": " + err.message));
-            } else {
-              (function(__iced_k) {
-                if (made) {
-                  return __iced_k(log().info("Creating " + type + " keyring dir: " + targ));
-                } else {
-                  (function(__iced_k) {
-                    __iced_deferrals = new iced.Deferrals(__iced_k, {
-                      parent: ___iced_passed_deferral,
-                      filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                      funcname: "AltKeyRingBase.make"
-                    });
-                    fs.stat(targ, __iced_deferrals.defer({
-                      assign_fn: (function() {
-                        return function() {
-                          err = arguments[0];
-                          return so = arguments[1];
-                        };
-                      })(),
-                      lineno: 742
-                    }));
-                    __iced_deferrals._fulfill();
-                  })(function() {
-                    (function(__iced_k) {
-                      if (err != null) {
-                        return __iced_k(log().error("Failed to stat directory " + targ + ": " + err.message));
-                      } else {
-                        (function(__iced_k) {
-                          if ((so.mode & 0x1ff) !== mode) {
-                            (function(__iced_k) {
-                              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                                parent: ___iced_passed_deferral,
-                                filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                                funcname: "AltKeyRingBase.make"
-                              });
-                              fs.chmod(targ, mode, __iced_deferrals.defer({
-                                assign_fn: (function() {
-                                  return function() {
-                                    return err = arguments[0];
-                                  };
-                                })(),
-                                lineno: 746
-                              }));
-                              __iced_deferrals._fulfill();
-                            })(function() {
-                              return __iced_k(err != null ? log().error("Failed to change mode of " + parent + " to " + mode + ": " + err.message) : void 0);
-                            });
-                          } else {
-                            return __iced_k();
-                          }
-                        })(__iced_k);
-                      }
-                    })(__iced_k);
-                  });
-                }
-              })(__iced_k);
-            }
-          })(function() {
-            (function(__iced_k) {
-              if ((err == null) && tmp) {
-                dir = path.join(parent, nxt);
-                (function(__iced_k) {
-                  __iced_deferrals = new iced.Deferrals(__iced_k, {
-                    parent: ___iced_passed_deferral,
-                    filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                    funcname: "AltKeyRingBase.make"
-                  });
-                  fs.mkdir(dir, mode, __iced_deferrals.defer({
-                    assign_fn: (function() {
-                      return function() {
-                        return err = arguments[0];
-                      };
-                    })(),
-                    lineno: 754
-                  }));
-                  __iced_deferrals._fulfill();
-                })(function() {
-                  log().debug("| making directory " + dir);
-                  return __iced_k(err != null ? log().error("Failed to make dir " + dir + ": " + err.message) : void 0);
-                });
-              } else {
-                return __iced_k();
-              }
-            })(function() {
-              log().debug("- Made new " + type + " keychain");
-              tkr = typeof err !== "undefined" && err !== null ? null : new klass(dir);
-              (function(__iced_k) {
-                if ((tkr != null) && (typeof err === "undefined" || err === null)) {
-                  (function(__iced_k) {
-                    __iced_deferrals = new iced.Deferrals(__iced_k, {
-                      parent: ___iced_passed_deferral,
-                      filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                      funcname: "AltKeyRingBase.make"
-                    });
-                    tkr.post_make(__iced_deferrals.defer({
-                      assign_fn: (function() {
-                        return function() {
-                          return err = arguments[0];
-                        };
-                      })(),
-                      lineno: 762
-                    }));
-                    __iced_deferrals._fulfill();
-                  })(__iced_k);
-                } else {
-                  return __iced_k();
-                }
-              })(function() {
-                return cb(err, tkr);
-              });
-            });
-          });
-        };
-      })(this));
-    };
-
-    AltKeyRingBase.prototype.copy_key = function(k1, cb) {
-      var esc, k2, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      esc = make_esc(cb, "TmpKeyRing::copy_key");
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "AltKeyRingBase.copy_key"
-          });
-          k1.load(esc(__iced_deferrals.defer({
-            lineno: 769
-          })));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          k2 = k1.copy_to_keyring(_this);
-          (function(__iced_k) {
-            __iced_deferrals = new iced.Deferrals(__iced_k, {
-              parent: ___iced_passed_deferral,
-              filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-              funcname: "AltKeyRingBase.copy_key"
-            });
-            k2.save(esc(__iced_deferrals.defer({
-              lineno: 771
-            })));
-            __iced_deferrals._fulfill();
-          })(function() {
-            return cb();
-          });
-        };
-      })(this));
-    };
-
-    AltKeyRingBase.prototype.mutate_args = function(gargs) {
-      this._rfb.mutate_args(gargs);
-      return log().debug("| Mutate GPG args; new args: " + (gargs.args.join(' ')));
-    };
-
-    return AltKeyRingBase;
-
-  })(BaseKeyRing);
-
-  TmpKeyRingBase = (function(_super) {
-    __extends(TmpKeyRingBase, _super);
-
-    function TmpKeyRingBase(dir) {
-      TmpKeyRingBase.__super__.constructor.call(this, dir);
-      this._nuked = false;
-    }
-
-    TmpKeyRingBase.make = function(klass, cb) {
-      var dir;
-      dir = path.join(globals().get_tmp_keyring_dir(), base64u.encode(prng(15)));
-      return AltKeyRingBase.make(klass, dir, cb);
-    };
-
-    TmpKeyRingBase.prototype.to_string = function() {
-      return "tmp keyring " + this.dir;
-    };
-
-    TmpKeyRingBase.prototype.is_temporary = function() {
-      return true;
-    };
-
-    TmpKeyRingBase.prototype.tmp_dir = function() {
-      return this.dir;
-    };
-
-    TmpKeyRingBase.prototype.nuke = function(cb) {
-      var e2, err, file, files, fp, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      (function(_this) {
-        return (function(__iced_k) {
-          if (!_this._nuked) {
-            log().debug("| nuking temporary kerying: " + _this.dir);
-            (function(__iced_k) {
-              __iced_deferrals = new iced.Deferrals(__iced_k, {
-                parent: ___iced_passed_deferral,
-                filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                funcname: "TmpKeyRingBase.nuke"
-              });
-              fs.readdir(_this.dir, __iced_deferrals.defer({
-                assign_fn: (function() {
-                  return function() {
-                    err = arguments[0];
-                    return files = arguments[1];
-                  };
-                })(),
-                lineno: 809
-              }));
-              __iced_deferrals._fulfill();
-            })(function() {
-              (function(__iced_k) {
-                if (typeof err !== "undefined" && err !== null) {
-                  return __iced_k(log().error("Cannot read dir " + _this.dir + ": " + err.message));
-                } else {
-                  (function(__iced_k) {
-                    var _i, _len, _ref3, _results, _while;
-                    _ref3 = files;
-                    _len = _ref3.length;
-                    _i = 0;
-                    _results = [];
-                    _while = function(__iced_k) {
-                      var _break, _continue, _next;
-                      _break = function() {
-                        return __iced_k(_results);
-                      };
-                      _continue = function() {
-                        return iced.trampoline(function() {
-                          ++_i;
-                          return _while(__iced_k);
-                        });
-                      };
-                      _next = function(__iced_next_arg) {
-                        _results.push(__iced_next_arg);
-                        return _continue();
-                      };
-                      if (!(_i < _len)) {
-                        return _break();
-                      } else {
-                        file = _ref3[_i];
-                        fp = path.join(_this.dir, file);
-                        (function(__iced_k) {
-                          __iced_deferrals = new iced.Deferrals(__iced_k, {
-                            parent: ___iced_passed_deferral,
-                            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                            funcname: "TmpKeyRingBase.nuke"
-                          });
-                          fs.unlink(fp, __iced_deferrals.defer({
-                            assign_fn: (function() {
-                              return function() {
-                                return e2 = arguments[0];
-                              };
-                            })(),
-                            lineno: 815
-                          }));
-                          __iced_deferrals._fulfill();
-                        })(function() {
-                          return _next(typeof e2 !== "undefined" && e2 !== null ? (log().warn("Could not remove dir " + fp + ": " + e2.message), err = e2) : void 0);
-                        });
-                      }
-                    };
-                    _while(__iced_k);
-                  })(function() {
-                    (function(__iced_k) {
-                      if (typeof err === "undefined" || err === null) {
-                        (function(__iced_k) {
-                          __iced_deferrals = new iced.Deferrals(__iced_k, {
-                            parent: ___iced_passed_deferral,
-                            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-                            funcname: "TmpKeyRingBase.nuke"
-                          });
-                          fs.rmdir(_this.dir, __iced_deferrals.defer({
-                            assign_fn: (function() {
-                              return function() {
-                                return err = arguments[0];
-                              };
-                            })(),
-                            lineno: 820
-                          }));
-                          __iced_deferrals._fulfill();
-                        })(function() {
-                          return __iced_k(typeof err !== "undefined" && err !== null ? log().error("Cannot delete tmp keyring @dir: " + err.message) : void 0);
-                        });
-                      } else {
-                        return __iced_k();
-                      }
-                    })(__iced_k);
-                  });
-                }
-              })(function() {
-                return __iced_k(_this._nuked = true);
-              });
-            });
-          } else {
-            return __iced_k();
-          }
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err);
-        };
-      })(this));
-    };
-
-    return TmpKeyRingBase;
-
-  })(AltKeyRingBase);
-
-  exports.TmpKeyRing = TmpKeyRing = (function(_super) {
-    __extends(TmpKeyRing, _super);
-
-    function TmpKeyRing() {
-      return TmpKeyRing.__super__.constructor.apply(this, arguments);
-    }
-
-    TmpKeyRing.make = function(cb) {
-      return TmpKeyRingBase.make(TmpKeyRing, cb);
-    };
-
-    TmpKeyRing.prototype.mutate_args = function(gargs) {
-      if (globals().get_no_options()) {
-        gargs.args = ["--no-options"].concat(gargs.args);
-      }
-      return TmpKeyRing.__super__.mutate_args.call(this, gargs);
-    };
-
-    return TmpKeyRing;
-
-  })(TmpKeyRingBase);
-
-  exports.AltKeyRing = AltKeyRing = (function(_super) {
-    __extends(AltKeyRing, _super);
-
-    function AltKeyRing() {
-      return AltKeyRing.__super__.constructor.apply(this, arguments);
-    }
-
-    AltKeyRing.make = function(dir, cb) {
-      return AltKeyRingBase.make(AltKeyRing, dir, cb, {
-        perm: true
-      });
-    };
-
-    return AltKeyRing;
-
-  })(AltKeyRingBase);
-
-  exports.TmpPrimaryKeyRing = TmpPrimaryKeyRing = (function(_super) {
-    __extends(TmpPrimaryKeyRing, _super);
-
-    function TmpPrimaryKeyRing() {
-      return TmpPrimaryKeyRing.__super__.constructor.apply(this, arguments);
-    }
-
-    TmpPrimaryKeyRing.make = function(cb) {
-      return TmpKeyRingBase.make(TmpPrimaryKeyRing, cb);
-    };
-
-    TmpPrimaryKeyRing.prototype.make_ring_file_bundle = function() {
-      return new RingFileBundle({
-        pub_only: true,
-        dir: this.dir,
-        primary: true
-      });
-    };
-
-    TmpPrimaryKeyRing.prototype.mutate_args = function(gargs) {
-      var h, prepend;
-      this._rfb.mutate_args(gargs);
-      prepend = gargs.list_keys ? ["--no-default-keyring"] : (h = globals().get_home_dir()) ? ["--no-default-keyring", "--keyring", path.join(h, "pubring.gpg"), "--secret-keyring", path.join(h, "secring.gpg"), "--trustdb-name", path.join(h, "trustdb.gpg")] : [];
-      gargs.args = prepend.concat(gargs.args);
-      return log().debug("| Mutate GPG args; new args: " + (gargs.args.join(' ')));
-    };
-
-    return TmpPrimaryKeyRing;
-
-  })(TmpKeyRingBase);
-
-  exports.TmpOneShotKeyRing = TmpOneShotKeyRing = (function(_super) {
-    __extends(TmpOneShotKeyRing, _super);
-
-    function TmpOneShotKeyRing() {
-      return TmpOneShotKeyRing.__super__.constructor.apply(this, arguments);
-    }
-
-    TmpOneShotKeyRing.make = function(cb) {
-      return TmpKeyRingBase.make(TmpOneShotKeyRing, cb);
-    };
-
-    TmpOneShotKeyRing.prototype.base_args = function() {
-      return ["--trusted-key", this._key_id_64];
-    };
-
-    TmpOneShotKeyRing.prototype.verify_and_decrypt_sig = function(_arg, cb) {
-      var args, err, out, sig, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      sig = _arg.sig;
-      args = this.base_args().concat(["--decrypt", "--no-auto-key-locate"]);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "TmpOneShotKeyRing.verify_and_decrypt_sig"
-          });
-          _this.gpg({
-            args: args,
-            stdin: sig,
-            quiet: true
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return out = arguments[1];
-              };
-            })(),
-            lineno: 911
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err, out);
-        };
-      })(this));
-    };
-
-    TmpOneShotKeyRing.prototype.verify_sig_on_file = function(_arg, cb) {
-      var args, err, file, sig, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      sig = _arg.sig, file = _arg.file;
-      args = this.base_args().concat(["--verify", sig, file]);
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "TmpOneShotKeyRing.verify_sig_on_file"
-          });
-          _this.gpg({
-            args: args,
-            quiet: true
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                return err = arguments[0];
-              };
-            })(),
-            lineno: 918
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          return cb(err);
-        };
-      })(this));
-    };
-
-    return TmpOneShotKeyRing;
-
-  })(TmpKeyRing);
-
-  exports.QuarantinedKeyRing = QuarantinedKeyRing = (function(_super) {
-    __extends(QuarantinedKeyRing, _super);
-
-    function QuarantinedKeyRing() {
-      return QuarantinedKeyRing.__super__.constructor.apply(this, arguments);
-    }
-
-    QuarantinedKeyRing.make = function(cb) {
-      return TmpKeyRingBase.make(QuarantinedKeyRing, cb);
-    };
-
-    QuarantinedKeyRing.prototype.set_fingerprint = function(fp) {
-      this._fingerprint = fp;
-      return this._key_id_64 = fingerprint_to_key_id_64(fp);
-    };
-
-    QuarantinedKeyRing.prototype.oneshot_verify = function(_arg, cb) {
-      var err, file, keyblock, no_json, query, ret, sig, single, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-      __iced_k = __iced_k_noop;
-      ___iced_passed_deferral = iced.findDeferral(arguments);
-      query = _arg.query, single = _arg.single, sig = _arg.sig, file = _arg.file, no_json = _arg.no_json, keyblock = _arg.keyblock;
-      log().debug("+ Quarantined / oneshot verify");
-      (function(_this) {
-        return (function(__iced_k) {
-          __iced_deferrals = new iced.Deferrals(__iced_k, {
-            parent: ___iced_passed_deferral,
-            filename: "/Users/max/src/keybase/gpg-wrapper/src/keyring.iced",
-            funcname: "QuarantinedKeyRing.oneshot_verify"
-          });
-          _this.oneshot_verify_2({
-            ring: _this,
-            sig: sig,
-            file: file,
-            no_json: no_json
-          }, __iced_deferrals.defer({
-            assign_fn: (function() {
-              return function() {
-                err = arguments[0];
-                return ret = arguments[1];
-              };
-            })(),
-            lineno: 939
-          }));
-          __iced_deferrals._fulfill();
-        });
-      })(this)((function(_this) {
-        return function() {
-          log().debug("- Quarantined / oneshot verify -> ok! (fp=" + _this._fingerprint + ")");
-          return cb(err, ret, _this._fingerprint);
-        };
-      })(this));
-    };
-
-    return QuarantinedKeyRing;
-
-  })(TmpOneShotKeyRing);
-
-}).call(this);

+ 0 - 17
node_modules/keybase-installer/node_modules/gpg-wrapper/lib/main.js

@@ -1,17 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-c
-(function() {
-  var k, m, modules, v, _i, _len;
-
-  modules = [require("./err"), require("./gpg"), require("./parse"), require("./colgrep")];
-
-  for (_i = 0, _len = modules.length; _i < _len; _i++) {
-    m = modules[_i];
-    for (k in m) {
-      v = m[k];
-      exports[k] = v;
-    }
-  }
-
-  exports.keyring = require('./keyring');
-
-}).call(this);

+ 0 - 164
node_modules/keybase-installer/node_modules/gpg-wrapper/lib/parse.js

@@ -1,164 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-c
-(function() {
-  var E, GPG, Message, Packet, Parser, iced, parse, strip, util, __iced_k, __iced_k_noop;
-
-  iced = require('iced-runtime').iced;
-  __iced_k = __iced_k_noop = function() {};
-
-  E = require('./err').E;
-
-  GPG = require('./gpg').GPG;
-
-  util = require('util');
-
-  strip = function(x) {
-    var m;
-    if ((m = x.match(/^\s*(.*)$/))) {
-      return m[1];
-    } else {
-      return x;
-    }
-  };
-
-  Packet = (function() {
-    function Packet(_arg) {
-      this.type = _arg.type, this.options = _arg.options;
-      this._subfields = [];
-    }
-
-    Packet.prototype.add_subfield = function(f) {
-      return this._subfields.push(f);
-    };
-
-    Packet.prototype.subfields = function() {
-      return this._subfields;
-    };
-
-    return Packet;
-
-  })();
-
-  Message = (function() {
-    function Message(_packets) {
-      this._packets = _packets;
-    }
-
-    Message.prototype.packets = function() {
-      return this._packets;
-    };
-
-    return Message;
-
-  })();
-
-  exports.Parser = Parser = (function() {
-    function Parser(pgp_output) {
-      this.pgp_output = pgp_output;
-    }
-
-    Parser.prototype.run = function() {
-      this.preprocess();
-      return new Message(this.parse_packets());
-    };
-
-    Parser.prototype.preprocess = function() {
-      var line;
-      return this._lines = (function() {
-        var _i, _len, _ref, _results;
-        _ref = this.pgp_output.split(/\r?\n/);
-        _results = [];
-        for (_i = 0, _len = _ref.length; _i < _len; _i++) {
-          line = _ref[_i];
-          if (line.match(/\S/)) {
-            _results.push(line);
-          }
-        }
-        return _results;
-      }).call(this);
-    };
-
-    Parser.prototype.parse_packets = function() {
-      var _results;
-      _results = [];
-      while (!this.eof()) {
-        _results.push(this.parse_packet());
-      }
-      return _results;
-    };
-
-    Parser.prototype.peek = function() {
-      return this._lines[0];
-    };
-
-    Parser.prototype.get = function() {
-      return this._lines.shift();
-    };
-
-    Parser.prototype.eof = function() {
-      return this._lines.length === 0;
-    };
-
-    Parser.prototype.parse_packet = function() {
-      var first, m, packet, rxx;
-      rxx = /^:([a-zA-Z0-9_ -]+) packet:( (.*))?$/;
-      first = this.get();
-      if (!(m = first.match(rxx))) {
-        throw new E.ParseError("expected ':literal data packet:' style header; got " + first);
-      }
-      packet = new Packet({
-        type: m[1],
-        options: m[3]
-      });
-      while (!(this.eof() || this.peek()[0] === ':')) {
-        packet.add_subfield(strip(this.get()));
-      }
-      return packet;
-    };
-
-    return Parser;
-
-  })();
-
-  exports.parse = parse = function(_arg, cb) {
-    var buf, e, err, gpg, message, out, ___iced_passed_deferral, __iced_deferrals, __iced_k;
-    __iced_k = __iced_k_noop;
-    ___iced_passed_deferral = iced.findDeferral(arguments);
-    gpg = _arg.gpg, message = _arg.message;
-    gpg || (gpg = new GPG);
-    out = null;
-    (function(_this) {
-      return (function(__iced_k) {
-        __iced_deferrals = new iced.Deferrals(__iced_k, {
-          parent: ___iced_passed_deferral,
-          filename: "/Users/max/src/keybase/gpg-wrapper/src/parse.iced"
-        });
-        gpg.run({
-          args: ["--list-packets"],
-          stdin: message
-        }, __iced_deferrals.defer({
-          assign_fn: (function() {
-            return function() {
-              err = arguments[0];
-              return buf = arguments[1];
-            };
-          })(),
-          lineno: 52
-        }));
-        __iced_deferrals._fulfill();
-      });
-    })(this)((function(_this) {
-      return function() {
-        if (typeof err === "undefined" || err === null) {
-          try {
-            out = (new Parser(buf.toString('utf8'))).run();
-          } catch (_error) {
-            e = _error;
-            err = e;
-          }
-        }
-        return cb(err, out);
-      };
-    })(this));
-  };
-
-}).call(this);

+ 0 - 64
node_modules/keybase-installer/node_modules/gpg-wrapper/package.json

@@ -1,64 +0,0 @@
-{
-  "_from": "gpg-wrapper@>=1.0.0",
-  "_id": "gpg-wrapper@1.0.1",
-  "_location": "/keybase-installer/gpg-wrapper",
-  "_npmUser": {
-    "name": "maxtaco",
-    "email": "themax@gmail.com"
-  },
-  "_npmVersion": "1.4.28",
-  "_phantomChildren": {},
-  "_requiredBy": [
-    "/keybase-installer"
-  ],
-  "_resolved": "https://registry.npmjs.org/gpg-wrapper/-/gpg-wrapper-1.0.1.tgz",
-  "_shasum": "c4661d2e1b666c717fe1c1cf05857fb83dd1f87d",
-  "_shrinkwrap": null,
-  "author": {
-    "name": "Maxwell Krohn",
-    "email": "themax@gmail.com"
-  },
-  "bugs": {
-    "url": "https://github.com/keybase/gpg-wrapper/issues"
-  },
-  "dependencies": {
-    "iced-error": ">=0.0.9",
-    "iced-runtime": ">=0.0.1",
-    "iced-spawn": ">=0.0.8",
-    "iced-utils": ">=0.1.16",
-    "pgp-utils": ">=0.0.21"
-  },
-  "description": "A small wrapper around the gpg CLI",
-  "devDependencies": {
-    "iced-coffee-script": "1.7.1-c",
-    "iced-test": ">=0.0.9",
-    "minimist": "~0.0.7"
-  },
-  "directories": {},
-  "dist": {
-    "shasum": "c4661d2e1b666c717fe1c1cf05857fb83dd1f87d",
-    "tarball": "http://registry.npmjs.org/gpg-wrapper/-/gpg-wrapper-1.0.1.tgz"
-  },
-  "gitHead": "15dbdf07722f8ff5d86f6a52912ca5b635310a0a",
-  "homepage": "https://github.com/keybase/gpg-wrapper",
-  "license": "BSD-3-Clause",
-  "main": "lib/main.js",
-  "maintainers": [
-    {
-      "name": "maxtaco",
-      "email": "themax@gmail.com"
-    }
-  ],
-  "name": "gpg-wrapper",
-  "optionalDependencies": {},
-  "readme": "gpg-wrapper\n===========\n\nA wrapper around the GPG CLI.\n",
-  "readmeFilename": "README.md",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/keybase/gpg-wrapper.git"
-  },
-  "scripts": {
-    "test": "make test"
-  },
-  "version": "1.0.1"
-}

+ 0 - 19
node_modules/keybase-installer/node_modules/gpg-wrapper/src/colgrep.iced

@@ -1,19 +0,0 @@
-
-##=======================================================================
-
-exports.colgrep = colgrep = ({patterns, buffer, separator}) ->
-  separator or= /:/
-  lines = buffer.toString('utf8').split '\n'
-  indices = (parseInt(k) for k,v of patterns)
-  max_index = Math.max indices... 
-  out = []
-  for line in lines when (cols = line.split separator)? and (max_index < cols.length)
-    found = true
-    for k,v of patterns
-      unless cols[k].match v 
-        found = false
-        break
-    out.push cols if found
-  return out
-
-##=======================================================================

+ 0 - 13
node_modules/keybase-installer/node_modules/gpg-wrapper/src/err.iced

@@ -1,13 +0,0 @@
-
-ie = require 'iced-error'
-
-#================================================
-
-exports.E = ie.make_errors
-  GPG : "Command line error"
-  PGP_ID_COLLISION : "PGP ID collision error"
-  NOT_FOUND : "Key wasn't found"
-  CMD : "Non-zero exit code"
-  PARSE : "parse error"
-  VERIFY : "Signature verification error"
-  NO_FINGERPRINT : "No fingerprint found"

+ 0 - 105
node_modules/keybase-installer/node_modules/gpg-wrapper/src/gpg.iced

@@ -1,105 +0,0 @@
-
-{colgrep} = require './colgrep'
-{E} = require './err'
-{parse} = require('pgp-utils').userid
-ispawn = require 'iced-spawn'
-
-##=======================================================================
-
-_gpg_cmd = "gpg"
-exports.set_gpg_cmd = set_gpg_cmd = (c) -> _gpg_cmd = c
-exports.get_gpg_cmd = ( ) -> _gpg_cmd
-
-# A default log for uncaught stderr
-_log = null
-exports.set_log = (l) -> _log = l
-
-##=======================================================================
-
-exports.find_and_set_cmd = (cmd, cb) ->
-  if cmd?
-    await (new GPG { cmd }).test defer err, v
-    if err?
-      err = new Error "Could not access the supplied GPG command '#{cmd}'"
-  else
-    cmds = [ "gpg2", "gpg" ]
-    for cmd in cmds
-      await (new GPG { cmd }).test defer err, v
-      break unless err
-    if err?
-      err = new Error "Could not find GPG command: tried 'gpg2' and 'gpg'"
-  set_gpg_cmd(cmd) unless err?
-  cb err, v, cmd
-
-##=======================================================================
-
-exports.GPG = class GPG
-
-  #----
-
-  constructor : (opts) ->
-    @CMD = if (c = opts?.cmd)? then c else _gpg_cmd
-
-  #----
-
-  mutate_args : (args) ->
-
-  #----
-
-  test : (cb) ->
-    await ispawn.run { name : @CMD, args : [ "--version" ], quiet : true }, defer err, out
-    cb err, out
-
-  #----
-
-  run : (inargs, cb) ->
-    stderr = null
-    @mutate_args inargs
-    env = process.env
-    delete env.LANGUAGE
-    inargs.name = @CMD
-    inargs.eklass = E.GpgError
-    inargs.opts = { env }
-    inargs.log = _log if _log?
-    inargs.stderr = stderr = new ispawn.BufferOutStream() if not inargs.stderr? and inargs.quiet
-    await ispawn.run inargs, defer err, out
-    if err? and stderr?
-      err.stderr = stderr.data()
-    cb err, out
-
-  #----
-
-  command_line : (inargs) ->
-    @mutate_args inargs
-    v = [ @CMD ].concat inargs.args
-    v.join(" ")
-
-  #----
-
-  assert_no_collision : (id, cb) ->
-    args = [ "-k", "--with-colons", id ]
-    n = 0
-    await @run { args, quiet : true } , defer err, out
-    if err? then # noop
-    else
-      rows = colgrep {
-        patterns : {
-          0 : /^[sp]ub$/
-          4 : (new RegExp "^.*#{id}$", "i")
-        },
-        buffer : out,
-        separator : /:/
-      }
-      if (n = rows.length) > 1
-        err = new E.PgpIdCollisionError "Found two keys for ID=#{short_id}"
-    cb err, n
-
-  #----
-
-  assert_exactly_one : (short_id, cb) ->
-    await @assert_no_collision short_id, defer err, n
-    err = new E.NotFoundError "Didn't find a key for #{short_id}" unless n is 1
-    cb err
-
-##=======================================================================
-

+ 0 - 236
node_modules/keybase-installer/node_modules/gpg-wrapper/src/index.iced

@@ -1,236 +0,0 @@
-
-pgpu = require('pgp-utils').userid
-{Warnings} = require('iced-utils').util
-util = require 'util'
-
-#==========================================================
-
-class BucketDict
-
-  constructor : () ->
-    @_d = {}
-
-  add : (k,v) ->
-    k = ("" + k).toLowerCase()
-    @_d[k] = b = [] unless (b = @_d[k])?
-    b.push v
-
-  get : (k) -> @_d[("" + k).toLowerCase()] or []
-
-  get_0_or_1 : (k) ->
-    l = @get(k)
-    err = obj = null
-    if (n = l.length) > 1
-      err = new Error "wanted a unique lookup, but got #{n} object for key #{k}"
-    else
-      obj = if n is 0 then null else l[0]
-    return [err,obj]
-
-#==========================================================
-
-uniquify = (v) ->
-  h = {}
-  (h[e] = true for e in v)
-  (k for k of h)
-
-#==========================================================
-
-class Index
-
-  constructor : () ->
-    @_keys = []
-    @_lookup =
-      email : new BucketDict()
-      fingerprint : new BucketDict()
-      key_id_64 : new BucketDict()
-
-  push_element : (el) ->
-    if (k = el.to_key()) then @index_key k
-
-  index_key : (k) ->
-    @_keys.push k
-    @_lookup.fingerprint.add(k.fingerprint(), k)
-    for e in uniquify(k.emails())
-      @_lookup.email.add(e, k)
-    for i in k.all_key_id_64s()
-      @_lookup.key_id_64.add(i, k)
-
-  lookup : () -> @_lookup
-  keys : () -> @_keys
-  fingerprints : () -> (k.fingerprint() for k in @keys())
-
-#==========================================================
-
-class Element
-  constructor : () ->
-    @_err = null
-  err : () -> @_err
-  is_ok : () -> not @_err?
-  to_key : () -> null
-
-#==========================================================
-
-parse_int = (s) -> if s?.match /^[0-9]+$/ then parseInt(s, 10) else s
-
-#==========================================================
-
-class BaseKey extends Element
-
-  constructor : (line) ->
-    super()
-    if line.v.length < 12
-      @_err = new Error "Key is malformed; needs at least 12 fields"
-    else
-      v = (parse_int(e) for e in line.v)
-      [ @_pub, @_trust, @_n_bits, @_type, @_key_id_64, @_created, @_expires ] = v
-
-  err : () -> @_err
-  to_key : () -> null
-  key_id_64 : () -> @_key_id_64
-  fingerprint : () -> @_fingerprint
-  add_fingerprint : (line) -> @_fingerprint = line.get(9)
-  is_revoked : () -> @_trust is 'r'
-  to_dict : ({secret}) -> {
-    fingerprint : @fingerprint(),
-    key_id_64 : @key_id_64(),
-    secret : secret,
-    is_revoked : @is_revoked()
-  }
-
-#==========================================================
-
-class Subkey extends BaseKey
-
-
-#==========================================================
-
-class Key extends BaseKey
-
-  constructor : (line) ->
-    super line
-    @_userids = []
-    @_subkeys = []
-    @_top = @
-    if @is_ok()
-      @add_uid line
-
-  emails : () -> (e for u in @_userids when (e = u.email)? )
-  to_key : () -> @
-  userids : () -> @_userids
-  subkeys : () -> @_subkeys
-
-  to_dict : (d) ->
-    r = super d
-    r.uid = @userids()[0]
-    r.all_uids = @userids
-    return r
-
-  all_keys : () -> [ @ ].concat(@_subkeys)
-
-  all_key_id_64s : () ->
-    ret = (i for s in @all_keys() when (i = s.key_id_64())?)
-    return ret
-
-  add_line : (line) ->
-    err = null
-    if (n = line.v.length) < 2
-      line.warn "got too few fields (#{n})"
-    else
-      switch (f = line.v[0])
-        when 'fpr' then @_top.add_fingerprint line
-        when 'uid' then @add_uid line
-        when 'uat' then # skip user attributes
-        when 'sub', 'ssb' then @add_subkey line
-        else
-          line.warn "unexpected subfield: #{f}"
-
-  add_subkey : (line) ->
-    key = new Subkey line
-    if key.is_ok()
-      @_subkeys.push key
-      @_top = key
-    else
-      line.warn "Bad subkey: #{key.err().message}"
-
-  add_uid : (line) ->
-    if (e = line.get(9))? and (u = pgpu.parse(e))?
-      @_userids.push u
-
-#==========================================================
-
-class Ignored extends Element
-
-  constructor : (line) ->
-
-#==========================================================
-
-class Line
-  constructor : (txt, @number, @parser) ->
-    @v = txt.split(":")
-    if @v.length < 2
-      @warn "Bad line; expectect at least 2 fields"
-  warn : (m) -> @parser.warn(@number + ": " + m)
-  get : (n) ->
-    if (n < @v.length and @v[n].length) then @v[n] else null
-
-#==========================================================
-
-exports.Parser = class Parser
-
-  #-----------------------
-
-  constructor : (@txt) ->
-    @_warnings = new Warnings()
-    @init()
-
-  #-----------------------
-
-  warn : (w) -> @_warnings.push w
-  warnings : () -> @_warnings
-
-  #-----------------------
-
-  init : () -> @lines = (new Line(l,i+1,@) for l,i in @txt.split(/\r?\n/) when l.length > 0)
-  peek : () -> if @is_eof() then null else @lines[0]
-  get : () -> if @is_eof() then null else @lines.shift()
-  is_eof : () -> (@lines.length is 0)
-
-  #-----------------------
-
-  parse_ignored : (line) -> return new Ignored line
-
-  #-----------------------
-
-  parse : () ->
-    index = new Index()
-    until @is_eof()
-      index.push_element(element) if (element = @parse_element()) and element.is_ok()
-    return index
-
-  #-----------------------
-
-  is_new_key : (line) -> line? and (line.get(0) in ['pub', 'sec'])
-
-  #-----------------------
-
-  parse_element : () ->
-    line = @get()
-    if @is_new_key(line) then @parse_key line
-    else @parse_ignored line
-
-  #-----------------------
-
-  parse_key : (first_line) ->
-    key = new Key first_line
-    while (nxt = @peek())? and not(@is_new_key(nxt))
-      @get()
-      key.add_line(nxt)
-    return key
-
-#==========================================================
-
-exports.parse = parse = (txt) -> (new Parser(txt).parse())
-exports.list_fingerprints = list_fingerprints = (txt) -> parse(txt).fingerprints()
-
-#==========================================================
-

+ 0 - 946
node_modules/keybase-installer/node_modules/gpg-wrapper/src/keyring.iced

@@ -1,946 +0,0 @@
-
-{GPG} = require './gpg'
-{chain,make_esc} = require 'iced-error'
-{mkdir_p} = require('iced-utils').fs
-{prng} = require 'crypto'
-pgp_utils = require('pgp-utils')
-{fingerprint_to_key_id_64,fpeq,athrow,base64u} = pgp_utils.util
-{userid} = pgp_utils
-{E} = require './err'
-path = require 'path'
-fs = require 'fs'
-{colgrep} = require './colgrep'
-util = require 'util'
-os = require 'os'
-{a_json_parse} = require('iced-utils').util
-{list_fingerprints,Parser} = require('./index')
-
-##=======================================================================
-
-strip = (m) -> m.split(/\s+/).join('')
-
-states =
-  NONE : 0
-  LOADED : 1
-  SAVED : 2
-
-##=======================================================================
-
-exports.Log = class Log
-  constructor : ->
-  debug : (x) -> console.error x
-  warn : (x) -> console.error x
-  error : (x) -> console.error x
-  info : (x) -> console.error x
-
-##=======================================================================
-
-exports.Globals = class Globals
-
-  constructor : ({@get_preserve_tmp_keyring,
-                  @get_debug,
-                  @get_tmp_keyring_dir,
-                  @get_key_klass,
-                  @get_home_dir,
-                  @get_gpg_cmd,
-                  @get_no_options,
-                  @log}) ->
-    @get_preserve_tmp_keyring or= () -> false
-    @log or= new Log
-    @get_debug or= () -> false
-    @get_tmp_keyring_dir or= () -> os.tmpdir()
-    @get_key_klass or= () -> GpgKey
-    @get_home_dir or= () -> null
-    @get_gpg_cmd or= () -> null
-    @get_no_options or= () -> false
-    @_mring = null
-
-  master_ring : () -> @_mring
-  set_master_ring : (r) -> @_mring = r
-
-#----------------
-
-_globals = new Globals {}
-globals = () -> _globals
-
-#----------------
-
-exports.init = (d) ->
-  _globals = new Globals d
-  _globals.set_master_ring new MasterKeyRing()
-
-#----------------
-
-log = () -> globals().log
-
-##=======================================================================
-
-exports.GpgKey = class GpgKey
-
-  #-------------
-
-  constructor : (fields) ->
-    @_state = states.NONE
-    for k,v of fields
-      @["_#{k}"] = v
-
-  #-------------
-
-  # The fingerprint of the key
-  fingerprint : () -> @_fingerprint
-
-  # The 64-bit GPG key ID
-  key_id_64 : () -> @_key_id_64 or (if @fingerprint() then @fingerprint()[-16...] else null)
-
-  # Something to load a key by
-  load_id : () -> @key_id_64() or @fingerprint() or @username()
-
-  # The keybase username of the keyholder
-  username : () -> @_username
-
-  # The keybase UID of the keyholder
-  uid : () -> @_uid
-
-  # All uids, available after a load from the keyring
-  all_uids : () -> @_all_uids
-
-  # Return the raw armored PGP key data
-  key_data : () -> @_key_data
-
-  # The keyring object that we've wrapped in
-  keyring : () -> @_keyring
-
-  # These two functions are to fulfill to key manager interface
-  get_pgp_key_id : () -> @key_id_64()
-  get_pgp_fingerprint : () -> @fingerprint().toLowerCase()
-
-  is_signed : () -> !!@_is_signed
-
-  #-------------
-
-  check_is_signed : (signer, cb) ->
-    log().debug "+ Check if #{signer.to_string()} signed #{@to_string()}"
-    id = @load_id()
-    args = [ "--list-sigs", "--with-colons", id ]
-    await @gpg { args }, defer err, out
-    unless err?
-      rows = colgrep { buffer : out, patterns : { 0 : /^sig$/ }, separator : /:/  }
-      to_find = signer.key_id_64().toUpperCase()
-      for row in rows
-        if row[4] is to_find
-          log().debug "| Found in row: #{JSON.stringify row}"
-          @_is_signed = true
-          break
-    log().debug "- Check -> #{@_is_signed}"
-    cb err, @_is_signed
-
-  #-------------
-
-  # Find the key in the keyring based on fingerprint
-  find : (cb) ->
-    if (fp = @fingerprint())?
-      args = [ "-" + (if @_secret then 'K' else 'k'), "--with-colons", fp ]
-      await @gpg { args, quiet : true }, defer err, out
-      if err?
-        err = new E.NotFoundError "Key for #{@to_string()} not found"
-    else
-      err = new E.NoFingerprintError "No fingerprint given for #{@_username}"
-    cb err
-
-  #-------------
-
-  # Check that this key has been signed by the signing key.
-  check_sig : (signing_key, cb) ->
-    args = [ '--list-sigs', '--with-colon', @fingerprint() ]
-    await @gpg { args }, defer err, out
-    unless err?
-      rows = colgrep { buffer : out, patterns : {
-          0 : /^sub$/
-          4 : (new RegExp "^#{signing_key.key_id_64()}$", "i")
-        }
-      }
-      if rows.length is 0
-        err = new E.VerifyError "No signature of #{@to_string()} by #{signing_key.to_string()}"
-    cb err
-
-  #-------------
-
-  set_keyring : (r) -> @_keyring = r
-
-  #-------------
-
-  to_string : () -> [ @username(), @key_id_64() ].join "/"
-
-  #-------------
-
-  gpg : (gargs, cb) -> @keyring().gpg gargs, cb
-
-  #-------------
-
-  # Save this key to the underlying GPG keyring
-  save : (cb) ->
-    args = [ "--import" ]
-    args.push "--import-options", "import-local-sigs" if @_secret
-    log().debug "| Save key #{@to_string()} to #{@keyring().to_string()}"
-    await @gpg { args, stdin : @_key_data, quiet : true, secret : @_secret }, defer err
-    @_state = states.SAVED
-    cb err
-
-  #-------------
-
-  # Load this key from the underlying GPG keyring
-  load : (cb) ->
-    id = @load_id()
-    esc = make_esc cb, "GpgKey::load"
-    args = [
-      (if @_secret then "--export-secret-key" else "--export" ),
-      "--export-options", "export-local-sigs",
-      "-a",
-      id
-    ]
-    log().debug "| Load key #{@to_string()} from #{@keyring().to_string()} (secret=#{@_secret})"
-    await @gpg { args }, esc defer @_key_data
-
-    if not @fingerprint()?
-      log().debug "+ lookup fingerprint"
-      args = [ "-k", "--fingerprint", "--with-colons", id ]
-      await @gpg { args }, esc defer out
-      fp = list_fingerprints out.toString('utf8')
-      if (l = fp.length) is 0
-        err = new E.GpgError "Couldn't find GPG fingerprint for #{id}"
-      else if l > 1
-        err = new E.GpgError "Found more than one (#l) keys for #{id}"
-      else
-        @_state = states.LOADED
-        @_fingerprint = fp[0]
-        log().debug "- Map #{id} -> #{@_fingerprint} via gpg"
-
-    if not @uid()?
-      log().debug "+ lookup UID"
-      await @read_uids_from_key esc defer uids
-      l = uids.length
-      if l is 0
-        log().debug "| weird; no UIDs found"
-      else
-        log().debug "| got back more than one UID; using the first: (#{JSON.stringify uids})" if l > 1
-        @_uid = uids[0]
-        log().debug " - Map #{id} -> #{@_uid} via gpg"
-      @_all_uids = uids
-      log().debug "- looked up UID"
-    cb err
-
-  #-------------
-
-  # Remove this key from the keyring
-  remove : (cb) ->
-    args = [
-      (if @_secret then "--delete-secret-and-public-key" else "--delete-keys"),
-      "--batch",
-      "--yes",
-      @fingerprint()
-    ]
-    log().debug "| Delete key #{@to_string()} from #{@keyring().to_string()}"
-    await @gpg { args }, defer err
-    cb err
-
-  #-------------
-
-  # Read the userIds that have been signed with this key
-  read_uids_from_key : (cb) ->
-    fp = @fingerprint()
-    log().debug "+ read_uids_from_keys #{fp}"
-    uids = null
-    if (uids = @_my_userids)?
-      log().debug "| hit cache"
-    else
-      args = { fingerprint : fp }
-      await @keyring().read_uids_from_key args, defer err, tmp
-      uids = @_my_userids = tmp
-    log().debug "| got: #{if uids? then JSON.stringify(uids) else null}"
-    log().debug "- read_uids_from_key -> #{err}"
-    cb err, uids
-
-  #-------------
-
-  sign_key : ({signer}, cb) ->
-    log().debug "| GPG-signing #{@username()}'s key with your key"
-    args = ["--sign-key", "--batch", "--yes" ]
-    skip = false
-    err = null
-    if signer?
-      args.push "-u", signer.fingerprint()
-    else
-      await @keyring().has_signing_key defer err, hsk
-      if err? then skip = true
-      else if not hsk
-        log().info "Not trying to sign key #{@to_string()} since there's no signing key available"
-        skip = true
-    unless skip
-      args.push @fingerprint()
-      await @gpg { args, quiet : true }, defer err
-    cb err
-
-  #-------------
-
-  # Assuming this is a temporary key, commit it to the master key chain, after signing it
-  commit : ({signer, sign_key, ring }, cb) ->
-    esc = make_esc cb, "GpgKey::commit"
-    try_sign = sign_key or signer?
-    if @keyring().is_temporary()
-      log().debug "+ #{@to_string()}: Commit temporary key"
-      await @sign_key { signer }, esc defer() if try_sign
-      await @load esc defer()
-      await @remove esc defer()
-      ring or= master_ring()
-      await (@copy_to_keyring ring).save esc defer()
-      log().debug "- #{@to_string()}: Commit temporary key"
-    else if not @_is_signed
-      if try_sign
-        log().debug "| #{@to_string()}: signing key, since it wasn't signed"
-        await @sign_key {signer}, esc defer()
-      else
-        log().debug "| #{@to_string()}: key wasn't signed, but signing was skipping"
-    else
-      log().debug "| #{@to_string()}: key was previously commited; noop"
-    cb null
-
-  #-------------
-
-  rollback : (cb) ->
-    s = @to_string()
-    err = null
-    if globals().get_preserve_tmp_keyring() and @keyring().is_temporary()
-      log().debug "| #{s}: preserving temporary keyring by command-line flag"
-    else if @keyring().is_temporary()
-      log().debug "| #{s}: Rolling back temporary key"
-      await @remove defer err
-    else
-      log().debug "| #{s}: no need to rollback key, it's permanent"
-    cb err
-
-  #-------------
-
-  to_data_dict : () ->
-    d = {}
-    d[k[1...]] = v for k,v of @ when k[0] is '_'
-    return d
-
-  #-------------
-
-  copy_to_keyring : (keyring) ->
-    return keyring.make_key @to_data_dict()
-
-  #--------------
-
-  _find_key_in_stderr : (which, buf) ->
-    err = ki64 = fingerprint = null
-    d = buf.toString('utf8')
-    if (m = d.match(/Primary key fingerprint: (.*)/))? then fingerprint = m[1]
-    else if (m = d.match(/using [RD]SA key ([A-F0-9]{16})/))? then ki64 = m[1]
-    else err = new E.VerifyError "#{which}: can't parse PGP output in verify signature"
-    return { err, ki64, fingerprint }
-
-  #--------------
-
-  _verify_key_id_64 : ( {ki64, which, sig}, cb) ->
-    log().debug "+ GpgKey::_verify_key_id_64: #{which}: #{ki64} vs #{@fingerprint()}"
-    err = null
-    if ki64 isnt @key_id_64()
-      await @gpg { args : [ "--fingerprint", "--keyid-format", "long", ki64 ] }, defer err, out
-      if err? then # noop
-      else if not (m = out.toString('utf8').match(/Key fingerprint = ([A-F0-9 ]+)/) )?
-        err = new E.VerifyError "Querying for a fingerprint failed"
-      else if not (a = strip(m[1])) is (b = @fingerprint())
-        err = new E.VerifyError "Fingerprint mismatch: #{a} != #{b}"
-      else
-        log().debug "| Successful map of #{ki64} -> #{@fingerprint()}"
-
-    unless err?
-      await @keyring().assert_no_collision ki64, defer err
-
-    log().debug "- GpgKey::_verify_key_id_64: #{which}: #{ki64} vs #{@fingerprint()} -> #{err}"
-    cb err
-
-  #-------------
-
-  verify_sig : ({which, sig, payload}, cb) ->
-    log().debug "+ GpgKey::verify_sig #{which}"
-    err = null
-    args =
-      query : @fingerprint()
-      single : true
-      sig : sig
-      no_json : true
-      keyblock : @_key_data
-      secret : @_secret
-    await @keyring().oneshot_verify args, defer err, out, fp
-
-    if not err? and not(@_fingerprint?) and fp?
-      @_fingerprint = fp
-      log().debug "| Setting fingerprint to #{fp} as a result of oneshot_verify"
-
-    # Check that the signature verified, and that the intended data came out the other end
-    msg = if err? then "signature verification failed"
-    else if @_fingerprint? and (@_fingerprint.toLowerCase() isnt fp.toLowerCase())
-      "Wrong key fingerprint; was the server lying? #{@_fingerprint} != #{fp}"
-    else if ((a = out.toString('utf8')) isnt (b = payload)) then "wrong payload: #{a} != #{b} (#{a.length} v #{b.length})"
-    else null
-
-    # If there's an exception, we can now throw out of this function
-    if msg? then err = new E.VerifyError "#{which}: #{msg}"
-
-    log().debug "- GpgKey::verify_sig #{which} -> #{err}"
-    cb err
-
-##=======================================================================
-
-exports.BaseKeyRing = class BaseKeyRing extends GPG
-
-  constructor : () ->
-    super { cmd : globals().get_gpg_cmd() }
-    @_has_signing_key = null
-
-  #------
-
-  has_signing_key : (cb) ->
-    err = null
-    unless @_has_signing_key?
-      await @find_secret_keys {}, defer err, ids
-      if err?
-        log().warn "Issue listing secret keys: #{err.message}"
-      else
-        @_has_signing_key = (ids.length > 0)
-    cb err, @_has_signing_key
-
-  #------
-
-  make_key : (opts) ->
-    klass = globals().get_key_klass()
-    ret = new klass opts
-    ret.set_keyring @
-    return ret
-
-  #------
-
-  is_temporary : () -> false
-  tmp_dir : () -> os.tmpdir()
-
-  #----------------------------
-
-  make_oneshot_ring_2 : ({keyblock, single, secret}, cb) ->
-    esc = make_esc cb, "BaseKeyRing::_make_oneshot_ring_2"
-    await @gpg { args : [ "--import"], stdin : keyblock, quiet : true, secret }, esc defer()
-    await @list_fingerprints esc defer fps
-    n = fps.length
-    err = if n is 0 then new E.NotFoundError "key import failed"
-    else if single and n > 1 then new E.PgpIdCollisionError "too many keys found: #{n}"
-    else
-      @_fingerprint = fps[0]
-      # Eventually use PGP-utils for this, but for now....
-      @_key_id_64 = @_fingerprint[-16...]
-      null
-    cb err, @_fingerprint
-
-  #----------------------------
-
-  make_oneshot_ring : ({query, single, keyblock, secret}, cb) ->
-    esc = make_esc cb, "BaseKeyRing::make_oneshot_ring"
-    unless keyblock?
-      args = [ "-a", "--export" , query ]
-      await @gpg { args }, esc defer keyblock
-    await TmpOneShotKeyRing.make esc defer ring
-    await ring.make_oneshot_ring_2 { keyblock, single, secret }, defer err, fp
-    if err?
-      await ring.nuke defer e2
-      log().warn "Error cleaning up keyring after failure: #{e2.message}" if e2?
-    cb err, ring, fp
-
-  #----------------------------
-
-  find_keys_full : ( {query, secret, sigs}, cb) ->
-    args = [ "--with-colons", "--fingerprint" ]
-    args.push if secret then "-K" else "-k"
-    args.push query if query
-    await @gpg { args, list_keys : true }, defer err, out
-    res = null
-    unless err?
-      index = (new Parser out.toString('utf8')).parse()
-      res = (@make_key(k.to_dict({secret})) for k in index.keys())
-    cb err, res
-
-  #----------------------------
-
-  find_keys : ({query}, cb) ->
-    args = [ "-k", "--with-colons" ]
-    args.push query if query
-    await @gpg { args, list_keys : true }, defer err, out
-    id64s = null
-    unless err?
-      rows = colgrep { buffer : out, patterns : { 0 : /^pub$/ }, separator : /:/ }
-      id64s = (row[4] for row in rows)
-    cb err, id64s
-
-  #----------------------------
-
-  find_secret_keys : ({query}, cb) ->
-    args = [ "-K", "--with-colons" ]
-    args.push query if query
-
-    # Don't give 'list_keys : false' since we want to check both keyrings.
-    await @gpg { args }, defer err, out
-
-    id64s = null
-    unless err?
-      rows = colgrep { buffer : out, patterns : { 0 : /^sec$/ }, separator : /:/ }
-      id64s = (row[4] for row in rows)
-    cb err, id64s
-
-  #----------------------------
-
-  list_fingerprints : (cb) ->
-    await @gpg { args : [ "--with-colons", "--fingerprint" ] }, defer err, out
-    ret = []
-    unless err?
-      ret = list_fingerprints out.toString('utf8')
-    cb err, ret
-
-  #----------------------------
-
-  list_keys : (cb) ->
-    await @find_keys {}, defer err, @_all_id_64s
-    cb err, @_all_id_64s
-
-  #------
-
-  safe_inspect : (gargs) ->
-    d = {}
-    for k,v of gargs
-      if (k is 'stdin') and gargs.secret
-        v = "<redacted>"
-      d[k] = v
-    util.inspect d
-
-  #------
-
-  gpg : (gargs, cb) ->
-    log().debug "| Call to #{@CMD}: #{@safe_inspect gargs}"
-    gargs.quiet = false if gargs.quiet and globals().get_debug()
-    await @run gargs, defer err, res
-    cb err, res
-
-  #------
-
-  index2 : (opts, cb) ->
-    k = if opts?.secret then '-K' else '-k'
-    args = [ k, "--with-fingerprint", "--with-colons" ]
-    args.push q if (q = opts.query)?
-    await @gpg { args, quiet : true }, defer err, out
-    i = w = null
-    unless err?
-      p = new Parser out.toString('utf8')
-      i = p.parse()
-      w = p.warnings()
-    cb err, i, w
-
-  #------
-
-  read_uids_from_key :( {fingerprint, query}, cb) ->
-    query = fingerprint or query
-    opts = { query }
-    await @index2 opts, defer err, index
-    ret = if err? then null else index?.keys()?[0]?.userids()
-    cb err, ret
-
-  #------
-
-  index : (cb) -> @index2 {}, cb
-
-  #------
-
-  oneshot_verify_2 : ({ring, sig, file, no_json}, cb) ->
-    err = ret = null
-    if file?
-      await ring.verify_sig_on_file { sig, file }, defer err
-    else
-      await ring.verify_and_decrypt_sig { sig }, defer err, raw
-      if err? then # noop
-      else if no_json then ret = raw
-      else
-        await a_json_parse raw, defer err, ret
-    cb err, ret
-
-  #------
-
-  oneshot_verify : ({query, single, sig, file, no_json, keyblock, secret}, cb) ->
-    log().debug "+ oneshot verify"
-    ring = null
-    clean = (cb) ->
-      log().debug "| oneshot clean"
-      if ring?
-        await ring.nuke defer err
-        log().warn "Error cleaning up 1-shot ring: #{err.message}" if err?
-      cb()
-    cb = chain cb, clean
-    esc = make_esc cb, "BaseKeyRing::oneshot_verify"
-    ret = null
-    await @make_oneshot_ring { query, single, keyblock, secret }, esc defer ring, fp
-    await @oneshot_verify_2 { ring, sig, file, no_json }, esc defer ret
-    log().debug "- oneshot verify -> ok! (fp=#{fp})"
-    cb null, ret, fp
-
-##=======================================================================
-
-exports.MasterKeyRing = class MasterKeyRing extends BaseKeyRing
-
-  to_string : () -> "master keyring"
-
-  mutate_args : (gargs) ->
-    if (h = globals().get_home_dir())?
-      gargs.args = [ "--homedir", h ].concat gargs.args
-      log().debug "| Mutate GPG args; new args: #{gargs.args.join(' ')}"
-
-##=======================================================================
-
-exports.make_ring = (d) ->
-  klass = if d? then AltKeyRing else MasterKeyRing
-  new klass d
-
-##=======================================================================
-
-exports.reset_master_ring = reset_master_ring = () ->
-  globals().set_master_ring new MasterKeyRing()
-
-#----------
-
-exports.master_ring = master_ring = () -> globals().master_ring()
-
-##=======================================================================
-
-exports.load_key = (opts, cb) ->
-  delete opts.signer if (signer = opts.signer)?
-  key = master_ring().make_key opts
-  await key.load defer err
-  if not err? and signer?
-    await key.check_is_signed signer, defer err
-  cb err, key
-
-##=======================================================================
-
-class RingFileBundle
-
-  FILES :
-    secring :
-      arg : "secret-keyring"
-      default : ""
-    pubring :
-      arg : "keyring"
-      default : ""
-    trustdb :
-      arg : "trustdb-name"
-      default : "016770670303010501020000532b0f0c000000000000000000000000000000000000000000000000"
-
-  #-----
-
-  constructor : ({@dir, pub_only, @no_default, @primary}) ->
-    @_files = {}
-    which = if pub_only then [ "pubring" ] else [ "pubring", "secring", "trustdb" ]
-    for w in which
-      @_files[w] = @get_file w
-
-  #-------
-
-  get_file : (which) -> path.join(@dir, [which, "gpg"].join("."))
-
-  #---------
-
-  mutate_args : (gargs, opts = {}) ->
-    prepend = []
-    prepend.push("--no-default-keyring") if @no_default or opts.no_default
-    for w, file of @_files
-      arg = if (w is 'pubring' and @primary) then "primary-keyring" else @FILES[w].arg
-      prepend.push "--#{arg}", file
-    gargs.args = prepend.concat gargs.args
-
-  #---------
-
-  touch : (which, f, cb) ->
-    log().debug "+ Make/check empty #{which} #{f}"
-    ok = true
-    await fs.open f, "ax", 0o600, defer err, fd
-    if not err?
-      log().debug "| Made a new one"
-      d = new Buffer @FILES[which].default, "hex"
-      await fs.write fd, d, 0, d.length, null, defer e2
-      log().error "Write failed: #{e2.message}" if e2?
-    else if err.code is "EEXIST"
-      log().debug "| Found one"
-    else
-      log().warn "Unexpected error code from file touch #{f}: #{err.message}"
-      ok = false
-    if fd >= 0 and not err?
-      await fs.close fd, defer e2
-      log().error "Close failed: #{e2.message}" if e2?
-    log().debug "- Made/check empty #{which} -> #{ok}"
-    cb null
-
-  #---------
-
-  touch_all : (cb) ->
-    esc = make_esc cb, "RingFileBundle::touch_all"
-    for which, f of @_files
-      await @touch which, f, esc defer()
-    cb null
-
-##=======================================================================
-
-class AltKeyRingBase extends BaseKeyRing
-
-  constructor : (@dir) ->
-    super()
-    @_rfb = @make_ring_file_bundle()
-
-  #------
-
-  to_string : () -> "keyring #{@dir}"
-
-  #------
-
-  make_ring_file_bundle : () ->
-    new RingFileBundle { @dir, no_default : true }
-
-  #------
-
-  mkfile : (n) -> path.join @dir, n
-
-  #------
-
-  post_make : (cb) -> @_rfb.touch_all cb
-
-  #------
-
-  @make : (klass, dir, cb, opts) ->
-    opts or= {}
-    tmp = not opts.perm
-    type = if tmp then "temporary" else "permanent"
-    parent = path.dirname dir
-    nxt = path.basename dir
-
-    mode = 0o700
-    log().debug "+ Make new #{type} keychain"
-    log().debug "| mkdir_p parent #{parent}"
-
-    # If we're making a temporary directory, we can silently
-    # make all parent directories, but we have to make the directory
-    # itself.  If we're making a permanent directory, we can
-    # make the target directory with mkdir_p and call it quits.
-    targ = if tmp then parent else dir
-    await mkdir_p targ, mode, defer err, made
-    if err?
-      log().error "Error making keyring dir #{parent}: #{err.message}"
-    else if made
-      log().info "Creating #{type} keyring dir: #{targ}"
-    else
-      await fs.stat targ, defer err, so
-      if err?
-        log().error "Failed to stat directory #{targ}: #{err.message}"
-      else if (so.mode & 0o777) isnt mode
-        await fs.chmod targ, mode, defer err
-        if err?
-          log().error "Failed to change mode of #{parent} to #{mode}: #{err.message}"
-
-    # If all is well and we're in tmp mode, then we need to make this
-    # last directory, and fail with code EEXISTS if we fail to make it.
-    if not err? and tmp
-      dir = path.join parent, nxt
-      await fs.mkdir dir, mode, defer err
-      log().debug "| making directory #{dir}"
-      if err?
-        log().error "Failed to make dir #{dir}: #{err.message}"
-
-    log().debug "- Made new #{type} keychain"
-    tkr = if err? then null else (new klass dir)
-    if tkr? and not err?
-      await tkr.post_make defer err
-    cb err, tkr
-
-  #----------------------------
-
-  copy_key : (k1, cb) ->
-    esc = make_esc cb, "TmpKeyRing::copy_key"
-    await k1.load esc defer()
-    k2 = k1.copy_to_keyring @
-    await k2.save esc defer()
-    cb()
-
-  #------
-
-  # The GPG class will call this right before it makes a call to the shell/gpg.
-  # Now is our chance to talk about our special keyring
-  mutate_args : (gargs) ->
-    @_rfb.mutate_args gargs
-    log().debug "| Mutate GPG args; new args: #{gargs.args.join(' ')}"
-
-##=======================================================================
-
-class TmpKeyRingBase extends AltKeyRingBase
-
-  #----------------------------
-
-  constructor : (dir) ->
-    super dir
-    @_nuked = false
-
-  #----------------------------
-
-  @make : (klass, cb) ->
-    dir = path.join globals().get_tmp_keyring_dir(), base64u.encode(prng(15))
-    AltKeyRingBase.make klass, dir, cb
-
-  #----------------------------
-
-  to_string : () -> "tmp keyring #{@dir}"
-  is_temporary : () -> true
-  tmp_dir : () -> @dir
-
-  #----------------------------
-
-  nuke : (cb) ->
-    unless @_nuked
-      log().debug "| nuking temporary kerying: #{@dir}"
-      await fs.readdir @dir, defer err, files
-      if err?
-        log().error "Cannot read dir #{@dir}: #{err.message}"
-      else
-        for file in files
-          fp = path.join(@dir, file)
-          await fs.unlink fp, defer e2
-          if e2?
-            log().warn "Could not remove dir #{fp}: #{e2.message}"
-            err = e2
-        unless err?
-          await fs.rmdir @dir, defer err
-          if err?
-            log().error "Cannot delete tmp keyring @dir: #{err.message}"
-      @_nuked = true
-    cb err
-
-##=======================================================================
-
-exports.TmpKeyRing = class TmpKeyRing extends TmpKeyRingBase
-
-  #------
-
-  @make : (cb) -> TmpKeyRingBase.make TmpKeyRing, cb
-
-  mutate_args : (gargs) ->
-    #
-    # THE NUCLEAR OPTION
-    #
-    # The nuclear option for dealing with gpg.conf files that we
-    # can't deal with. I would hate to do this, but there are some options,
-    # like `--primary-keyring`, that we just can't work around if they're specified
-    # in `gpg.conf`.
-    #
-    # There's an alternative to the nuclear option, which is to make a
-    # gpg.conf that's stripped of the bad options, and to reference that
-    # instead. That will be a fussy operation, since we don't know where
-    # the configuration is actually stored. We can guess, but we're likely to
-    # be wrong, **especially** on Windows. Plus, we'll have to keep it in sync
-    # (maybe rewriting our temporary copy every time we start up).
-    #
-    # Discovered: `gpg --gpgconf-list`, which outputs the config file in the
-    # top line.  This is a start, but need to check how widely supported it is.
-    #
-    # For now, experts have to declare their willingness to go nuclear.
-    #
-    if globals().get_no_options()
-      gargs.args = [ "--no-options" ].concat gargs.args
-
-    super gargs
-
-##=======================================================================
-
-exports.AltKeyRing = class AltKeyRing extends AltKeyRingBase
-
-  @make : (dir, cb) -> AltKeyRingBase.make AltKeyRing, dir, cb, { perm : true }
-
-##=======================================================================
-
-exports.TmpPrimaryKeyRing = class TmpPrimaryKeyRing extends TmpKeyRingBase
-
-  #------
-
-  @make : (cb) -> TmpKeyRingBase.make TmpPrimaryKeyRing, cb
-
-  #------
-
-  make_ring_file_bundle : () ->
-    new RingFileBundle { pub_only : true, @dir, primary : true }
-
-  #------
-
-  # The GPG class will call this right before it makes a call to the shell/gpg.
-  # Now is our chance to talk about our special keyring
-  mutate_args : (gargs) ->
-    @_rfb.mutate_args gargs
-    prepend = if gargs.list_keys then [ "--no-default-keyring" ]
-    else if (h = globals().get_home_dir())
-      [
-          "--no-default-keyring",
-          "--keyring",             path.join(h, "pubring.gpg"),
-          "--secret-keyring",      path.join(h, "secring.gpg"),
-          "--trustdb-name",        path.join(h, "trustdb.gpg")
-      ]
-    else []
-    gargs.args = prepend.concat gargs.args
-    log().debug "| Mutate GPG args; new args: #{gargs.args.join(' ')}"
-
-##=======================================================================
-
-exports.TmpOneShotKeyRing = class TmpOneShotKeyRing extends TmpKeyRing
-
-  @make : (cb) -> TmpKeyRingBase.make TmpOneShotKeyRing, cb
-
-  #---------------
-
-  base_args : () -> [ "--trusted-key", @_key_id_64 ]
-
-  #---------------
-
-  verify_and_decrypt_sig : ({sig}, cb) ->
-    args = @base_args().concat [ "--decrypt", "--no-auto-key-locate" ]
-    await @gpg { args, stdin : sig, quiet : true }, defer err, out
-    cb err, out
-
-  #---------------
-
-  verify_sig_on_file : ({ sig, file }, cb) ->
-    args = @base_args().concat [ "--verify", sig, file ]
-    await @gpg { args, quiet : true }, defer err
-    cb err
-
-##=======================================================================
-
-exports.QuarantinedKeyRing = class QuarantinedKeyRing extends TmpOneShotKeyRing
-
-  @make : (cb) -> TmpKeyRingBase.make QuarantinedKeyRing, cb
-
-  #------------------------
-
-  set_fingerprint : (fp) ->
-    @_fingerprint = fp
-    @_key_id_64 = fingerprint_to_key_id_64 fp
-
-  #------------------------
-
-  # No need to make a true one-shot keyring if we have a Sequestered key,
-  # since there's guaranteed to only have one key there.
-  oneshot_verify : ({query, single, sig, file, no_json, keyblock}, cb) ->
-    log().debug "+ Quarantined / oneshot verify"
-    await @oneshot_verify_2 { ring : @, sig, file, no_json }, defer err, ret
-    log().debug "- Quarantined / oneshot verify -> ok! (fp=#{@_fingerprint})"
-    cb err, ret, @_fingerprint
-
-##=======================================================================
-
-

+ 0 - 12
node_modules/keybase-installer/node_modules/gpg-wrapper/src/main.iced

@@ -1,12 +0,0 @@
-modules = [
-  require("./err")
-  require("./gpg")
-  require("./parse")
-  require("./colgrep")
-]
-for m in modules
-  for k,v of m
-    exports[k] = v
-
-# Export keyring stuff in a namespace
-exports.keyring = require('./keyring')

+ 0 - 62
node_modules/keybase-installer/node_modules/gpg-wrapper/src/parse.iced

@@ -1,62 +0,0 @@
-{E} = require './err'
-{GPG} = require './gpg'
-util = require 'util'
-
-#=======================================================================
-
-
-strip = (x) -> if (m = x.match(/^\s*(.*)$/)) then m[1] else x
-
-class Packet
-  constructor : ( {@type, @options } ) -> @_subfields = []
-  add_subfield : (f) -> @_subfields.push f
-  subfields : () -> @_subfields
-
-class Message
-  constructor : (@_packets) ->
-  packets : () -> @_packets
-
-#=======================================================================
-
-#
-# Parse GPG messages using `gpg --list-packets`
-#
-exports.Parser = class Parser
-
-  constructor : (@pgp_output) ->
-
-  run : () ->
-    @preprocess()
-    new Message @parse_packets()
-
-  preprocess : () -> @_lines = (line for line in @pgp_output.split(/\r?\n/) when line.match /\S/)
-  parse_packets : () -> (@parse_packet() until @eof())
-  peek : () -> @_lines[0]
-  get : () -> @_lines.shift()
-  eof : () -> @_lines.length is 0
-
-  parse_packet : () ->
-    rxx = /^:([a-zA-Z0-9_ -]+) packet:( (.*))?$/ 
-    first = @get()
-    unless (m = first.match rxx)
-      throw new E.ParseError "expected ':literal data packet:' style header; got #{first}"
-    packet = new Packet { type : m[1], options : m[3] }
-    until (@eof() or @peek()[0] is ':')
-      packet.add_subfield strip(@get())
-    return packet
-
-#=======================================================================
-
-exports.parse = parse = ({gpg, message }, cb) ->
-  gpg or= new GPG 
-  out = null
-  await gpg.run { args : [ "--list-packets"], stdin : message }, defer err, buf
-  unless err?
-    try
-      out = (new Parser buf.toString('utf8')).run()
-    catch e
-      err = e
-  cb err, out
-      
-#=======================================================================
-

+ 0 - 26
node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/colgrep.iced

@@ -1,26 +0,0 @@
-
-{colgrep} = require '../../lib/main'
-
-exports.test1 = (T, cb) ->
-  input = """
-pub:u:2048:1:CC19461E16CD52C8:1388413669:1703773669::u:::scESC:
-uid:u::::1388413669::4A1C93DDE1779B6BE90393F4394AD983EC785808::Brown Hat I (pw is 'a') <themax+browhat1@gmail.com>:
-sub:u:2048:1:079F6793014A5F79:1388413669:1703773669:::::e:
-pub:f:1024:1:5308C23E96D307BE:1387294526:1702654526::-:::escaESCA:
-uid:f::::1387294526::9A7B91D6B62DC24454C408CB4D98210A31F4235F::keybase.io/taco1 (v0.0.1) <taco1@keybase.io>:
-sub:f:1024:1:5F8664C8B707AD86:1387294526:1418830526:::::esa:
-pub:-:1024:1:361D07D32CDF514E:1389274486:1704634486::-:::escaESCA:
-uid:-::::1389274486::039EE0C3AD2BCAFEA038A768F4288963FDD7C1E6::keybase.io/taco19 (v0.0.1) <taco19@keybase.io>:
-sub:-:1024:1:6F61BAE56CA1B67A:1389274486:1420810486:::::esa:
-"""
-  res = colgrep {
-    patterns : {
-      0 : /pub|sub/
-      4 : /A.*7/
-    },
-    buffer : (new Buffer input, 'utf8')
-    separator : /:/
-  }
-  T.equal res[0]?[4], '079F6793014A5F79', 'first row found'
-  T.equal res[1]?[4], '6F61BAE56CA1B67A', '2nd row found'
-  cb()

+ 0 - 10
node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/error.iced

@@ -1,10 +0,0 @@
-
-{E,GPG} = require '../../lib/main'
-
-exports.test_error_1 = (T,cb) ->
-  gpg = new GPG
-  await gpg.run { args : [ "-k", "-e" ], quiet : 'true' }, defer err
-  T.assert err?, "got an error back"
-  T.assert (err instanceof E.GpgError), "of the right instance"
-  T.equal err.stderr.toString('utf8'), "gpg: conflicting commands\n", "got an error in our Error"
-  cb()

+ 0 - 61
node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/gpg.iced

@@ -1,61 +0,0 @@
-
-{get_gpg_cmd,find_and_set_cmd,colgrep,GPG,set_gpg_cmd} = require '../../lib/main'
-
-exports.test_assert_no_collision = (T,cb) ->
-  obj = new GPG()
-  await obj.run { args : [ "-k", "--with-colons" ] }, defer err, out
-  T.no_error err
-  out = colgrep {
-    patterns : {
-      0 : /[ps]ub/
-    },
-    buffer : out,
-    separator : /:/
-  }
-  T.assert (out.length > 0), "need at least 1 key to make this work"
-  key = out[0][4]
-  await obj.assert_no_collision key, defer err, n
-  T.no_error err
-  T.equal n, 1, "we found exactly 1 key"
-  cb()
-
-exports.test_success = (T,cb) ->
-  x = new GPG()
-  await x.test defer err
-  T.no_error err
-  cb()
-
-exports.test_failure = (T,cb) ->
-  x = new GPG { cmd : "no_way_jose" }
-  await x.test defer err
-  T.assert err?, "failed to launch non-existent proc"
-  cb()
-
- exports.test_failure_2 = (T,cb) ->
-  set_gpg_cmd "blah_blah"
-  x = new GPG { }
-  await x.test defer err
-  T.assert err?, "failed to launch non-existent proc"
-  cb()
-
-exports.test_success_2 = (T,cb) ->
-  set_gpg_cmd "gpg"
-  x = new GPG {}
-  await x.test defer err
-  T.no_error err, "and reset properly to standard gpg"
-  cb()
-
-
-# Test will only work if you have both gpg and gpg2 installed
-exports.test_find = (T,cb) ->
-  await find_and_set_cmd null, defer err, version, cmd
-  T.no_error err
-  T.assert version?, "version came back"
-  T.equal cmd, "gpg2", "should find gpg2 by default"
-  T.equal get_gpg_cmd(), "gpg2", "should update global preferences"
-  await find_and_set_cmd "gpg", defer err, version, cmd
-  T.no_error err
-  T.assert version?, "version came back"
-  T.equal cmd, "gpg", "should find gpg if we asked"
-  T.equal get_gpg_cmd(), "gpg", "should update global preferences"
-  cb()

+ 0 - 186
node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/index.iced

@@ -1,186 +0,0 @@
-
-{Parser,parse} = require '../../lib/index'
-{TmpKeyRing} = require '../../lib/keyring'
-
-#======================================================================
-
-gpg_output = """
-tru::1:1392463756:1439900531:3:1:5
-pub:u:2048:17:76D78F0500D026C4:1282220531:1439900531::u:::scESC:
-fpr:::::::::85E38F69046B44C1EC9FB07B76D78F0500D026C4:
-uid:u::::1344775710::CAACC8CE9116A0BE42E58C61602F127B194EF5A5::GPGTools Team <team@gpgtools.org>:
-uid:u::::1344775710::8CACAFAD028BE38151D2361F9CD79CC81B4153B2::GPGTools Project Team (Official OpenPGP Key) <gpgtools-org@lists.gpgtools.org>:
-uid:u::::1282220531::03B2DCE7652DBBB93DA77FFC4328F122656E20DD::GPGMail Project Team (Official OpenPGP Key) <gpgmail-devel@lists.gpgmail.org>:
-uat:u::::1321476238::076E59FC200B10E38AEEA745AB6547AEE99FB9EE::1 5890:
-sub:u:2048:16:07EAE49ADBCBE671:1282220531:1439900531:::::e:
-pub:e:2048:1:78DCF9A45638F6F1:1324057408:1381019002::u:::esca:
-fpr:::::::::5CB9294EDE703C2ED76B649478DCF9A45638F6F1:
-uid:e::::1380932602::BAE797EBBD23C9257BC5C5274AE498263601FFFF::Max Krohn <max@okcupid.com>:
-sub:e:2048:1:9B54F0B9FC576209:1324057408:1450287808:::::esa:
-pub:e:2048:1:4437D388669EF5CF:1342348430:1381015753::u:::esca:
-fpr:::::::::142B2FB6EC949AB9AAC6E2904437D388669EF5CF:
-uid:e::::1380929353::759D5C7C38AD60551D46D2E6F34BA03640FE4379::Maxwell Krohn <themax@gmail.com>:
-sub:e:2048:1:86AEC52166C49EC9:1342348430:1468578830:::::esa:
-pub:u:4096:1:63847B4B83930F0C:1380929487:1507159887::u:::escaESCA:
-fpr:::::::::4475293306243408FA5958DC63847B4B83930F0C:
-uid:u::::1386987949::759D5C7C38AD60551D46D2E6F34BA03640FE4379::Maxwell Krohn <themax@gmail.com>:
-uid:u::::1380929487::14BC0C35326061518657E0B8F71A23E0CA537034::Max Krohn <themax@gmail.com>:
-sub:u:4096:1:2FE01C454348DA39:1380929487:1507159887:::::esa:
-pub:u:4096:1:FBC07D6A97016CB3:1381159886:1507390286::u:::escaESCA:
-fpr:::::::::94AA3A5BDBD40EA549CABAF9FBC07D6A97016CB3:
-uid:u::::1381159886::CF5361B3D400B377CED49FD557B744E93FA344D4::Chris Coyne <chris@chriscoyne.com>:
-sub:u:4096:1:D224413B1CFA6490:1381159886:1507390286:::::esa:
-pub:-:4096:1:EBF01804BCF05F6B:1346326188:::-:::escaESCA:
-fpr:::::::::428DF5D63EF07494BB455AC0EBF01804BCF05F6B:
-uid:-::::1360530305::ED4AFBC98FD3B49AE8CA7733A27BE82FFFB5E53F::Filippo Valsorda <filippo.valsorda@gmail.com>:
-uid:-::::1360528876::788372CBC7DDF24564AEA7138ABB09A648499E32::Filippo Valsorda <filosottile.wiki@gmail.com>:
-sub:e:2048:1:50223425F149AA25:1360529005:1392065005:::::s:
-sub:e:2048:1:3D1C752C0D83D9EC:1360529191:1392065191:::::e:
-pub:e:4096:1:56A4286A3DD61E72:1232175770:1263711770::-:::sc:
-fpr:::::::::ADBDA177656FD5228E34C45656A4286A3DD61E72:
-uid:e::::1232175770::913D07A9BE150E31934E0BDD30E0E72BAA00972D::Tarsnap source code signing key (Colin Percival) <cperciva@tarsnap.com>:
-pub:u:4096:1:47484E50656D16C7:1384876967:1511107367::u:::scESC:
-fpr:::::::::222B85B0F90BE2D24CFEB93F47484E50656D16C7:
-uid:u::::1384876967::5379B9706C5D468C86A572B07E28EBDB26BE0E97::Keybase.io Code Signing (v1) <code@keybase.io>:
-sub:u:4096:1:5929664098F03378:1384876967:1511107367:::::e:
-pub:-:4096:1:C9A2613970FB9C1A:1387730124:1703090124::-:::escaESCA:
-fpr:::::::::F6E88E94B87E7F4739516D3CC9A2613970FB9C1A:
-uid:-::::1387730124::55897318ED31ED923F78F39309C6A7B30712C5D3::keybase.io/taco3 (v0.0.1) <taco3@keybase.io>:
-sub:-:2048:1:22A07D398AF7E83D:1387730124:1419266124:::::esa:
-pub:-:4096:1:6FB0BE75C0B301AC:1388161792:1703521792::-:::escaESCA:
-fpr:::::::::7BC8BF5CC032C179C2C82A486FB0BE75C0B301AC:
-uid:-::::1388161792::FFFDF09966976366BE820498EEA957D65FE9C305::keybase.io/noob (v0.0.1) <noob@keybase.io>:
-sub:-:2048:1:E35826CED986F0AC:1388161792:1419697792:::::esa:
-pub:-:1024:1:C149654BD8A2C080:1389446345:1704806345::-:::escaESCA:
-fpr:::::::::DDF4EDB21FC5F94F9EDFF2C2C149654BD8A2C080:
-uid:-::::1389446345::E2B10048BC87972EF6D9CC80A9C59945CF521044::keybase.io/noob6 (v0.0.1) <noob6@keybase.io>:
-sub:-:1024:1:DA18DF4A4C231AF1:1389446345:1420982345:::::esa:
-pub:f:4096:1:199A25A57F9E8BFA:1390244586:1705604586::-:::scESC:
-fpr:::::::::50356E55ADBC1310C156B7F5199A25A57F9E8BFA:
-uid:f::::1390244586::5D4D8FC2FE2BA87FABB596E5E02E3DA9416F9F1B::Keybase.io Index Signing (v1) <index@keybase.io>:
-sub:f:4096:1:2A934F99974F25D4:1390244586:1705604586:::::e:
-pub:u:4096:1:6052B2AD31A6631C:1391639420:1706999420::u:::escaESCA:
-fpr:::::::::8EFBE2E4DD56B35273634E8F6052B2AD31A6631C:
-uid:u::::1391639420::0E83836893BE1130CC0CCF718A26FA19BCDC5866::keybase.io/max (v0.0.1) <max@keybase.io>:
-sub:u:2048:1:980A3F0D01FE04DF:1391639420:1423175420:::::esa:
-pub:-:4096:1:5B094948B11151F2:1392237184:1707597184::-:::escaESCA:
-fpr:::::::::E0600318C622F735D82EDF3D5B094948B11151F2:
-uid:-::::1392237184::5D9DB4E2334A1681D7F40E30DFAE61319BAA78A5::keybase.io/capndesign (v0.0.1) <capndesign@keybase.io>:
-sub:-:2048:1:4BABF9BC0ABA323B:1392237184:1423773184:::::esa:
-pub:u:1024:1:565DCCFB57308A88:1392463661:1518694061::u:::scESC:
-fpr:::::::::EAF36B487D10F811A34EDC40565DCCFB57308A88:
-uid:u::::1392463661::DF049F3B0441CA5D41B13407F3A6AFEF9E493238::Herbert Kitchener <herbert@kitchener.com>:
-uat:u::::1392463749::4EA48152D3CC8001632378E58194F0EDDBB267D8::1 10942:
-sub:u:1024:1:2A0CB1102B533C91:1392463661:1518694061:::::e:
-"""
-
-#======================================================================
-
-exports.parse_1 = (T,cb) ->
-  i = parse gpg_output
-  T.assert i?, "index came back"
-  q = "themax@gmail.com"
-  results = i.lookup().email.get(q)
-  T.equal results.length, 2, "the right number of records"
-  for r,i in results
-    found = false
-    for u in r.userids()
-      found = true if u.email is q
-    T.waypoint("found #{q} in result #{i}")
-    T.assert found, "found for result #{i}"
-  cb()
-
-#======================================================================
-
-exports.parse_2 = (T,cb) ->
-  p = new Parser gpg_output
-  i = p.parse()
-  T.assert i?, "index came back"
-  T.equal p.warnings().warnings().length, 0, "no warnings"
-  p = new Parser ("badstuff\n" + gpg_output + "\nbad:line\n")
-  i = p.parse()
-  T.assert i?, "index came back"
-  w = p.warnings().warnings()
-  T.equal w.length, 2, "found 2 warnings"
-  T.equal w[0].indexOf("1: "), 0, "Found '1: ' error prefix"
-  T.equal w[1].indexOf("69: "), 0, "Found '87: ' error prefix"
-  cb()
-
-#======================================================================
-
-gpg_with_fingerprint2_output = """
-tru::1:1393721309:1707777704:3:1:5
-pub:-:4096:1:6052B2AD31A6631C:2014-02-05:2024-02-03::-:keybase.io/max (v0.0.1) <max@keybase.io>::escaESCA:
-fpr:::::::::8EFBE2E4DD56B35273634E8F6052B2AD31A6631C:
-sub:-:2048:1:980A3F0D01FE04DF:2014-02-05:2015-02-05:::::esa:
-fpr:::::::::4AF88842F72A59565C669BDE980A3F0D01FE04DF:
-pub:-:4096:1:BAD2382DE379088C:2014-03-01:2024-02-27::-:keybase.io/max2 <max2@keybase.io>::escaESCA:
-fpr:::::::::741AE71745FE2A9FCE7FB5BCBAD2382DE379088C:
-sub:-:4096:1:276556C8A2529039:2014-03-01:2024-02-27:::::esa:
-fpr:::::::::D505C8C831C3DDF74813DDFF276556C8A2529039:
-pub:-:4096:1:6ADC353FA59EAC16:2014-02-28:2024-02-26::-:keybase.io/max1 (v0.0.1) <max1@keybase.io>::escaESCA:
-fpr:::::::::FA6DFC44C9426A3DEF8B72336ADC353FA59EAC16:
-sub:-:2048:1:CF0E4A8E88CBB038:2014-02-28:2015-02-28:::::esa:
-fpr:::::::::67D9D22291C4D64C0E038C32CF0E4A8E88CBB038:
-pub:u:4096:1:C2A863B7D67F29AE:2014-03-02:2024-02-28::u:keybase.io/max2 <max2@keybase.io>::escaESCA:
-fpr:::::::::A950C514D2EA4A9FB623C97FC2A863B7D67F29AE:
-sub:u:4096:1:527C4EF645328914:2014-03-02:2024-02-28:::::esa:
-fpr:::::::::AF8A6C125F1A20D89F0BC0A3527C4EF645328914:
-pub:-:4096:1:CB963D072C21251A:2014-03-02:2024-02-28::-:keybase.io/max1 (v0.0.1) <max1@keybase.io>::escaESCA:
-fpr:::::::::78E4953F9FF6661C60607AC8CB963D072C21251A:
-sub:-:2048:1:19F02EE567F65B75:2014-03-02:2015-03-02:::::esa:
-fpr:::::::::22B68606B648845584EABDFE19F02EE567F65B75:
-pub:-:4096:1:63847B4B83930F0C:2013-10-04:2017-10-04::-:Maxwell Krohn <themax@gmail.com>::escaESCA:
-fpr:::::::::4475293306243408FA5958DC63847B4B83930F0C:
-uid:-::::2013-10-04::14BC0C35326061518657E0B8F71A23E0CA537034::Max Krohn <themax@gmail.com>:
-sub:-:4096:1:2FE01C454348DA39:2013-10-04:2017-10-04:::::esa:
-fpr:::::::::C4EE7BCBCE2F0953DCF9E8902FE01C454348DA39:
-"""
-
-#======================================================================
-
-exports.parse_3 = (T, cb) ->
-  p = new Parser gpg_with_fingerprint2_output
-  i = p.parse()
-  T.assert i?, "index came back"
-  T.equal i.keys().length, 6, "got back 6 keys"
-  v = i.lookup().email.get('max@keybase.io')
-  T.equal v.length, 1, "got only 1 key back"
-  T.equal v[0].fingerprint(), '8EFBE2E4DD56B35273634E8F6052B2AD31A6631C', "right primary fingerprint"
-  T.equal v[0].key_id_64(), '6052B2AD31A6631C', "right primary key id 64"
-  T.equal v[0].subkeys().length, 1, "got only one subkey"
-  T.equal v[0].subkeys()[0].fingerprint(), '4AF88842F72A59565C669BDE980A3F0D01FE04DF', "right subkey fingerprint"
-  T.equal v[0].subkeys()[0].key_id_64(), '980A3F0D01FE04DF', "right subkey fingerprint"
-  cb()
-
-#======================================================================
-
-gpg_with_fingerprint_K_output = """
-sec::1024:17:2FC3671F312AA0FD:1400185635::::::ES:::#:
-fpr:::::::::FC60FD0920968905002D0B442FC3671F312AA0FD:
-uid:::::1400185635::A268A2439BB76EAAD8FF5C1D049A57989CF46D1C::Max 94 <themax+942@gmail.com>:
-ssb::2048:1:3E41DB0C88907077:1400185645::::::s::::
-fpr:::::::::02ACD95A6D8C84FBC3216D923E41DB0C88907077:
-ssb::2048:1:29F867D20E6CF5B6:1400185659::::::e::::
-fpr:::::::::B7C68A881CD1C60A993248B729F867D20E6CF5B6:
-"""
-
-#======================================================================
-
-exports.parse_4 = (T, cb) ->
-  p = new Parser gpg_with_fingerprint_K_output
-  i = p.parse()
-  T.assert i?, "index came back"
-  T.equal i.keys().length, 1, "got back 1 key"
-  v = i.lookup().email.get('themax+942@gmail.com')
-  T.equal v.length, 1, "got only 1 key back"
-  T.equal v[0].fingerprint(), 'FC60FD0920968905002D0B442FC3671F312AA0FD', "right primary fingerprint"
-  T.equal v[0].key_id_64(), '2FC3671F312AA0FD', "right primary key id 64"
-  T.equal v[0].subkeys().length, 2, "got two subkeys"
-  T.equal v[0].subkeys()[0].fingerprint(), '02ACD95A6D8C84FBC3216D923E41DB0C88907077', "right subkey fingerprint"
-  T.equal v[0].subkeys()[0].key_id_64(), '3E41DB0C88907077', "right subkey fingerprint"
-  T.equal v[0].subkeys()[1].fingerprint(), 'B7C68A881CD1C60A993248B729F867D20E6CF5B6', "right subkey fingerprint"
-  T.equal v[0].subkeys()[1].key_id_64(), '29F867D20E6CF5B6', "right subkey fingerprint"
-  cb()
-
-#======================================================================

+ 0 - 707
node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/keyring.iced

@@ -1,707 +0,0 @@
-
-keyring = require '../../lib/keyring'
-
-#-----------------------------------
-
-class Log extends keyring.Log
-  debug : (x) -> 
-
-#-----------------------------------
-
-ring2 = ring = null
-key = null
-key_data = """
-  -----BEGIN PGP PUBLIC KEY BLOCK-----
-Version: GnuPG v1.4.14 (GNU/Linux)
-
-mI0EUqpp2QEEANFByr3uPGsG5DqmV3kPLsTEmew5d8NcD3SqASas342LB5sDE0D6
-0fTDvjLYAiCTgVlZrSIx+SeeskygKH/AwnTCBK04V0HgpR0tyw+dGIV5ujFIo236
-O8XvIqaVoR1/zizy8fOSaFqr8rPQf3JYWxQn8IMLUS+ricOUZS/YSgNVABEBAAG0
-M0dhdmlyaWxvIFByaW5jaXAgKHB3IGlzICdhJykgPGdtYW5AdGhlYmxhY2toYW5k
-LmlvPoi+BBMBAgAoBQJSqmnZAhsDBQkSzAMABgsJCAcDAgYVCAIJCgsEFgIDAQIe
-AQIXgAAKCRDuXBLqbhXbknHWBACGwlrWuJyAznzZ++EGpvhVZBdgcGlU3CK2YOHC
-M9ijVndeXjAtAgUgW1RPjRCopjmi5QKm+YN1WcAdf6I+mnr/tdYhPYnRE+dNsEB7
-AWGsiwZOxQbwtCOIR+5AU7pzIoIUW1GsqQK3TbiuSRYI5XG6UdcV5SzQI96aKGvk
-S6O6uLiNBFKqadkBBADW31A7htB6sJ71zwel5yyX8NT5fD7t9xH/XA2dwyJFOKzj
-R+h5q1KueTPUzrV781tQW+RbHOsFEG99gm3KxuyxFkenXb1sXLMFdAzLvBuHqAjQ
-X9pJiMTCAK7ol6Ddtb/4cOg8c6UI/go4DU+/Aja2uYxuqOWzwrantCaIamVEywAR
-AQABiKUEGAECAA8FAlKqadkCGwwFCRLMAwAACgkQ7lwS6m4V25IQqAQAg4X+exq1
-+wJ3brILP8Izi74sBmA0QNnUWk1KdVA92k/k7qA/WNNobSZvW502CNHz/3SQRFKU
-nUCByGMaH0uhI6Fr1J+pjDgP3ZelZg0Kw1kWvkvn+X6aushU3NHtyZbybjcBYV/t
-6m5rzEEXCUsYrFvtAjG1/bMDLT0t1AA25jc=
-=59sB
------END PGP PUBLIC KEY BLOCK-----
-"""
-fingerprint = "1D1A20E57C763DD42258FBC5EE5C12EA6E15DB92"
-
-payload = "I hereby approve of the Archduke's assassination.  Please spare his wife.\n"
-sig = """
------BEGIN PGP MESSAGE-----
-Version: GnuPG v1.4.14 (GNU/Linux)
-
-owGbwMvMwMT4LkboVZ7o7UmMpwOSGIJu/27zVMhILUpNqlRILCgoyi9LVchPUyjJ
-SFVwLErOSCnNTlUvVkgsLgaizLzEksz8PD0FhYCc1MTiVIXigsSiVIWMzGKF8sy0
-VD2ujjksDIxMDGysTCBzGbg4BWCWrVNjYWg1Py9w8X/oMuuysk7JcilXkWqjy9uX
-N8bOfbp+ZZK7rYGMD++edRt9Mk5ITp+2cPcunVXv2FmCO6d6SD3lnOybvcXytJFt
-S+fz1cqTPdi3dT47XXj97IWY65u1pO9HBUZmy0/YzihX4Pz/ZIO7hnfb1N4l7Fw/
-Hz30FTkcaHWq7oPoHAWeYwA=
-=2ENa
------END PGP MESSAGE-----
-"""
-
-#-----------------
-
-kaiser2 =
-  key_data : """
------BEGIN PGP PUBLIC KEY BLOCK-----
-Version: GnuPG/MacGPG2 v2.0.22 (Darwin)
-Comment: GPGTools - https://gpgtools.org
-
-mQENBFLf0DYBCADGz/jWmSDY8c4yVorLgDXK1GpHmqmGOaacBjdSC0Os0+oBcvI7
-o7rVZkkOeHoLGfr4HaQ6iXF61PxMjRpvUmDMrznrYGnOsSiiY0S6IFmAoEnu7BqI
-2ZPQEwqxV4o9iQ6ttffh0LC/5IX3+0sXt6uWebAyE0fW3Rw1drSaElUdzXRu7/nw
-e75oLhNSVguLFMhhs6VvUglcYRsZJN+hNOW0oVOIBWHDCtI713U/wFepaOov0g48
-Ysj2gFLnhUMGPgb+yTKeDLvlQQCZoIXBWWTy7sM/LU0xsegP0Wpsv+aj7fNcoxYp
-tuqQwPOzu35B7J4++ECmQ0qoVND9j5iChA2xABEBAAG0IkthaXNlciBXaWxoZWxt
-IDxrYWlzZXIyQHlhaG9vLmNvbT6JAT0EEwEKACcFAlLf0DYCGwMFCRLMAwAFCwkI
-BwMFFQoJCAsFFgIDAQACHgECF4AACgkQY+EQEyiPLUiCcQf/REXdwDfJRHc7DpWJ
-M/o+NDke4d60gh3wtNRUWlsbAF/Xc1aZjEJt0xRIx3QJ8P5+FYfMsk2/05UfXmrg
-KE69AEP2x3FcbnkYeSG0jwbDi5h7such17SDxV9M/s4iHjJKBglyDxYltG2xZ8Xu
-NNTi2VkvvulrRcwonQr/hPDibMKIgY7Xrxw3nZK/pOOXaidcIvuoGpOd9w3UniGc
-zOzSi3CqTQrpf+5/p0rZE2tdJdNTm2MUww8FiUzpzdUfMAunVSpK1WazpWXkJ9sS
-4H6dE+GUWh71f4j69NNfzOG4YWQ6syjJ12BtlLRNl403LvPubhVaKr0gHF5wEeI0
-4h0YR7kBDQRS39A2AQgA6Vfl/9NBltJOxQ921rJJTqsjxW/chIX1HGYEYWRrJrfD
-iEoC1jYDOKmP6q6PYREeyhB1G5uER2FQnjtxY8Wo+BpwsJ+s/stgRZoHUM2AsmPb
-rnEt8J781trSjbTuySgRkqsQAQizhrsAq0jnpOCmAPVbsFvC4oV9kjiXDOet2j9j
-tfZ5FnfESqQ0tmrdIXvKaa3+jE5hnRvyhBrwyoYny6SBw4eqogUjQnUa1yo4X0Si
-dPmNDA6DdIFG6+OxR3emRNxeuYRq3oHJLAalGlhMQCn8QK1RyoyRqDcekMHB0hYV
-uNgxgta11hIdipBohrJIeKVcGKXt29XSnS0iWdm/DQARAQABiQElBBgBCgAPBQJS
-39A2AhsMBQkSzAMAAAoJEGPhEBMojy1I1t8H/3hXg/3WwN33iY1bodU8oXYVBbKG
-pjs/A/fP/H3+3MqG6z/sspUfXluS7baNRmg5HB300vMGqPRJ5EU5/anOu/EJxj1A
-NJpSiJnXyjwVx7EviMgLPlZC0HTYNPsiXZLe7p/WAWHy5HRH9iAgu0IOPon1MniV
-9lgJHsOS+zF+ostVB6PFglEJt4y7ySeFuxpRTi0ulYyO/LHW7nJZkl6xzpvykJws
-3it8W3ecYAodkySzgLN8zqS8nlqlsJgO/NYIQd3c67MKA+92A75VlCMJ25SrsaVm
-Enqh2naqYfmkmhWk5KInf02pSAwD5I/roTYO9kO1QjLrVj1d058K2/T2Z0o=
-=U857
------END PGP PUBLIC KEY BLOCK-----
-"""
-  username : "kaiser2@yahoo.com"
-  fingerprint : "A03CC843D8425771B59F731063E11013288F2D48"
-  payload_json : { ww : 1 }
-  payload : '{ "ww" : 1 }\n'
-  sig : """-----BEGIN PGP MESSAGE-----
-Version: GnuPG/MacGPG2 v2.0.22 (Darwin)
-Comment: GPGTools - https://gpgtools.org
-
-owEBQwG8/pANAwAKAWPhEBMojy1IAcsTYgBS39KUeyAid3ciIDogMSB9CokBHAQA
-AQoABgUCUt/SlAAKCRBj4RATKI8tSN+tB/90cxDDxC0PjoPqbO2ZrbI1q2FGyZI3
-Ayukt+u/cTadECcigJzE05ymKevKCVJFHASEp4SMn9nW4QSD5fTRcqo6QBfWImQi
-UYbirBvhejAARusJmLKtpmosxxsiEYQ1bcFJjx2+UQLr40uw5RHXfgP8CuUqadrw
-Wm+wqLwUwXxbrYb5FCZ8nziEUwOl2rpqV1NIj59D3BZps43Q5QCCTRZF5+eJJyg+
-AhyYGythrOMbYKWmRRGhIdy3QU34IHGxNh3o2bz6YBiM/JD8CY0M0HT33xU93LvB
-7UowhdY7p9M8R0Ql21T4+5AOxPxHQIypRKOl5oJPvZg8avtDT8sc5fRw
-=Uy2n
------END PGP MESSAGE-----
-"""
-
-#-----------------
-
-exports.init = (T, cb) ->
-  keyring.init {
-    get_preserve_tmp_keyring : () -> false
-    get_tmp_keyring_dir : () -> "."
-    log : new Log()
-  }
-  cb()
-
-#-----------------
-
-exports.make_ring = (T,cb) ->
-  await keyring.TmpKeyRing.make defer err, tmp
-  T.no_error err
-  T.assert tmp, "keyring came back"
-  ring = tmp
-  cb()
-
-#-----------------
-
-exports.test_import = (T,cb) ->
-  key = ring.make_key {
-    key_data,
-    fingerprint,
-    username : "gavrilo"
-  }
-  await key.save defer err
-  T.no_error err
-  await key.load defer err
-  T.no_error err
-  cb()
-
-#-----------------
-
-exports.test_verify = (T,cb) ->
-  await key.verify_sig { sig, payload, which : "msg" }, defer err
-  T.no_error err
-  cb()
-
-#-----------------
-
-exports.test_read_uids = (T, cb) ->
-  await ring.read_uids_from_key { fingerprint }, defer err, uids
-  T.no_error err
-  T.equal uids.length, 1, "the right number of UIDs"
-  # Whoops, there was as typo when I made this key!
-  T.equal uids[0].username, "Gavirilo Princip" , "the right username"
-  cb()
-
-#-----------------
-
-exports.test_copy = (T,cb) ->
-  await keyring.TmpKeyRing.make defer err, ring2
-  T.no_error err
-  T.assert ring2, "keyring2 was made"
-  await ring2.read_uids_from_key { fingerprint }, defer err, uids
-  T.assert err, "ring2 should be empty"
-  key2 = key.copy_to_keyring ring2
-  await key2.save defer err
-  T.no_error err
-  await key2.load defer err
-  T.no_error
-  await key2.verify_sig { sig, payload, which : "key2" }, defer err
-  T.no_error err
-  await ring2.nuke defer err
-  T.no_error err
-  cb()
-
-#-----------------
-
-exports.test_find = (T, cb) ->
-  await ring.find_keys { query : "gman@" }, defer err, id64s
-  T.no_error err
-  T.equal id64s, [ fingerprint[-16...] ], "got back the 1 and only right key"
-  cb()
-
-#-----------------
-
-exports.test_list = (T,cb) ->
-  await ring.list_keys defer err, id64s
-  T.no_error err
-  T.equal id64s, [ fingerprint[-16...] ], "got back the 1 and only right key"
-  cb()
-
-#-----------------
-
-exports.test_one_shot = (T,cb) ->
-  await ring.make_oneshot_ring { query : fingerprint, single : true }, defer err, r1
-  T.no_error err
-  T.assert r1, "A ring came back"
-  await r1.nuke defer err
-  T.no_error err
-  cb()
-
-#-----------------
-
-exports.test_oneshot_verify = (T,cb) ->
-  key = ring.make_key kaiser2
-  await key.save defer err
-  T.no_error err
-  await ring.oneshot_verify { query : kaiser2.username, single : true, sig : kaiser2.sig }, defer err, json
-  T.no_error err
-  T.equal kaiser2.payload_json, json, "JSON payload checked out"
-  cb()  
-
-#-----------------
-
-exports.test_verify_sig = (T,cb) ->
-  await key.verify_sig { which : "something", payload : kaiser2.payload, sig : kaiser2.sig }, defer err
-  T.no_error err
-  cb()
-
-#-----------------
-
-exports.test_import_by_username = (T,cb) ->
-  key = ring.make_key {username : "<gman@theblackhand.io>"}
-  await key.load defer err
-  T.no_error err
-  T.equal key.uid().username, 'Gavirilo Princip', "username came back correctly after load"
-  cb()
-
-#-----------------
-
-exports.test_import_by_username_with_space_and_control_chars = (T,cb) ->
-  if process.platform is 'win32'
-    T.waypoint "skipped on windows :("
-  else
-    key = ring.make_key keybase_v1_index
-    await key.save defer err
-    T.no_error err
-    key = ring.make_key {username : "(v1) <index@keybase.io>"}
-    await key.load defer err
-    T.no_error err
-    T.equal key.uid().username, 'Keybase.io Index Signing', "username came back correctly after load"
-  cb()
-
-#-----------------
-
-keybase_v1_index = 
-  key_data : """
------BEGIN PGP PUBLIC KEY BLOCK-----
-Version: GnuPG/MacGPG2 v2.0.22 (Darwin)
-Comment: GPGTools - http://gpgtools.org
-
-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
-=kK8c
------END PGP PUBLIC KEY BLOCK-----
-"""
-
-#-----------------
-
-exports.nuke_ring = (T,cb) ->
-  await ring.nuke defer err
-  T.no_error err
-  cb()
-
-#==================================================================
-
-keyring_raw = """
------BEGIN PGP PUBLIC KEY BLOCK-----
-Version: GnuPG/MacGPG2 v2.0.22 (Darwin)
-Comment: GPGTools - http://gpgtools.org
-
-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
-A+k/SlaiV1ZqK5YbGFS+
-=7jBz
------END PGP PUBLIC KEY BLOCK-----
-"""
-
-exports.index_keyring = (T,cb) ->
-  await keyring.TmpKeyRing.make defer err, ring
-  T.no_error err, "make tmp key ring"
-  await ring.gpg { args : [ "--import"], stdin : keyring_raw, quiet : true }, defer err
-  T.no_error err, "import worked ok"
-  await ring.index defer err, index
-  fp = "E0600318C622F735D82EDF3D5B094948B11151F2".toLowerCase()
-  keys = index.lookup().fingerprint.get(fp)
-  T.assert keys?, "key came back for our fingerprint #{fp}"
-  T.equal keys.length, 1, "only one key came back" 
-  T.equal keys[0].userids().length, 1, "only 1 userid"
-  T.equal keys[0].userids()[0].username, "keybase.io/capndesign", "and it was the capn"
-  T.no_error err, "indexing worked ok"
-  await ring.nuke defer err
-  T.no_error err, "nuked the ring ok"
-  cb()
-
-#======================================================================
-
-

+ 0 - 33
node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/parse.iced

@@ -1,33 +0,0 @@
-
-{parse} = require '../../lib/main'
-
-exports.test_parse = (T,cb) ->
-  message = """
------BEGIN PGP MESSAGE-----
-Version: GnuPG/MacGPG2 v2.0.22 (Darwin)
-Comment: GPGTools - https://gpgtools.org
-
-owEBPALD/ZANAwAKAS/gHEVDSNo5AcsMYgBSzEhJaGVsbG8KiQIcBAABCgAGBQJS
-zEhJAAoJEC/gHEVDSNo5d5gQAMHe2bPIFLL8wdu+KG9rkSqZ3iHloaHTkhN729T1
-+OefN1YeS7RpOHMcptNKtu36f9LFeDUCfgeevXcL3v3f5Crvl1TCmAft87HlsqZ0
-2L++qULRkauu2+HYHB0tr5RwaTYH8A3rYLD79Atrh0XStHcsh3C6ISmePEl+eStE
-3uhaEZ+r/PTKxN7/+qh8tGQuhRTI1fC/3rZmDqHQigTJm6pBvy/kDeATVdKevpbZ
-brM+1jWITs+c2UkbZLmmIqHEe3JZrkvk6wP96HSTZkopMtyqMUnkdZLwe3MsYtPc
-aiB3xGD5K5EZeVOkYAyfbpm0QhuPg9sNF16D+qhoie7vvVOeoKA5wpI8aQ6rnbCc
-o/sUUlcMV1UaqeOqazXEEusAzw/Mh6mE7FIgW5f2DWzmu4BKcvbGJBbtxVAjVX6x
-omaUjqVVDLXahbZefwC5VuKYe5DySzWFGVCoJ1Jh+kNtvRXRBzsODA2tQcRVKRxH
-pYfYhCSN95qFV+EfYuuvRLSsUSqn4jDE2QHzxl6zi0NWvvFWPLAmr8pitEm62E8g
-AUY4cbCb+KksTAin1xayDWYuTsmLaMSBkOdo7/HElf0y17a7+FbNy/lzlMylcs23
-OCRE6vCa7Pk9dsHC7OlRcG5rEGFnKuZfnZdftM7nUFNtbIozdvGeJzRn9a4roRw2
-fWti
-=QoKV
------END PGP MESSAGE-----
-"""
-  await parse { message }, defer err, mout
-  T.no_error err
-  T.equal mout.packets().length, 4, "we got 4 packets"
-  types = (p.type for p in mout.packets())
-  T.equal types, [ 'compressed', 'onepass_sig', 'literal data', 'signature' ], "types are OK"
-  T.equal mout.packets()[1].options, "keyid 2FE01C454348DA39", "option correct on onepass_sig"
-  T.equal mout.packets()[2].subfields()[1], "raw data: 6 bytes", "subfield 1 on literal"
-  cb()

+ 0 - 3
node_modules/keybase-installer/node_modules/gpg-wrapper/test/run.iced

@@ -1,3 +0,0 @@
-argv = require('minimist')(process.argv[2...])
-wl = if argv._.length > 0 then argv._ else null
-require('iced-test').run { mainfile : __filename, whitelist : wl, files_dir : "files" }

+ 0 - 2
node_modules/keybase-installer/node_modules/iced-data-structures/.npmignore

@@ -1,2 +0,0 @@
-node_modules/
-build-stamp

+ 0 - 20
node_modules/keybase-installer/node_modules/iced-data-structures/LICENSE

@@ -1,20 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) 2013 Maxwell Krohn
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
-the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
-FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
-COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

+ 0 - 25
node_modules/keybase-installer/node_modules/iced-data-structures/Makefile

@@ -1,25 +0,0 @@
-ICED=node_modules/.bin/iced
-BROWSERIFY=node_modules/.bin/browserify
-BUILD_STAMP=build-stamp
-WD=`pwd`
-
-lib/%.js: src/%.iced
-	$(ICED) -I none -c -o lib $<
-
-$(BUILD_STAMP): \
-	lib/index.js \
-	lib/list.js 
-	date > $@
-
-build: $(BUILD_STAMP)
-
-clean:
-	rm -f lib/*.js $(BUILD_STAMP)
-
-default: build
-all: build
-
-setup:
-	npm install -d
-
-.PHONY: clean setup 

+ 0 - 4
node_modules/keybase-installer/node_modules/iced-data-structures/README.md

@@ -1,4 +0,0 @@
-node-data-structures
-====================
-
-Simple commonly-used data structures

+ 0 - 7
node_modules/keybase-installer/node_modules/iced-data-structures/lib/index.js

@@ -1,7 +0,0 @@
-// Generated by IcedCoffeeScript 1.6.3-g
-(function() {
-
-
-  exports.List = require('./list').List;
-
-}).call(this);

+ 0 - 68
node_modules/keybase-installer/node_modules/iced-data-structures/lib/list.js

@@ -1,68 +0,0 @@
-// Generated by IcedCoffeeScript 1.6.3-g
-(function() {
-  var List;
-
-
-
-  exports.List = List = (function() {
-    function List() {
-      this._head = null;
-      this._tail = null;
-    }
-
-    List.prototype.head = function() {
-      return this._head;
-    };
-
-    List.prototype.tail = function() {
-      return this._tail;
-    };
-
-    List.prototype.push = function(o) {
-      o.__list_prev = this._tail;
-      o.__list_next = null;
-      if (this._tail) {
-        this._tail.__list_next = o;
-      }
-      this._tail = o;
-      if (!this._head) {
-        return this._head = o;
-      }
-    };
-
-    List.prototype.walk = function(fn) {
-      var next, p;
-      p = this._head;
-      while (p) {
-        next = p.__list_next;
-        if (!fn(p)) {
-          break;
-        }
-        p = next;
-      }
-      return true;
-    };
-
-    List.prototype.remove = function(w) {
-      var next, prev;
-      next = w.__list_next;
-      prev = w.__list_prev;
-      if (prev) {
-        prev.__list_next = next;
-      } else {
-        this._head = next;
-      }
-      if (next) {
-        next.__list_prev = prev;
-      } else {
-        this._tail = prev;
-      }
-      w.__list_next = null;
-      return w.__list_prev = null;
-    };
-
-    return List;
-
-  })();
-
-}).call(this);

+ 0 - 55
node_modules/keybase-installer/node_modules/iced-data-structures/package.json

@@ -1,55 +0,0 @@
-{
-  "_from": "iced-data-structures@>=0.0.5 <0.1.0",
-  "_id": "iced-data-structures@0.0.5",
-  "_location": "/keybase-installer/iced-data-structures",
-  "_npmUser": {
-    "name": "maxtaco",
-    "email": "themax@gmail.com"
-  },
-  "_npmVersion": "1.3.11",
-  "_phantomChildren": {},
-  "_requiredBy": [
-    "/keybase-installer"
-  ],
-  "_resolved": "https://registry.npmjs.org/iced-data-structures/-/iced-data-structures-0.0.5.tgz",
-  "_shasum": "21de124f847fdeeb88f32cf232d3e3e600e05db4",
-  "_shrinkwrap": null,
-  "bugs": {
-    "url": "https://github.com/maxtaco/node-data-structures/issues"
-  },
-  "dependencies": {},
-  "description": "Simple commonly-used data structures, written in IcedCoffeeScript",
-  "devDependencies": {
-    "iced-coffee-script": "*"
-  },
-  "directories": {
-    "lib": "lib"
-  },
-  "dist": {
-    "shasum": "21de124f847fdeeb88f32cf232d3e3e600e05db4",
-    "tarball": "http://registry.npmjs.org/iced-data-structures/-/iced-data-structures-0.0.5.tgz"
-  },
-  "homepage": "https://github.com/maxtaco/node-data-structures",
-  "licenses": [
-    {
-      "type": "MIT",
-      "url": "http://www.opensource.org/licenses/mit-license.php"
-    }
-  ],
-  "main": "./lib/index.js",
-  "maintainers": [
-    {
-      "name": "maxtaco",
-      "email": "themax@gmail.com"
-    }
-  ],
-  "name": "iced-data-structures",
-  "optionalDependencies": {},
-  "readme": "node-data-structures\n====================\n\nSimple commonly-used data structures",
-  "readmeFilename": "README.md",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/maxtaco/node-data-structures.git"
-  },
-  "version": "0.0.5"
-}

+ 0 - 2
node_modules/keybase-installer/node_modules/iced-data-structures/src/index.iced

@@ -1,2 +0,0 @@
-
-exports.List = require('./list').List

+ 0 - 54
node_modules/keybase-installer/node_modules/iced-data-structures/src/list.iced

@@ -1,54 +0,0 @@
-
-##=======================================================================
-
-exports.List = class List
-
-  #-----------------------------------------
-
-  constructor: ->
-    @_head = null
-    @_tail = null
-
-  #-----------------------------------------
-
-  head : () -> @_head
-  tail : () -> @_tail
-
-  #-----------------------------------------
-
-  push : (o) ->
-    o.__list_prev = @_tail
-    o.__list_next = null
-    @_tail.__list_next = o if @_tail
-    @_tail = o
-    @_head = o unless @_head
-
-  #-----------------------------------------
-
-  # fn() is a function that's called once with each
-  # element in the list. Keep walking the list so long
-  # as fn() returns true; otherwise, break out.
-  walk : (fn) ->
-    p = @_head
-    while p
-      next = p.__list_next
-      break unless fn p
-      p = next
-    true
-
-  #-----------------------------------------
-
-  remove : (w) ->
-    next = w.__list_next
-    prev = w.__list_prev
-    
-    if prev then prev.__list_next = next
-    else         @_head = next
-    
-    if next then next.__list_prev = prev
-    else         @_tail = prev
-
-    w.__list_next = null
-    w.__list_prev = null
-    
-##=======================================================================     

+ 0 - 1
node_modules/keybase-installer/node_modules/iced-error/.npmignore

@@ -1 +0,0 @@
-node_modules

+ 0 - 18
node_modules/keybase-installer/node_modules/iced-error/Makefile

@@ -1,18 +0,0 @@
-
-ICED=node_modules/.bin/iced
-
-index.js: index.iced
-	$(ICED) -m -c $<
-
-default: index.js
-
-pubclean:
-	rm -rf node_modules
-
-clean:
-	rm -rf index.js
-
-setup:
-	npm install -d
-
-.PHONY: setup pubclean

+ 0 - 65
node_modules/keybase-installer/node_modules/iced-error/README.md

@@ -1,65 +0,0 @@
-
-# IcedErrors
-
-An integrated error system for dealing with errors, written for
-and with IcedCoffeeScript.  I found myself doing this stuff everytime
-I wrote a new project, so better to standardize it.
-
-## Enumerated Error Types
-
-In your `lib/error.iced` file:
-
-```coffeescript
-
-{make_errors} = require 'iced-error'
-exports.E = make_errors
-  NOT_FOUND : "Requested resource was not found"
-  BAD_MAC : "MAC failed on header"
-  INVAL : "Invalid value"
-  DB_INSERT : "Error inserting into the database"  
-```
-
-In your `foo.iced` file:
-
-```coffeescript
-{E} = require './lib/error'
-
-console.log E.OK                # prints 0
-console.log E.NOT_FOUND         # prints 100
-console.log E.msg[E.NOT_FOUND]  # prints "Requested resource was not found"
-console.log E.msg.NOT_FOUND]    # prints "Requested resource was not found"
-console.log E.name.NOT_FOUND    # prints "NOT_FOUND"
-console.log E.name[E.NOT_FOUND] # prints "NOT_FOUND"
-```
-
-You can also use predefined Error classes:
-
-```coffeescript
-{E} = require './lib/error'
-
-# You can throw these errors too
-throw new E.NotFoundError("your file") 
-
-# Will print [NotFoundError: your file (code 100)]
-console.log new E.NotFoundError "your file"
-
-# Will print "your file"
-console.log (new E.NotFoundError "your file").message
-
-# Will print 100
-console.log (new E.NotFoundError "your file").code
-```
-
-## Error Short Circuiters
-
-Catch errors all at once, not everywhere! 
-
-```coffeescript
-{make_esc} = require 'iced-error'
-my_fn = (cb) ->
-  esc = make_esc gcb, "my_fn"
-  await socket.get 'image id', esc defer id
-  await Image.findById id, esc defer image
-  await check_permissions user, image, esc defer permitted
-  gcb null, image
-```

+ 0 - 73
node_modules/keybase-installer/node_modules/iced-error/SIGNED.md

@@ -1,73 +0,0 @@
-##### Signed by https://keybase.io/max
-```
------BEGIN PGP SIGNATURE-----
-Version: GnuPG/MacGPG2 v2.0.22 (Darwin)
-Comment: GPGTools - https://gpgtools.org
-
-iQEcBAABCgAGBQJTjeR2AAoJEJgKPw0B/gTfgxIH/1R5M19ZeWwKj91DHD8sWlV1
-xIGmIzBFsAJN9tde3JfKn+btPAyuSkUa2TJthBrYR4uucw8+2n4xprknfhB8ahnt
-Vk4mXcdM5ZyVtG0PfIWrise2/3iRty4xYNBu3N13YH/O/4KY0vpeM/+6YH7IoyXR
-phIMOIQvHmx3WNOcaIT/D6pr5n3iCtmCyZJi8n272kSdOnNTcEynngnSbOfS9kCj
-w08v0u0a2tJzZ6+rlJg3N6dgzvfmd3I0ydDDb08tzSG0u09Mc1O6EuPYPWSmr4Pn
-OmdGUjL+C2kTp4f3hTV0PbmX58ZXtBQc3Cs6dWVeudg8oIu5kQi757HYxENndEg=
-=Bpox
------END PGP SIGNATURE-----
-
-```
-
-<!-- END SIGNATURES -->
-
-### Begin signed statement 
-
-#### Expect
-
-```
-size  exec  file            contents                                                        
-            ./                                                                              
-13            .gitignore    16d30e4462189fb14dd611bdb708c510630c576a1f35b9383e89a4352da36c97
-193           Makefile      23c9b8634bc5ded1e2b925af63ecf89842491817000ba7fa2a4e68c6c6248cc6
-1675          README.md     231664c0e663782b27f6a8290604ab1ad48f072441c2347aaa495f48232b251e
-4026          index.iced    81a0d4054cbb60d4fbfaa58854ef2335d3a581781267c12b23f44632e9b95514
-6523          index.js      e0f9763f0eae8ba5763e36772cf04360f4b8ff5ac329d0cac68a574e88bbe37b
-6177          index.map     5cbff70c7b57c57d2ad91d2740358d50ef9bd7741aee60d8f6716568e8d57947
-509           package.json  f82a7d8dc20e922673b70fe48d0a2332f080b1acd125d46b496012118dfb22f2
-```
-
-#### Ignore
-
-```
-/SIGNED.md
-```
-
-#### Presets
-
-```
-git      # ignore .git and anything as described by .gitignore files
-dropbox  # ignore .dropbox-cache and other Dropbox-related files    
-kb       # ignore anything as described by .kbignore files          
-```
-
-<!-- summarize version = 0.0.8 -->
-
-### End signed statement
-
-<hr>
-
-#### Notes
-
-With keybase you can sign any directory's contents, whether it's a git repo,
-source code distribution, or a personal documents folder. It aims to replace the drudgery of:
-
-  1. comparing a zipped file to a detached statement
-  2. downloading a public key
-  3. confirming it is in fact the author's by reviewing public statements they've made, using it
-
-All in one simple command:
-
-```bash
-keybase dir verify
-```
-
-There are lots of options, including assertions for automating your checks.
-
-For more info, check out https://keybase.io/docs/command_line/code_signing

+ 0 - 160
node_modules/keybase-installer/node_modules/iced-error/index.iced

@@ -1,160 +0,0 @@
-
-util = require 'util'
-
-#=========================================================
-
-exports.BaseError = BaseError = (msg, constructor) ->
-  Error.captureStackTrace @, @constructor
-  @message = msg or 'Error'
-util.inherits BaseError, Error
-BaseError.prototype.name = "BaseError"
-
-#=========================================================
-
-to_lower   = (s) -> (s[0].toUpperCase() + s[1...].toLowerCase())
-c_to_camel = (s) -> (to_lower p for p in s.split /_/).join ''
-
-make_error_klass = (k, code, default_msg) ->
-  ctor = (msg) -> 
-    BaseError.call(this, (msg or default_msg), this.constructor)
-    this.istack = []
-    this.code = code
-    this
-  util.inherits ctor, BaseError
-  ctor.prototype.name = k
-  ctor.prototype.inspect = () -> "[#{k}: #{this.message} (code #{this.code})]"
-  ctor
-
-#=========================================================
-
-exports.make_errors = make_errors = (d) ->
-  out =
-    msg : {}
-    name : {}
-    code : {}
-
-  # Constants
-  d.OK = "Success"
-  errno = 100
-
-  for k,msg of d
-    if k isnt "OK"
-      enam = (c_to_camel k) + "Error"
-      val = errno++
-      out[enam] = make_error_klass enam, val, msg
-    else
-      val = 0
-    out[k] = val
-    out.msg[k] = out.msg[val] = msg
-    out.name[k] = out.name[val] = k
-    out.code[k] = val
-
-  out
-
-#=========================================================
-
-ipush = (e, msg) ->
-  if msg?
-    e.istack = [] unless e.istack?
-    e.istack.push msg
-
-# Error short-circuit connector
-exports.make_esc = make_esc = (gcb, where) -> (lcb) ->
-  (err, args...) ->
-    if not err? then lcb args...
-    else if not gcb.__esc
-      gcb.__esc = true
-      ipush err, where
-      gcb err
-
-#================================================
-
-# A class-based Error short-circuiter; output OK
-exports.EscOk = class EscOk
-  constructor : (@gcb, @where) ->
-
-  bailout : () ->
-    if @gcb
-      t = @gcb
-      @gcb = null
-      t false
-
-  check_ok : (cb) ->
-    (ok, args...) =>
-      if not ok then @bailout()
-      else cb args...
-
-  check_err : (cb) ->
-    (err, args...) =>
-      if err?
-        ipush err, @where
-        @bailout()
-      else cb args...
-
-  check_non_null : (cb) ->
-    (args...) =>
-      if not args[0]? then @bailout()
-      else cb args...
-
-#================================================
-
-exports.EscErr = class EscErr
-  constructor : (@gcb, @where) ->
-
-  finish : (err) ->
-    if @gcb
-      t = @gcb
-      @gcb = null
-      t err
-
-  check_ok : (cb, eclass = Error, emsg = null) -> 
-    (ok, args...) ->
-      if not ok 
-        err = new eclass emsg
-        ipush err, @where
-        @finish err
-      else cb args...
-
-  check_err : (cb) ->
-    (err, args...) ->
-      if err?
-        ipush err, @where
-        @finish err
-      else cb args...
-
-#================================================
-
-#
-# A class for canceling an expensive operation.
-# You can either generate a generic Error or one of the
-# Class of your choosing. 
-#
-exports.Canceler = class Canceler
-  constructor : (@klass = Error) -> @_canceled = false
-  is_canceled : () -> @_canceled
-  is_ok       : () -> not @_canceled
-  cancel      : () -> @_canceled = true
-  err         : () -> if @_canceled then (new @klass "Aborted") else null
-
-#================================================
-
-# Chain callback cb and f
-# Call f first, and throw away whatever it calls back with.
-# Then call cb, and pass it the args the chain was called back
-# with.  This is useful for doing a cleanup routine before 
-# something exits.
-exports.chain = (cb, f) -> (args...) -> f () -> cb args...
-
-#================================================
-
-# Chain callback cb and f
-# Call f first, and see if it calls back with a first positional error.
-# The error is either the original error, or the error from f.
-# Call cb back with args0 unless there was an error in cleanup and no
-# error in the original.
-exports.chain_err = (cb, f) -> 
-  (args0...) -> 
-    f (args1...) ->
-      cb (if args1[0]? and not(args0[0]?) then args1 else args0)...
-
-#================================================

+ 0 - 270
node_modules/keybase-installer/node_modules/iced-error/index.js

@@ -1,270 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-c
-(function() {
-  var BaseError, Canceler, EscErr, EscOk, c_to_camel, ipush, make_error_klass, make_errors, make_esc, to_lower, util,
-    __slice = [].slice;
-
-  util = require('util');
-
-  exports.BaseError = BaseError = function(msg, constructor) {
-    Error.captureStackTrace(this, this.constructor);
-    return this.message = msg || 'Error';
-  };
-
-  util.inherits(BaseError, Error);
-
-  BaseError.prototype.name = "BaseError";
-
-  to_lower = function(s) {
-    return s[0].toUpperCase() + s.slice(1).toLowerCase();
-  };
-
-  c_to_camel = function(s) {
-    var p;
-    return ((function() {
-      var _i, _len, _ref, _results;
-      _ref = s.split(/_/);
-      _results = [];
-      for (_i = 0, _len = _ref.length; _i < _len; _i++) {
-        p = _ref[_i];
-        _results.push(to_lower(p));
-      }
-      return _results;
-    })()).join('');
-  };
-
-  make_error_klass = function(k, code, default_msg) {
-    var ctor;
-    ctor = function(msg) {
-      BaseError.call(this, msg || default_msg, this.constructor);
-      this.istack = [];
-      this.code = code;
-      return this;
-    };
-    util.inherits(ctor, BaseError);
-    ctor.prototype.name = k;
-    ctor.prototype.inspect = function() {
-      return "[" + k + ": " + this.message + " (code " + this.code + ")]";
-    };
-    return ctor;
-  };
-
-  exports.make_errors = make_errors = function(d) {
-    var enam, errno, k, msg, out, val;
-    out = {
-      msg: {},
-      name: {},
-      code: {}
-    };
-    d.OK = "Success";
-    errno = 100;
-    for (k in d) {
-      msg = d[k];
-      if (k !== "OK") {
-        enam = (c_to_camel(k)) + "Error";
-        val = errno++;
-        out[enam] = make_error_klass(enam, val, msg);
-      } else {
-        val = 0;
-      }
-      out[k] = val;
-      out.msg[k] = out.msg[val] = msg;
-      out.name[k] = out.name[val] = k;
-      out.code[k] = val;
-    }
-    return out;
-  };
-
-  ipush = function(e, msg) {
-    if (msg != null) {
-      if (e.istack == null) {
-        e.istack = [];
-      }
-      return e.istack.push(msg);
-    }
-  };
-
-  exports.make_esc = make_esc = function(gcb, where) {
-    return function(lcb) {
-      return function() {
-        var args, err;
-        err = arguments[0], args = 2 <= arguments.length ? __slice.call(arguments, 1) : [];
-        if (err == null) {
-          return lcb.apply(null, args);
-        } else if (!gcb.__esc) {
-          gcb.__esc = true;
-          ipush(err, where);
-          return gcb(err);
-        }
-      };
-    };
-  };
-
-  exports.EscOk = EscOk = (function() {
-    function EscOk(gcb, where) {
-      this.gcb = gcb;
-      this.where = where;
-    }
-
-    EscOk.prototype.bailout = function() {
-      var t;
-      if (this.gcb) {
-        t = this.gcb;
-        this.gcb = null;
-        return t(false);
-      }
-    };
-
-    EscOk.prototype.check_ok = function(cb) {
-      return (function(_this) {
-        return function() {
-          var args, ok;
-          ok = arguments[0], args = 2 <= arguments.length ? __slice.call(arguments, 1) : [];
-          if (!ok) {
-            return _this.bailout();
-          } else {
-            return cb.apply(null, args);
-          }
-        };
-      })(this);
-    };
-
-    EscOk.prototype.check_err = function(cb) {
-      return (function(_this) {
-        return function() {
-          var args, err;
-          err = arguments[0], args = 2 <= arguments.length ? __slice.call(arguments, 1) : [];
-          if (err != null) {
-            ipush(err, _this.where);
-            return _this.bailout();
-          } else {
-            return cb.apply(null, args);
-          }
-        };
-      })(this);
-    };
-
-    EscOk.prototype.check_non_null = function(cb) {
-      return (function(_this) {
-        return function() {
-          var args;
-          args = 1 <= arguments.length ? __slice.call(arguments, 0) : [];
-          if (args[0] == null) {
-            return _this.bailout();
-          } else {
-            return cb.apply(null, args);
-          }
-        };
-      })(this);
-    };
-
-    return EscOk;
-
-  })();
-
-  exports.EscErr = EscErr = (function() {
-    function EscErr(gcb, where) {
-      this.gcb = gcb;
-      this.where = where;
-    }
-
-    EscErr.prototype.finish = function(err) {
-      var t;
-      if (this.gcb) {
-        t = this.gcb;
-        this.gcb = null;
-        return t(err);
-      }
-    };
-
-    EscErr.prototype.check_ok = function(cb, eclass, emsg) {
-      if (eclass == null) {
-        eclass = Error;
-      }
-      if (emsg == null) {
-        emsg = null;
-      }
-      return function() {
-        var args, err, ok;
-        ok = arguments[0], args = 2 <= arguments.length ? __slice.call(arguments, 1) : [];
-        if (!ok) {
-          err = new eclass(emsg);
-          ipush(err, this.where);
-          return this.finish(err);
-        } else {
-          return cb.apply(null, args);
-        }
-      };
-    };
-
-    EscErr.prototype.check_err = function(cb) {
-      return function() {
-        var args, err;
-        err = arguments[0], args = 2 <= arguments.length ? __slice.call(arguments, 1) : [];
-        if (err != null) {
-          ipush(err, this.where);
-          return this.finish(err);
-        } else {
-          return cb.apply(null, args);
-        }
-      };
-    };
-
-    return EscErr;
-
-  })();
-
-  exports.Canceler = Canceler = (function() {
-    function Canceler(klass) {
-      this.klass = klass != null ? klass : Error;
-      this._canceled = false;
-    }
-
-    Canceler.prototype.is_canceled = function() {
-      return this._canceled;
-    };
-
-    Canceler.prototype.is_ok = function() {
-      return !this._canceled;
-    };
-
-    Canceler.prototype.cancel = function() {
-      return this._canceled = true;
-    };
-
-    Canceler.prototype.err = function() {
-      if (this._canceled) {
-        return new this.klass("Aborted");
-      } else {
-        return null;
-      }
-    };
-
-    return Canceler;
-
-  })();
-
-  exports.chain = function(cb, f) {
-    return function() {
-      var args;
-      args = 1 <= arguments.length ? __slice.call(arguments, 0) : [];
-      return f(function() {
-        return cb.apply(null, args);
-      });
-    };
-  };
-
-  exports.chain_err = function(cb, f) {
-    return function() {
-      var args0;
-      args0 = 1 <= arguments.length ? __slice.call(arguments, 0) : [];
-      return f(function() {
-        var args1;
-        args1 = 1 <= arguments.length ? __slice.call(arguments, 0) : [];
-        return cb.apply(null, ((args1[0] != null) && !(args0[0] != null) ? args1 : args0));
-      });
-    };
-  };
-
-}).call(this);
-
-//# sourceMappingURL=index.map

ファイルの差分が大きいため隠しています
+ 0 - 8
node_modules/keybase-installer/node_modules/iced-error/index.map


+ 0 - 57
node_modules/keybase-installer/node_modules/iced-error/package.json

@@ -1,57 +0,0 @@
-{
-  "_from": "iced-error@>=0.0.8 <0.1.0",
-  "_id": "iced-error@0.0.9",
-  "_location": "/keybase-installer/iced-error",
-  "_npmUser": {
-    "name": "maxtaco",
-    "email": "themax@gmail.com"
-  },
-  "_npmVersion": "1.4.12",
-  "_phantomChildren": {},
-  "_requiredBy": [
-    "/keybase-installer",
-    "/keybase-installer/gpg-wrapper",
-    "/keybase-installer/iced-utils",
-    "/keybase-installer/pgp-utils"
-  ],
-  "_resolved": "https://registry.npmjs.org/iced-error/-/iced-error-0.0.9.tgz",
-  "_shasum": "c7c3057614c0a187d96b3d18c6d520e6b872ed37",
-  "_shrinkwrap": null,
-  "bugs": {
-    "url": "https://github.com/maxtaco/iced-error/issues"
-  },
-  "dependencies": {},
-  "description": "An error-handling class written with/for IcedCoffeeScript",
-  "devDependencies": {
-    "iced-coffee-script": "^1.7.1-c"
-  },
-  "directories": {},
-  "dist": {
-    "shasum": "c7c3057614c0a187d96b3d18c6d520e6b872ed37",
-    "tarball": "http://registry.npmjs.org/iced-error/-/iced-error-0.0.9.tgz"
-  },
-  "gitHead": "cf640b7066da3e14f1a7967c9713fab1bc6bf0fc",
-  "homepage": "https://github.com/maxtaco/iced-error",
-  "licenses": [
-    {
-      "type": "MIT",
-      "url": "http://www.opensource.org/licenses/mit-license.php"
-    }
-  ],
-  "main": "./index.js",
-  "maintainers": [
-    {
-      "name": "maxtaco",
-      "email": "themax@gmail.com"
-    }
-  ],
-  "name": "iced-error",
-  "optionalDependencies": {},
-  "readme": "ERROR: No README data found!",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/maxtaco/iced-error.git"
-  },
-  "scripts": {},
-  "version": "0.0.9"
-}

+ 0 - 16
node_modules/keybase-installer/node_modules/iced-logger/.npmignore

@@ -1,16 +0,0 @@
-lib-cov
-*.seed
-*.log
-*.csv
-*.dat
-*.out
-*.pid
-*.gz
-
-pids
-logs
-results
-
-npm-debug.log
-node_modules
-build-stamp

+ 0 - 27
node_modules/keybase-installer/node_modules/iced-logger/LICENSE

@@ -1,27 +0,0 @@
-Copyright (c) 2014, Maxwell Krohn
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-
-* Neither the name of the {organization} nor the names of its
-  contributors may be used to endorse or promote products derived from
-  this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

+ 0 - 26
node_modules/keybase-installer/node_modules/iced-logger/Makefile

@@ -1,26 +0,0 @@
-default: build
-all: build
-
-ICED=node_modules/.bin/iced
-BUILD_STAMP=build-stamp
-TEST_STAMP=test-stamp
-
-%.js: %.iced
-	$(ICED) -I node -c -o `dirname $@` $<
-
-$(BUILD_STAMP): \
-	index.js 
-	date > $@
-
-clean:
-	rm -f index.js
-
-build: $(BUILD_STAMP) 
-
-setup: 
-	npm install -d
-
-test:
-
-.PHONY: test setup
-

+ 0 - 4
node_modules/keybase-installer/node_modules/iced-logger/README.md

@@ -1,4 +0,0 @@
-iced-logger
-===========
-
-A simple logger module in node.js, useful in many projects.

+ 0 - 73
node_modules/keybase-installer/node_modules/iced-logger/SIGNED.md

@@ -1,73 +0,0 @@
-##### Signed by https://keybase.io/max
-```
------BEGIN PGP SIGNATURE-----
-Version: GnuPG/MacGPG2 v2
-Comment: GPGTools - https://gpgtools.org
-
-iQEcBAABCgAGBQJUieV4AAoJEJgKPw0B/gTfkWkH/RAH+HcKFoYCZGOZ7NecAD1L
-ecUzmmU+HUkI22nKNM7H2tLa1at8Ubkux6Looi72HWf2wNZMSwOZQ+sfrWzvsmKj
-KzGMpBJEQDXcXmX4QG00wCvbhW5W7C2Oqr1wGXTstvD8xaO937OzjXUCCRSYchsj
-5cgPZ/1GPNxiy3tN7ir0Nhl7ttmK8dyMTMwVBOlv9G/JUxmj4BBYZSwBqAOp3Hj9
-KKXr85hjQNKa/uK6CoNB4ADk99Y7SmGz168JouBSwHKyFrruUysWEemoT/RWdMkS
-dSdRLWMEdScQ+WWfPsg7FaeBLWddDhyhklmQlxxYKc3aWn60seW7j6KS3G43YMw=
-=L6k8
------END PGP SIGNATURE-----
-
-```
-
-<!-- END SIGNATURES -->
-
-### Begin signed statement 
-
-#### Expect
-
-```
-size  exec  file            contents                                                        
-            ./                                                                              
-109           .gitignore    ec278daeb8f83cac2579d262b92ee6d7d872c4d1544e881ba515d8bcc05361ab
-1489          LICENSE       1e933ceb3f4a00ae33672d4e344f9ff26e92bc8f34bc0c7a52fd0ef257607858
-296           Makefile      bbcf957dce2d62b7bb7e767b69e97c22a1118896e3eccd2061d465127eeb5a86
-85            README.md     6bac611fa0fdfd8a5a2e4ea5a1f974f0f037589c66d2209721171b300a8cdba0
-2976          index.iced    57ab21fd0aa63fbc8fe0fab1e019b83e8005accf3a3b260af8efe72673615efd
-5218          index.js      fea659c4bf10bfb1215d09a85d2cb16fbf68ee7a60ef939e0a04286d80f53fc5
-508           package.json  e39a76decff8c625ba249a2bbf05de7ab78fe921e28e5c339f1d6725f238a801
-```
-
-#### Ignore
-
-```
-/SIGNED.md
-```
-
-#### Presets
-
-```
-git      # ignore .git and anything as described by .gitignore files
-dropbox  # ignore .dropbox-cache and other Dropbox-related files    
-kb       # ignore anything as described by .kbignore files          
-```
-
-<!-- summarize version = 0.0.9 -->
-
-### End signed statement
-
-<hr>
-
-#### Notes
-
-With keybase you can sign any directory's contents, whether it's a git repo,
-source code distribution, or a personal documents folder. It aims to replace the drudgery of:
-
-  1. comparing a zipped file to a detached statement
-  2. downloading a public key
-  3. confirming it is in fact the author's by reviewing public statements they've made, using it
-
-All in one simple command:
-
-```bash
-keybase dir verify
-```
-
-There are lots of options, including assertions for automating your checks.
-
-For more info, check out https://keybase.io/docs/command_line/code_signing

+ 0 - 105
node_modules/keybase-installer/node_modules/iced-logger/index.iced

@@ -1,105 +0,0 @@
-colors = require 'colors'
-util = require 'util'
-
-#=========================================================================
-
-bold_red = (x) -> colors.bold colors.red x
-
-#=========================================================================
-
-class Env
-  constructor : ( {@use_color, @level}) ->
-  set_level : (l) -> @level = l
-  set_use_color : (c) -> @use_color = c
-  get_level : () -> @level
-
-  make_lconsole : (console) => (method, level, args...) =>
-    if @get_level() <= level then console[method] args...
-
-#=========================================================================
-
-repeat = (c, n) -> (c for [0...n]).join('')
-
-class Level
-  constructor : ({@level, @color_fn, @prefix}) ->
-    @_i = 0
-
-  log : (env, msg) ->
-    if env.level <= @level
-      msg = if not msg? then ""
-      else if Buffer.isBuffer(msg) then msg.toString('utf8')
-      else if util.isError(msg) then msg.toString()
-      else ("" + msg)
-      lines = msg.split "\n"
-      for line in lines when line.match /\S+/
-        @_log_line env, line
-
-  _handle_nesting : (line) ->
-    if line.match(/^[+|-] /)
-      prefix = switch line[0]
-        when '+'
-          @_i++
-          (repeat '+', @_i)
-        when '-'
-          p = (repeat '-', @_i)
-          @_i = 0 if --@_i < 0
-          p
-        when '|'
-          (repeat '|', @_i)
-      line = [ prefix, line[2...] ].join(' ')
-    line
-
-  _log_line : (env, line) ->
-    line = @_handle_nesting line
-
-    line = [ (@prefix + ":"), line ].join(' ')
-    line = @color_fn line if @color_fn? and env.use_color
-    @__log_line line
-
-  __log_line : (x) -> console.error x
-
-#=========================================================================
-
-default_levels =
-  debug : new Level { level : 0, color_fn : colors.blue,    prefix : "debug" }
-  info  : new Level { level : 1, color_fn : colors.green,   prefix : "info"  }
-  warn  : new Level { level : 2, color_fn : colors.magenta, prefix : "warn"  }
-  error : new Level { level : 3, color_fn : bold_red,       prefix : "error" }
-
-#=========================================================================
-
-class Package
-
-  constructor : ({env,config,console}) ->
-    @_env = env
-    @_config = config
-    @_console = console
-    for key,val of config
-      ((k,v) =>
-        @[k] = (m) => v.log(@_env, m)
-        @[k.toUpperCase()] = v.level
-      )(key, val)
-
-  env : -> @_env
-
-  export_to : (exports) ->
-    for k,v of @_config
-      exports[k] = @[k]
-    exports.package = () => @
-    exports.console = @_console
-    exports.lconsole = @_env.make_lconsole @_console
-
-#=========================================================================
-
-_package = null
-
-exports.init = init = ({env,config, console}) ->
-  (_package = new Package { env, config, console }).export_to exports
-
-init {
-  env    : new Env({ use_color : true, level : default_levels.info.level }),
-  config : default_levels
-  console : console
-}
-
-#=========================================================================

+ 0 - 211
node_modules/keybase-installer/node_modules/iced-logger/index.js

@@ -1,211 +0,0 @@
-// Generated by IcedCoffeeScript 1.7.1-c
-(function() {
-  var Env, Level, Package, bold_red, colors, default_levels, init, repeat, util, _package,
-    __bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },
-    __slice = [].slice;
-
-  colors = require('colors');
-
-  util = require('util');
-
-  bold_red = function(x) {
-    return colors.bold(colors.red(x));
-  };
-
-  Env = (function() {
-    function Env(_arg) {
-      this.use_color = _arg.use_color, this.level = _arg.level;
-      this.make_lconsole = __bind(this.make_lconsole, this);
-    }
-
-    Env.prototype.set_level = function(l) {
-      return this.level = l;
-    };
-
-    Env.prototype.set_use_color = function(c) {
-      return this.use_color = c;
-    };
-
-    Env.prototype.get_level = function() {
-      return this.level;
-    };
-
-    Env.prototype.make_lconsole = function(console) {
-      return (function(_this) {
-        return function() {
-          var args, level, method;
-          method = arguments[0], level = arguments[1], args = 3 <= arguments.length ? __slice.call(arguments, 2) : [];
-          if (_this.get_level() <= level) {
-            return console[method].apply(console, args);
-          }
-        };
-      })(this);
-    };
-
-    return Env;
-
-  })();
-
-  repeat = function(c, n) {
-    return ((function() {
-      var _i, _results;
-      _results = [];
-      for (_i = 0; 0 <= n ? _i < n : _i > n; 0 <= n ? _i++ : _i--) {
-        _results.push(c);
-      }
-      return _results;
-    })()).join('');
-  };
-
-  Level = (function() {
-    function Level(_arg) {
-      this.level = _arg.level, this.color_fn = _arg.color_fn, this.prefix = _arg.prefix;
-      this._i = 0;
-    }
-
-    Level.prototype.log = function(env, msg) {
-      var line, lines, _i, _len, _results;
-      if (env.level <= this.level) {
-        msg = msg == null ? "" : Buffer.isBuffer(msg) ? msg.toString('utf8') : util.isError(msg) ? msg.toString() : "" + msg;
-        lines = msg.split("\n");
-        _results = [];
-        for (_i = 0, _len = lines.length; _i < _len; _i++) {
-          line = lines[_i];
-          if (line.match(/\S+/)) {
-            _results.push(this._log_line(env, line));
-          }
-        }
-        return _results;
-      }
-    };
-
-    Level.prototype._handle_nesting = function(line) {
-      var p, prefix;
-      if (line.match(/^[+|-] /)) {
-        prefix = (function() {
-          switch (line[0]) {
-            case '+':
-              this._i++;
-              return repeat('+', this._i);
-            case '-':
-              p = repeat('-', this._i);
-              if (--this._i < 0) {
-                this._i = 0;
-              }
-              return p;
-            case '|':
-              return repeat('|', this._i);
-          }
-        }).call(this);
-        line = [prefix, line.slice(2)].join(' ');
-      }
-      return line;
-    };
-
-    Level.prototype._log_line = function(env, line) {
-      line = this._handle_nesting(line);
-      line = [this.prefix + ":", line].join(' ');
-      if ((this.color_fn != null) && env.use_color) {
-        line = this.color_fn(line);
-      }
-      return this.__log_line(line);
-    };
-
-    Level.prototype.__log_line = function(x) {
-      return console.error(x);
-    };
-
-    return Level;
-
-  })();
-
-  default_levels = {
-    debug: new Level({
-      level: 0,
-      color_fn: colors.blue,
-      prefix: "debug"
-    }),
-    info: new Level({
-      level: 1,
-      color_fn: colors.green,
-      prefix: "info"
-    }),
-    warn: new Level({
-      level: 2,
-      color_fn: colors.magenta,
-      prefix: "warn"
-    }),
-    error: new Level({
-      level: 3,
-      color_fn: bold_red,
-      prefix: "error"
-    })
-  };
-
-  Package = (function() {
-    function Package(_arg) {
-      var config, console, env, key, val, _fn;
-      env = _arg.env, config = _arg.config, console = _arg.console;
-      this._env = env;
-      this._config = config;
-      this._console = console;
-      _fn = (function(_this) {
-        return function(k, v) {
-          _this[k] = function(m) {
-            return v.log(_this._env, m);
-          };
-          return _this[k.toUpperCase()] = v.level;
-        };
-      })(this);
-      for (key in config) {
-        val = config[key];
-        _fn(key, val);
-      }
-    }
-
-    Package.prototype.env = function() {
-      return this._env;
-    };
-
-    Package.prototype.export_to = function(exports) {
-      var k, v, _ref;
-      _ref = this._config;
-      for (k in _ref) {
-        v = _ref[k];
-        exports[k] = this[k];
-      }
-      exports["package"] = (function(_this) {
-        return function() {
-          return _this;
-        };
-      })(this);
-      exports.console = this._console;
-      return exports.lconsole = this._env.make_lconsole(this._console);
-    };
-
-    return Package;
-
-  })();
-
-  _package = null;
-
-  exports.init = init = function(_arg) {
-    var config, console, env;
-    env = _arg.env, config = _arg.config, console = _arg.console;
-    return (_package = new Package({
-      env: env,
-      config: config,
-      console: console
-    })).export_to(exports);
-  };
-
-  init({
-    env: new Env({
-      use_color: true,
-      level: default_levels.info.level
-    }),
-    config: default_levels,
-    console: console
-  });
-
-}).call(this);

+ 0 - 56
node_modules/keybase-installer/node_modules/iced-logger/package.json

@@ -1,56 +0,0 @@
-{
-  "_from": "iced-logger@>=0.0.1 <0.1.0",
-  "_id": "iced-logger@0.0.6",
-  "_location": "/keybase-installer/iced-logger",
-  "_npmUser": {
-    "name": "maxtaco",
-    "email": "themax@gmail.com"
-  },
-  "_npmVersion": "1.4.28",
-  "_phantomChildren": {},
-  "_requiredBy": [
-    "/keybase-installer"
-  ],
-  "_resolved": "https://registry.npmjs.org/iced-logger/-/iced-logger-0.0.6.tgz",
-  "_shasum": "3f38081e4df4742aab09b86bb0adf8ea6c12de82",
-  "_shrinkwrap": null,
-  "bugs": {
-    "url": "https://github.com/maxtaco/iced-logger/issues"
-  },
-  "dependencies": {
-    "colors": "~0.6.2"
-  },
-  "description": "Simple logger for node.js apps",
-  "devDependencies": {
-    "iced-coffee-script": "^1.7.1-c"
-  },
-  "directories": {},
-  "dist": {
-    "shasum": "3f38081e4df4742aab09b86bb0adf8ea6c12de82",
-    "tarball": "http://registry.npmjs.org/iced-logger/-/iced-logger-0.0.6.tgz"
-  },
-  "gitHead": "d19d672ebf508b798e263022a48af23c52c52363",
-  "homepage": "https://github.com/maxtaco/iced-logger",
-  "licenses": [
-    {
-      "type": "MIT",
-      "url": "http://www.opensource.org/licenses/mit-license.php"
-    }
-  ],
-  "main": "./index",
-  "maintainers": [
-    {
-      "name": "maxtaco",
-      "email": "themax@gmail.com"
-    }
-  ],
-  "name": "iced-logger",
-  "optionalDependencies": {},
-  "readme": "ERROR: No README data found!",
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/maxtaco/iced-logger.git"
-  },
-  "scripts": {},
-  "version": "0.0.6"
-}

この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません