Просмотр исходного кода

adding tiare, donald, participants, program to nav and new posts

chootka 7 лет назад
Родитель
Сommit
a2f060e5b8
100 измененных файлов с 379 добавлено и 12899 удалено
  1. BIN
      .DS_Store
  2. BIN
      _participants/donald-hanson.jpg
  3. 16 0
      _participants/donald-hanson.md
  4. 16 0
      _participants/tiare-ribeaux.md
  5. BIN
      _participants/tiareprofile_sm.jpg
  6. 5 0
      _posts/2017-09-06-Program-Announced.md
  7. 9 0
      _posts/2017-09-07-Kickstarter.md
  8. 14 2
      _site/2017/08/01/Call-For-Proposals-Has-Ended.html
  9. 221 0
      _site/2017/09/06/Program-Announced.html
  10. 5 0
      _site/2017/09/07/2017-09-07-Kickstarter.html
  11. 16 4
      _site/about/index.html
  12. 13 1
      _site/archives/index.html
  13. BIN
      _site/assets/themes/images/alex_wagner_photos.zip
  14. BIN
      _site/assets/themes/images/radical_networks_logos.zip
  15. 51 1
      _site/index.html
  16. 13 1
      _site/location/index.html
  17. 0 216
      _site/node_modules/keybase-installer/CHANGELOG.md
  18. 0 27
      _site/node_modules/keybase-installer/LICENSE
  19. 0 43
      _site/node_modules/keybase-installer/Makefile
  20. 0 8
      _site/node_modules/keybase-installer/README.md
  21. 0 1016
      _site/node_modules/keybase-installer/SIGNED.md
  22. 0 10
      _site/node_modules/keybase-installer/bin/main.js
  23. 0 18
      _site/node_modules/keybase-installer/bin/main.sh
  24. 0 0
      _site/node_modules/keybase-installer/json/keyset.json
  25. 0 24
      _site/node_modules/keybase-installer/lib/base.js
  26. 0 498
      _site/node_modules/keybase-installer/lib/config.js
  27. 0 20
      _site/node_modules/keybase-installer/lib/constants.js
  28. 0 129
      _site/node_modules/keybase-installer/lib/get_index.js
  29. 0 423
      _site/node_modules/keybase-installer/lib/installer.js
  30. 0 421
      _site/node_modules/keybase-installer/lib/key_install.js
  31. 0 353
      _site/node_modules/keybase-installer/lib/key_setup.js
  32. 0 181
      _site/node_modules/keybase-installer/lib/key_upgrade.js
  33. 0 5
      _site/node_modules/keybase-installer/lib/log.js
  34. 0 223
      _site/node_modules/keybase-installer/lib/main.js
  35. 0 186
      _site/node_modules/keybase-installer/lib/npm.js
  36. 0 25
      _site/node_modules/keybase-installer/lib/package.js
  37. 0 318
      _site/node_modules/keybase-installer/lib/request.js
  38. 0 399
      _site/node_modules/keybase-installer/lib/software_upgrade.js
  39. 0 11
      _site/node_modules/keybase-installer/lib/top.js
  40. 0 24
      _site/node_modules/keybase-installer/lib/util.js
  41. 0 28
      _site/node_modules/keybase-installer/node_modules/badnode/LICENSE
  42. 0 20
      _site/node_modules/keybase-installer/node_modules/badnode/Makefile
  43. 0 4
      _site/node_modules/keybase-installer/node_modules/badnode/README.md
  44. 0 77
      _site/node_modules/keybase-installer/node_modules/badnode/SIGNED.md
  45. 0 28
      _site/node_modules/keybase-installer/node_modules/badnode/index.iced
  46. 0 49
      _site/node_modules/keybase-installer/node_modules/badnode/index.js
  47. 0 63
      _site/node_modules/keybase-installer/node_modules/badnode/package.json
  48. 0 22
      _site/node_modules/keybase-installer/node_modules/badnode/test/files/0_badnode.iced
  49. 0 3
      _site/node_modules/keybase-installer/node_modules/badnode/test/run.iced
  50. 0 22
      _site/node_modules/keybase-installer/node_modules/colors/MIT-LICENSE.txt
  51. 0 77
      _site/node_modules/keybase-installer/node_modules/colors/ReadMe.md
  52. 0 342
      _site/node_modules/keybase-installer/node_modules/colors/colors.js
  53. 0 76
      _site/node_modules/keybase-installer/node_modules/colors/example.html
  54. 0 77
      _site/node_modules/keybase-installer/node_modules/colors/example.js
  55. 0 56
      _site/node_modules/keybase-installer/node_modules/colors/package.json
  56. 0 70
      _site/node_modules/keybase-installer/node_modules/colors/test.js
  57. 0 12
      _site/node_modules/keybase-installer/node_modules/colors/themes/winston-dark.js
  58. 0 12
      _site/node_modules/keybase-installer/node_modules/colors/themes/winston-light.js
  59. 0 158
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/CHANGELOG.md
  60. 0 27
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/LICENSE
  61. 0 35
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/Makefile
  62. 0 4
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/README.md
  63. 0 97
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/SIGNED.md
  64. 0 41
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/lib/colgrep.js
  65. 0 17
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/lib/err.js
  66. 0 314
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/lib/gpg.js
  67. 0 470
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/lib/index.js
  68. 0 2561
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/lib/keyring.js
  69. 0 17
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/lib/main.js
  70. 0 164
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/lib/parse.js
  71. 0 64
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/package.json
  72. 0 19
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/src/colgrep.iced
  73. 0 13
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/src/err.iced
  74. 0 105
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/src/gpg.iced
  75. 0 236
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/src/index.iced
  76. 0 946
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/src/keyring.iced
  77. 0 12
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/src/main.iced
  78. 0 62
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/src/parse.iced
  79. 0 26
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/colgrep.iced
  80. 0 10
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/error.iced
  81. 0 61
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/gpg.iced
  82. 0 186
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/index.iced
  83. 0 707
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/keyring.iced
  84. 0 33
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/test/files/parse.iced
  85. 0 3
      _site/node_modules/keybase-installer/node_modules/gpg-wrapper/test/run.iced
  86. 0 20
      _site/node_modules/keybase-installer/node_modules/iced-data-structures/LICENSE
  87. 0 25
      _site/node_modules/keybase-installer/node_modules/iced-data-structures/Makefile
  88. 0 4
      _site/node_modules/keybase-installer/node_modules/iced-data-structures/README.md
  89. 0 7
      _site/node_modules/keybase-installer/node_modules/iced-data-structures/lib/index.js
  90. 0 68
      _site/node_modules/keybase-installer/node_modules/iced-data-structures/lib/list.js
  91. 0 55
      _site/node_modules/keybase-installer/node_modules/iced-data-structures/package.json
  92. 0 2
      _site/node_modules/keybase-installer/node_modules/iced-data-structures/src/index.iced
  93. 0 54
      _site/node_modules/keybase-installer/node_modules/iced-data-structures/src/list.iced
  94. 0 18
      _site/node_modules/keybase-installer/node_modules/iced-error/Makefile
  95. 0 65
      _site/node_modules/keybase-installer/node_modules/iced-error/README.md
  96. 0 73
      _site/node_modules/keybase-installer/node_modules/iced-error/SIGNED.md
  97. 0 160
      _site/node_modules/keybase-installer/node_modules/iced-error/index.iced
  98. 0 270
      _site/node_modules/keybase-installer/node_modules/iced-error/index.js
  99. 0 8
      _site/node_modules/keybase-installer/node_modules/iced-error/index.map
  100. 0 57
      _site/node_modules/keybase-installer/node_modules/iced-error/package.json

