code: function(p) {
        if (p && p.element) {
          this.parseDeclarations(p.__proto__);
          p.parseDeclaration.call(this, p.element);
        }
      }
docs: Walks the prototype-chain of this element and allows specific
  classes a chance to process static declarations.
  
  In particular, each polymer-element has it's own `template`.
  `parseDeclarations` is used to accumulate all element `template`s
  from an inheritance chain.
  
  `parseDeclaration` static methods implemented in the chain are called
  recursively, oldest first, with the `<polymer-element>` associated
  with the current prototype passed as an argument.
  
  An element may override this method to customize shadow-root generation.
  
  @method parseDeclarations