rem: var element = document.createElement(parentTag); element.innerHTML = "<" + elementName + "></" + elementName + ">"; if(element.firstChild.tagName != elementName) element = element.getElementsByTagName(elementName)[0].parentNode; 
add:  if(element && (element.tagName != elementName)) element = element.getElementsByTagName(elementName)[0];   if(!element) element = document.createElement(elementName);   if(!element) return; 
context:   node: function(elementName) {    elementName = elementName.toUpperCase();    // Firefox is picky about parent tags    var parentTag = this.NODEMAP[elementName] || 'div';          var element = document.createElement(parentTag);    element.innerHTML =       "<" + elementName + "></" + elementName + ">";    if(element.firstChild.tagName != elementName)      element = element.getElementsByTagName(elementName)[0].parentNode;    // attributes (or text)    if(arguments[1])      if(this._isStringOrNumber(arguments[1]) ||        (arguments[1] instanceof Array)) {          this._children(element.firstChild, arguments[1]);        } else {          var attrs = this._attributes(arguments[1]);          if(attrs.length) {            element.innerHTML = "<" +elementName + " " +              attrs + "></" + elementName + ">";            if(element.firstChild.tagName != elementName)              element = element.getElementsByTagName(elementName)[0].parentNode;            }        }     // text, or array of children    if(arguments[2])      this._children(element.firstChild, arguments[2]);     return element.firstChild;  },
meta: 7994	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/7994/3876b691cea6d9d7cbc896ce11dfb3d9f14f7385/util.js/clean/src/util.js