BIN
_participants/donald-hanson.jpg


+ 16 - 0
_participants/donald-hanson.md

@@ -0,0 +1,16 @@
+---
+layout: page
+title: Donald Hanson
+---
+<h3>Donald Hanson</h3>
+<img src="donald-hanson.jpg" />
+<p><a href="http://donaldhanson.net/" target="_blank">Website</a> | <a href="https://twitter.com/donald_hans0n" target="_blank">Twitter</a></p>
+<p>Donald Hanson is a technologist working between art, design and creative coding. His work explores interactive aesthetics, live projection, internet technology, glitch art and parameterizing chaos. Recent experiments involve reverse-engineering file formats, building self-altering websites and creating computer controlled video synthesizer patches.</p>
+
+<hr />
+<h2>Exhibiting with <a href="tiare-ribeaux">Tiare Ribeaux</a>
+<h3>Onion Routing AR Walking TOR</h3>
+<p><em>Onion Routing AR Walking TOR</em> is a participatory interpretation of the inner workings of onion routing and the TOR browser using augmented reality and location-based virtual markers. Each participant will visit a group of geolocated 3D models as waypoints around the Radical Networks venue forming a simulation of onion routing where the user represents a programmatically routed data packet. Each route is randomly generated with each stop slowly decrypting a hidden message.
+</p>
+
+<p>This is part of a larger project, <a href="http://www.ubiqcity.com/" target="_blank">Ubiquitous City</a>, a multi-layered Internet based experience about global supply chain infrastructure told through a series of interactive scenes and puzzles, guiding participants through the tentacular networks of the global marketplace and the world wide web.</p>

