code: function () {
              if (this.isElement()) {
                  var i,
                      subtreeHashes = "",
                      childHashes = "",
                      child;
                  for (i = 0; i < this.children.length; i++) {
                      child = this.children[i];
                      if (child.isElement()) {
                          childHashes += String(child.tagID);
                          subtreeHashes += String(child.tagID) + child.attributeSignature + child.subtreeSignature;
                      } else {
                          childHashes += child.textSignature;
                          subtreeHashes += child.textSignature;
                      }
                  }
                  this.childSignature = MurmurHash3.hashString(childHashes, childHashes.length, seed);
                  this.subtreeSignature = MurmurHash3.hashString(subtreeHashes, subtreeHashes.length, seed);
              } else {
                  this.textSignature = MurmurHash3.hashString(this.content, this.content.length, seed);
              }
          }
docs: Updates signatures used to optimize the number of comparisons done during
  diffing. This is important to call if you change:
  
  * children
  * child node attributes
  * text content of a text node
  * child node text