anchor.diff:    new File(htmlFile).writeAsStringSync(html);
   
     String dart = '''
  -import 'package:polymer/polymer.dart';
  +${importDartHtml}import 'package:polymer/polymer.dart';
   
   /**
    * A Polymer $element element.
    */
   @CustomTag('$element')
  -class $capitalizedName extends PolymerElement {
  +$classDeclaration
   
     /// Constructor used to create instance of ${capitalizedName}.
  -  ${capitalizedName}.created() : super.created() {
  +  ${capitalizedName}.created() : super.created() {$polymerCreatedString
     }
   
     /*
  
positive.code:       distanceToPackageRoot--;
      }
    }
      
    try {
      _createBoilerPlate(element, outputDir, distanceToPackageRoot);
    } on Exception catch(e) {
      print('Error creating files in $outputDir');
      print('Exception: $e');
      exitCode = 1;
      return;
    }
  
negative.code:   var parser = new ArgParser(allowTrailingOptions: true);
    
    parser.addOption('output-dir', abbr: 'o', help: 'Output directory');
    parser.addOption('extends', abbr: 'e', 
        help: 'Extends polymer-element or DOM element (e.g., div, span)');
    
    var options, element;
    try {
      options = parser.parse(args);
      if (options.rest == null || options.rest.isEmpty) {
        throw new FormatException('No element specified');
      }
      element = options.rest[0];
      if (!_isPolymerElement(element)) {
        throw new FormatException('Must specify polymer-element to create.\n'
            'polymer-element must be all lowercase with at least 1 hyphen.');
      }
    } catch(e) {
      print('$e\n');
      print('Usage:');
      print('  pub run polymer:new_element [-o output_dir] [-e super-element] '
          'element-name');
      print(parser.getUsage());
      exitCode = 1;
      return;
    } 
  