+ 16 - 0
_participants/tiare-ribeaux.md

@@ -0,0 +1,16 @@
+---
+layout: page
+title: Tiare Ribeaux
+---
+<h3>Tiare Ribeaux</h3>
+<img src="tiareprofile_sm.jpg" />
+<p><a href="http://www.tiareribeaux.com" target="_blank">Website</a> | <a href="https://twitter.com/tiareribeaux" target="_blank">Twitter</a></p>
+<p>Tiare Ribeaux is an Hawaiian-American new media artist and curator. Her work seeks to provoke conversation around opaque global industrial systems that are omnipresent yet often invisible in our day-to-day lives. She has a background in fashion design and biotechnology and is interested in shanzhai, deep/dark/media ecology, rhizomatic networks, speculative futures, and collaborative entanglements. She has been a Bay Area based curator and producer of visual and performing arts focused on innovation and radical inclusivity for over 5 years. She recently produced the Soundwave ((7)) Biennial in San Francisco in 2016, and has curated productions with Gray Area, the de Young Museum, the California Academy of Sciences, Fort Mason Center for the Arts, the Oakland Museum of California and and is the Founder and Artistic Director at B4BEL4B Gallery in Oakland, CA.</p>
+
+<hr />
+<h2>Exhibiting with <a href="donald-hanson">Donald Hanson</a>
+<h3>Onion Routing AR Walking TOR</h3>
+<p><em>Onion Routing AR Walking TOR</em> is a participatory interpretation of the inner workings of onion routing and the TOR browser using augmented reality and location-based virtual markers. Each participant will visit a group of geolocated 3D models as waypoints around the Radical Networks venue forming a simulation of onion routing where the user represents a programmatically routed data packet. Each route is randomly generated with each stop slowly decrypting a hidden message.
+</p>
+
+<p>This is part of a larger project, <a href="http://www.ubiqcity.com/" target="_blank">Ubiquitous City</a>, a multi-layered Internet based experience about global supply chain infrastructure told through a series of interactive scenes and puzzles, guiding participants through the tentacular networks of the global marketplace and the world wide web.</p>

BIN
_participants/tiareprofile_sm.jpg


+ 5 - 0
_posts/2017-09-06-Program-Announced.md

@@ -0,0 +1,5 @@
+---
+layout: post
+title: Radical Networks 2017 Program
+---
+<p>We are pleased to announce the Radical Networks 2017 <a href="/program">program</a> and list of <a href="/participants">participants</a>! Join us for four days of workshops, tech demos, talks, artworks, performances, and social events. Presale tickets available soon!</p>

+ 9 - 0
_posts/2017-09-07-Kickstarter.md

@@ -0,0 +1,9 @@
+---
+layout: post
+title: Announcing: Radical Networks 2017 Kickstarter Campaign!
+---
+<p>We are excited to announce the <a href="https://www.kickstarter.com/projects/radicalnetworks/radical-networks" target="_blank">Radical Networks 2017 Kickstarter</a> Campaign!</p>
+
+<p>Because we want to remain independent of corporate sponsorship and keep the cost of attendance low, we've decided to run this campaign in order to help pay for production costs and logistics, higher fees and travel support for our participants, and to provide scholarships for people who would like to attend but need a little bit of help.</p>
+
+<p>Please support our effots by getting the word out and backing our campaign! Presale passes to Radical Networks are only available through <a href="https://www.kickstarter.com/projects/radicalnetworks/radical-networks" target="_blank">our Kickstarter</a>, so head over there to secure your tickets today!</p>

