anchor.diff:  
       Archive archive = new Archive();
   
  -    int result = await toolchain.compiler.compile(mainPath: mainPath, snapshotPath: snapshotPath);
  -    if (result != 0)
  -      return result;
  -
  -    archive.addFile(_createSnapshotFile(snapshotPath));
  +    if (!precompiledSnapshot) {
  +      // In a precompiled snapshot, the instruction buffer contains script
  +      // content equivalents
  +      int result = await toolchain.compiler.compile(mainPath: mainPath, snapshotPath: snapshotPath);
  +      if (result != 0)
  +        return result;
  +
  +      archive.addFile(_createSnapshotFile(snapshotPath));
  +    }
   
       for (_Asset asset in assets)
         archive.addFile(_createFile(asset.key, asset.base));
  
positive.code:       manifestPath: argResults['manifest'],
        outputPath: argResults['output-file'],
        snapshotPath: argResults['snapshot'],
        privateKeyPath: argResults['private-key']
      );
    }
  
  
negative.code:   final String description = 'Create a Flutter app.';
  
    BuildCommand() {
      argParser.addFlag('precompiled', negatable: false);
      argParser.addOption('asset-base', defaultsTo: _kDefaultAssetBase);
      argParser.addOption('compiler');
      argParser.addOption('main', defaultsTo: _kDefaultMainPath);
      argParser.addOption('manifest');
  