anchor.diff:    return lines.join('\n');
   }
   
  -Future<void> compileWebFrontEnd({bool devMode = false}) async {
  -  var sdkBinDir = path.dirname(Platform.resolvedExecutable);
  -  var dart2jsBinary = Platform.isWindows ? 'dart2js.bat' : 'dart2js';
  -  var dart2jsPath = path.join(sdkBinDir, dart2jsBinary);
  -
  +Future<void> compileWebFrontEnd(
  +    {@required bool devMode, @required String dart2jsPath}) async {
     // dart2js -m -o output source
     var process = await Process.start(dart2jsPath, [
       devMode ? '-O1' : '-m',
  
positive.code: 
  import 'package:args/args.dart';
  import 'package:crypto/crypto.dart';
  import 'package:path/path.dart' as path;
  
  void main(List<String> args) async {
    var argParser = ArgParser()
      ..addFlag('verify', negatable: false)
      ..addFlag('dev', negatable: false)
      ..addFlag('help', negatable: false);
    var argResults = argParser.parse(args);
    if (argResults['help'] == true) {
  
negative.code:   if (verify) {
      verifyResourcesGDartGenerated();
    } else {
      await compileWebFrontEnd(
          devMode: dev, dart2jsPath: dart2jsPath(argResults));
  
      print('');
  
      createResourcesGDart();
    }
  }
  
  /// Returns the dart2jsPath, either from [argResults] or the Platform.
  String dart2jsPath(ArgResults argResults) {
    if (argResults.wasParsed('dart2js_path')) {
      return argResults['dart2js_path'] as String;
    } else {
      var sdkBinDir = path.dirname(Platform.resolvedExecutable);
      var dart2jsBinary = Platform.isWindows ? 'dart2js.bat' : 'dart2js';
      return path.join(sdkBinDir, dart2jsBinary);
    }
  }
  
  