+ 14 - 2
_site/2017/08/01/Call-For-Proposals-Has-Ended.html

@@ -61,13 +61,25 @@
         
       
         
+          
+            
+              <li><a href="/about/">About</a></li>
+            
+          
+        
       
         
+          
+            
+              <li><a href="/participants/">Participants</a></li>
+            
+          
+        
       
         
           
             
-              <li><a href="/about/">About</a></li>
+              <li><a href="/program/">Program</a></li>
             
           
         
@@ -149,7 +161,7 @@
       <li class="prev disabled"><a>&larr; Previous</a></li>
     
     
-      <li class="next disabled"><a>Next &rarr;</a>
+      <li class="next"><a href="/2017/09/06/Program-Announced" title="Radical Networks 2017 Program">Next &raquo;</a></li>
     
     </ul>
   </div>

+ 221 - 0
_site/2017/09/06/Program-Announced.html

@@ -0,0 +1,221 @@
+
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+
+    <title>Radical Networks 2017 Program</title>
+    
+    <meta name="author" content="Radical Networks">
+
+    <!-- Enable responsive viewport -->
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta property="og:url"                content="http://radicalnetworks.org" />
+    <meta property="og:title"              content="Radical Networks 2017" />
+    <meta property="og:description"        content="October 19-22, 2017 in Brooklyn NY" />
+    <!-- <meta property="og:image"              content="http://radicalnetworks.org/assets/themes/images/banner_fb2.jpg" /> -->
+
+    <!-- Bootstrap styles -->
+    <link href="/assets/themes/bootstrap/css/bootstrap.min.css" rel="stylesheet">
+    <!-- Optional theme -->
+    <link href="/assets/themes/bootstrap/css/bootstrap-theme.min.css" rel="stylesheet">
+    <!-- Sticky Footer -->
+    <link href="/assets/themes/bootstrap/css/bs-sticky-footer.css" rel="stylesheet">
+    
+    <!-- Custom styles and fonts -->
+    <link href='https://fonts.googleapis.com/css?family=Lato:300,400,700' rel='stylesheet' type='text/css'>
+    <link href="/assets/themes/css/style.css?body=1" rel="stylesheet" type="text/css" media="all">
+
+    <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
+      <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
+    <![endif]-->
+  </head>
+
+  <body>
+    <div id="wrap">
+      <div class="container">
+        <nav class="row navbar" role="navigation">
+  <!-- Brand and toggle get grouped for better mobile display -->
+    <div class="navbar-header">
+    <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#jb-navbar-collapse">
+            <span class="sr-only">Toggle navigation</span>
+            <span class="icon-bar"></span>
+            <span class="icon-spacer"></span>
+            <span class="icon-bar"></span>
+            <span class="icon-spacer"></span>
+            <span class="icon-bar"></span>
+            <span class="icon-spacer"></span>
+            <br/>
+        </button>
+    </div>
+
+    <!-- Collect the nav links, forms, and other content for toggling -->
+    <div class="collapse navbar-collapse" id="jb-navbar-collapse">
+      <ul class="nav navbar-nav">
+      
+      
+        
+      
+        
+          
+            
+              <li><a href="/about/">About</a></li>
+            
+          
+        
+      
+        
+          
+            
+              <li><a href="/participants/">Participants</a></li>
+            
+          
+        
+      
+        
+          
+            
+              <li><a href="/program/">Program</a></li>
+            
+          
+        
+      
+        
+          
+            
+              <li><a href="/location/">Location</a></li>
+            
+          
+        
+      
+        
+          
+            
+              <li><a href="/team/">Team</a></li>
+            
+          
+        
+      
+        
+          
+            
+              <li><a href="/policies/">Policies</a></li>
+            
+          
+        
+      
+        
+          
+            
+              <li><a href="/archives/">Archives</a></li>
+            
+          
+        
+      
+      </ul>
+    </div><!-- /.navbar-collapse -->
+</nav>
+        <header>
+  <div class="row">
+    <a href="/">
+      <img class="logo" src="/assets/themes/images/radnets_logo.png" width="500" height="76" />
+    </a>
+    <!-- <h2>June 19-22, 2017<br/>Chemistry Creative, 315 Ten Eyck Street, Brooklyn NY</h2> -->
+    <h2>October 19-22, 2017<br/>Brooklyn, NY</h2>
+  	<div class="social">
+      <a href="https://www.twitter.com/radnetworks" target="_blank"><img src="/assets/themes//images/twitter_logo.png" width="37" height="37" /></a>
+      <a href="mailto:info@radicalnetworks.org"><img src="/assets/themes//images/email.png" width="37" height="37" /></a>
+<!--       <a class="press" href="/assets/themes//pdf/radical_networks_2017_press_kit.pdf">2017 Press Kit</a> -->
+  	</div>
+  </div>
+</header>
+
+        <div class="row">
+          <div class="col-md-8 content">
+            
+<h2 class="post">Radical Networks 2017 Program</h2>
+
+<div class="row post-full">
+  <div class="col-sm-12">
+    <div class="date">
+      <span>06 September 2017</span>
+    </div>
+    <p>
+      <a href="https://twitter.com/share" class="twitter-share-button" data-via="radnetworks">Tweet</a>
+    </p>
+    <div class="content">
+      <p>We are pleased to announce the Radical Networks 2017 <a href="/program">program</a> and list of <a href="/participants">participants</a>! Join us for four days of workshops, tech demos, talks, artworks, performances, and social events. Presale tickets available soon!</p>
+
+    </div>
+
+    
+
+    
+  
+    <ul class="pagination">
+    
+      <li class="prev"><a href="/2017/08/01/Call-For-Proposals-Has-Ended" title="Call For Proposals Has Ended">&laquo; Previous</a></li>
+    
+    
+      <li class="next"><a href="/2017/09/07/2017-09-07-Kickstarter" title="">Next &raquo;</a></li>
+    
+    </ul>
+  </div>
+</div>
+
+
+          </div>
+          <div class="col-md-4 sidebar">
+            Tickets Available Soon!
+<!-- <div>
+	<a class="tickets" href="https://www.eventbrite.com/e/radical-networks-tickets-28325258611" target="_blank">Tickets Available!</a>
+</div> -->
+<!-- <div>In Partnership with<br/>
+	<a href="http://eyebeam.org/" target="_blank"><img src="/assets/themes//images/eyebeam_logo.png" width="150" height="94" /></a>
+</div> -->
+<div>Hosted by<br/>
+	<a href="http://chemcreative.com/" target="_blank">
+		<img src="/assets/themes//images/chem.png" width="167" />
+	</a>
+	<p style="padding-top: 8px">315 Ten Eyck St<br/>Brooklyn, NY 11206</p>
+</div>
+<div class="bigger">Live stream provided by<br/>
+	<img src="/assets/themes//images/isoclogo.png" width="300" />
+	<!-- <br/><a href="http://livestream.com/internetsociety/radnetworks" target="_blank">Live stream begins Friday 11/4 at 10:00 AM EST</a> -->
+</div>
+<div class="social">Contact<br/>
+	<a href="https://www.twitter.com/radnetworks" target="_blank"><img src="/assets/themes//images/twitter_logo.png" width="37" height="37" /></a>
+	<a href="mailto:info@radicalnetworks.org"><img src="/assets/themes//images/email.png" width="37" height="37" /></a>
+	<!-- <br/>Download our <a href="/assets/themes//pdf/radical_networks_2017_press_kit.pdf">2017 Press Kit</a> -->
+</div>
+          </div>
+        </div>  
+      </div>
+    </div>
+
+    <div id="footer">
+      <div class="container">
+        <p>
+	&copy; 2017 Radical Networks &bull; Maintained by <a href="https://github.com/chootka">chootka</a>
+</p>
+      </div>
+    </div>
+
+    
+
+
+
+
+
+    <!-- Latest compiled and minified JavaScript, requires jQuery 1.x (2.x not supported in IE8) -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
+    <script src="/assets/themes//bootstrap/js/bootstrap.min.js"></script>
+    <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
+  </body>
+</html>
+

