code: function (elm, name) {
          var self = this, newElm;
  
          if (elm.nodeName != name.toUpperCase()) {
            // Rename block element
            newElm = self.create(name);
  
            // Copy attribs to new block
            each(self.getAttribs(elm), function (attrNode) {
              self.setAttrib(newElm, attrNode.nodeName, self.getAttrib(elm, attrNode.nodeName));
            });
  
            // Replace block
            self.replace(newElm, elm, 1);
          }
  
          return newElm || elm;
        }
docs: Renames the specified element and keeps its attributes and children.
  
  @method rename
  @param {Element} elm Element to rename.
  @param {String} name Name of the new element.
  @return {Element} New element or the old element if it needed renaming.