erver = new Polymer.FlattenedNodesObserver(this, info => {

        const rowDetailsTemplate = info.addedNodes.filter(n => n.localName === 'template' && n.classList.contains('row-details'))[0];
        if (rowDetailsTemplate && this._rowDetailsTemplate !== rowDetailsTemplate) {
          this._rowDetailsTemplate = rowDetailsTemplate;
        }

        const hasColumnElements = (nodeCollection) => nodeCollection.filter(this._isColumnElement).length > 0;
        if (hasColumnElements(info.addedNodes) || hasC