+ 5 - 0
_site/2017/09/07/2017-09-07-Kickstarter.html

@@ -0,0 +1,5 @@
+<p>We are excited to announce the <a href="https://www.kickstarter.com/projects/radicalnetworks/radical-networks" target="_blank">Radical Networks 2017 Kickstarter</a> Campaign!</p>
+
+<p>Because we want to remain independent of corporate sponsorship and keep the cost of attendance low, we've decided to run this campaign in order to help pay for production costs and logistics, higher fees and travel support for our participants, and to provide scholarships for people who would like to attend but need a little bit of help.</p>
+
+<p>Please support our effots by getting the word out and backing our campaign! Presale passes to Radical Networks are only available through <a href="https://www.kickstarter.com/projects/radicalnetworks/radical-networks" target="_blank">our Kickstarter</a>, so head over there to secure your tickets today!</p>

+ 16 - 4
_site/about/index.html

@@ -61,13 +61,25 @@
         
       
         
+          
+            
+              <li class="active"><a href="/about/" class="active">About</a></li>
+            
+          
+        
       
         
+          
+            
+              <li><a href="/participants/">Participants</a></li>
+            
+          
+        
       
         
           
             
-              <li class="active"><a href="/about/" class="active">About</a></li>
+              <li><a href="/program/">Program</a></li>
             
           
         
