anchor.diff:  // All rights reserved. Use of this source code is governed by a BSD-style
   // license that can be found in the LICENSE file.
   
  +import 'dart:async';
   import 'dart:convert';
   import 'dart:io';
   
  
positive.code:   String filename = 'spark-${version}.zip';
    archive(context, filename);
    context.log('Created ${filename}');
  }
  
  // Creates an archive of the Chrome App.
  
negative.code: 
  final Directory BUILD_DIR = new Directory('build');
  final Directory DIST_DIR = new Directory('dist');
  
  // Here's how to generate refreshToken:
  // https://docs.google.com/a/google.com/document/d/1OEM4GGhMrOWS4pYvtIWtkw_17C2pAlWPxUFu-7_YF-4
  final String clientID = Platform.environment['SPARK_UPLOADER_CLIENTID'];
  final String clientSecret = Platform.environment['SPARK_UPLOADER_CLIENTSECRET'];
  final String refreshToken = Platform.environment['SPARK_UPLOADER_REFRESHTOKEN'];
  final String appID = Platform.environment['SPARK_APP_ID'];
  
  void main([List<String> args]) {
    defineTask('setup', taskFunction: setup);
  