anchor.diff:    }
   
     /** Locate nodes with id and store references to them in [$] hash. */
  -  void marshalNodeReferences(ShadowRoot root) {
  +  void marshalNodeReferences(Node root) {
       if (root == null) return;
       for (var n in root.queryAll('[id]')) {
         $[n.id] = n;
  
positive.code:   }
  
    /** Attach event listeners inside a shadow [root]. */
    void addInstanceListeners(ShadowRoot root, Element template) {
      var templateDelegates = _declaration._templateDelegates;
      if (templateDelegates == null) return;
      var events = templateDelegates[template];
  
negative.code:   void parseDeclaration(Element elementElement) {
      var root = shadowFromTemplate(fetchTemplate(elementElement));
  
      // Dart note: the following code is to support the getShadowRoot method.
      if (root is! ShadowRoot) return;
  
      var name = elementElement.attributes['name'];
      if (name == null) return;
  