@@ -128,17 +140,17 @@
 <div class="row">
   <div class="col-xs-12">
     
-<h3>Radical Networks is a conference that celebrates the free and open web.</h3>
+<h3>Radical Networks is a conference that celebrates the free and open Internet.</h3>
 
 <p>It fosters critical discussion on contemporary issues that include surveillance, the spread of misinformation, ownership of personal data, and the increasing opacity of "The Cloud".</p>
 
 <p>It's also an arts festival that considers networking technology as an artistic medium, featuring works that run the gamut from ethical hacks to creative experiments to live performances.</p>
 
-<p>This event brings together artists, engineers, educators, policy makers, and the public, to exchange ideas and look under the hood of what makes the Internet work. Radical Networks is in its third year and it's the first festival and conference of its kind in the United States. It will take place in Brooklyn, NY from October 19-22, 2017.</p>
+<p>This event brings together artists, activists, community organizers, journalists, technologists, educators, and the public, to exchange ideas and look under the hood of what makes the Internet work. Radical Networks is in its third year and it's the first festival and conference of its kind in the United States. It will take place in Brooklyn, NY from October 19-22, 2017.</p>
 
 <h3>Radical Networks happens in three parts:</h3>
 
-<p><strong>Workshops (Thursday - Sunday).</strong> We offer a variety of hands-on workshops, where you can learn about running your own wilderness wireless network, how to set up your own VPN, sniffing packets, or how to map complex networks. Each year has a different offering of workshops depending on what kinds of proposals we receive.</p>
+<p><strong>Workshops (Thursday - Sunday).</strong> Geared towards total beginners, our workshops are where you can learn how to run your own <a href="http://radicalnetworks.org/participants/brett-ian-balogh" target="_blank">wilderness wireless network</a>, <a href="http://radicalnetworks.org/participants/sarah-aoun" target="_blank">set up your own VPN</a>, <a href="http://radicalnetworks.org/participants/surya-mattu" target="_blank">sniff packets</a>, or <a href="http://radicalnetworks.org/participants/burak-arikan" target="_blank">map complex networks</a>. Each year has a different offering of workshops depending on what kinds of proposals we receive.</p>
 
 <p><strong>Conference (Friday, Saturday, and Sunday).</strong> We provide a stage for leading researchers and practitioners from all backgrounds—including artists, lawyers, engineers, writers, policy makers, educators, scientists, journalists, and community organizers—to share the work they have been doing to address the above outlined issues.</p>
 

+ 13 - 1
_site/archives/index.html

@@ -61,13 +61,25 @@
         
       
         
+          
+            
+              <li><a href="/about/">About</a></li>
+            
+          
+        
       
         
+          
+            
+              <li><a href="/participants/">Participants</a></li>
+            
+          
+        
       
         
           
             
-              <li><a href="/about/">About</a></li>
+              <li><a href="/program/">Program</a></li>
             
           
         

