anchor.diff:   * @description 
    */
   import "dart:html";
  -import "dart:svg";
  -import "../../../testcommon.dart";
   import "../../../resources/testharness.dart";
   
   class C extends HtmlElement {
  
positive.code:     for(var elementName in validNameClassMap.keys) {
        var expectedTagName = elementName.toUpperCase();
        var klass = validNameClassMap[elementName];
        document.register(elementName, klass);
        var tagName = document.createElement(elementName).tagName;
        assert_equals(tagName, expectedTagName, tagName + ' must be treated as a custom element');
      }
    }, 'strange but valid names');
  }
  
negative.code:     // hyphen-containing names from the applicable specifications,
      // namely the SVG and the MathML.
      'annotation-xml',
      'color-profile',
      'font-face',
      'font-face-src',
      'font-face-uri',
      'font-face-format',
      'font-face-name',
      'missing-glyph',
      // names containing colon
      ':-xfoo',
      'xfoo-:yfoo',
      // names containing uppercase ASCII letters
      'xx-Foo',
      'X-Men',
      'ab-cdE'
      ];
  
      for (var i = 0; i < invalidNames.length; i++) {
        var invalidName = invalidNames[i];
        assert_throws(() {
          document.registerElement(invalidName, C);
        }, 'Successfully registered custom element with invalid name: ' + invalidName);
      }
    }, 'Invalid and reserved names');
  
    test((){
      document.registerElement('x-foo', Foo);
      assert_throws(() {
        document.registerElement('x-foo', Foo);
      }, 'Register already registered "x-foo"');
      assert_throws(() {
        document.registerElement('X-FOO', Foo);
      }, 'Register "X-FOO", same as already registered "x-foo"');
    }, 'Name conflicts');
  
    test(() {
      var validNameClassMap = {
  