BIN
_site/assets/themes/images/alex_wagner_photos.zip


BIN
_site/assets/themes/images/radical_networks_logos.zip


+ 51 - 1
_site/index.html

@@ -61,13 +61,25 @@
         
       
         
+          
+            
+              <li><a href="/about/">About</a></li>
+            
+          
+        
       
         
+          
+            
+              <li><a href="/participants/">Participants</a></li>
+            
+          
+        
       
         
           
             
-              <li><a href="/about/">About</a></li>
+              <li><a href="/program/">Program</a></li>
             
           
         
@@ -126,6 +138,44 @@
           <div class="col-md-8 content">
             
   
+	<div class="post-div">  
+		<h2 class="post"></h2>
+		<div class="date">
+	      <span>07 September 2017</span>
+	    </div>
+	    <div class="content">
+	      <p>We are excited to announce the <a href="https://www.kickstarter.com/projects/radicalnetworks/radical-networks" target="_blank">Radical Networks 2017 Kickstarter</a> Campaign!</p>
+
+<p>Because we want to remain independent of corporate sponsorship and keep the cost of attendance low, we've decided to run this campaign in order to help pay for production costs and logistics, higher fees and travel support for our participants, and to provide scholarships for people who would like to attend but need a little bit of help.</p>
+
+<p>Please support our effots by getting the word out and backing our campaign! Presale passes to Radical Networks are only available through <a href="https://www.kickstarter.com/projects/radicalnetworks/radical-networks" target="_blank">our Kickstarter</a>, so head over there to secure your tickets today!</p>
+
+	    </div>
+	    <p>
+	      <a href="https://twitter.com/share" class="twitter-share-button" data-url="http://radicalnetworks.org/2017/09/07/2017-09-07-Kickstarter" data-via="radnetworks">Tweet</a>
+	    </p>
+	    <p>
+			<a href="/2017/09/07/2017-09-07-Kickstarter">Read More &raquo;</a> 
+	    </p> 
+	</div>  
+  
+	<div class="post-div">  
+		<h2 class="post">Radical Networks 2017 Program</h2>
+		<div class="date">
+	      <span>06 September 2017</span>
+	    </div>
+	    <div class="content">
+	      <p>We are pleased to announce the Radical Networks 2017 <a href="/program">program</a> and list of <a href="/participants">participants</a>! Join us for four days of workshops, tech demos, talks, artworks, performances, and social events. Presale tickets available soon!</p>
+
+	    </div>
+	    <p>
+	      <a href="https://twitter.com/share" class="twitter-share-button" data-url="http://radicalnetworks.org/2017/09/06/Program-Announced" data-via="radnetworks">Tweet</a>
+	    </p>
+	    <p>
+			<a href="/2017/09/06/Program-Announced">Read More &raquo;</a> 
+	    </p> 
+	</div>  
+  
 	<div class="post-div">  
 		<h2 class="post">Call For Proposals Has Ended</h2>
 		<div class="date">

+ 13 - 1
_site/location/index.html

@@ -61,13 +61,25 @@
         
       
         
+          
+            
+              <li><a href="/about/">About</a></li>
+            
+          
+        
       
         
+          
+            
+              <li><a href="/participants/">Participants</a></li>
+            
+          
+        
       
         
           
             
-              <li><a href="/about/">About</a></li>
+              <li><a href="/program/">Program</a></li>
             
           
         

+ 0 - 216
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/node_modules/keybase-installer/json/keyset.json


+ 0 - 24
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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 - 28
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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 - 158
_site/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
_site/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
_site/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
_site/node_modules/keybase-installer/node_modules/gpg-wrapper/README.md

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

+ 0 - 97
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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 - 20
_site/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
_site/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
_site/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
_site/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
_site/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
_site/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
_site/node_modules/keybase-installer/node_modules/iced-data-structures/src/index.iced

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

+ 0 - 54
_site/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 - 18
_site/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
_site/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
_site/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
_site/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
_site/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
_site/node_modules/keybase-installer/node_modules/iced-error/index.map


+ 0 - 57
_site/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"
-}

Некоторые файлы не были показаны из-за большого количества измененных файлов