get disabled() { return !!this.getAttribute("disabled"); }, 
get disabled() { var val = this.getAttribute("disabled"); return val != "false" && !!val; }, 
(function(){	// Browser Navigator	window.navigator = {		get userAgent(){			return "Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3";		}	};		window.__defineSetter__("location", function(url){		window.document = new DOMDocument(url);	});		window.__defineGetter__("location", function(url){		return {			get protocol(){				return "file:";			}		};	});		// Timers	var timers = [];		window.setTimeout = function(fn, time){		var num;		return num = setInterval(function(){			fn();			clearInterval(num);		}, time);	};		window.setInterval = function(fn, time){		var num = timers.length;				timers[num] = new java.lang.Thread(new java.lang.Runnable({			run: function(){				while (true){					java.lang.Thread.currentThread().sleep(time);					fn();				}			}		}));				timers[num].start();			return num;	};		window.clearInterval = function(num){		if ( timers[num] ) {			timers[num].stop();			delete timers[num];		}	};		// Window Events	window.addEventListener = function(){};	window.removeEventListener = function(){};		// DOM Document		window.DOMDocument = function(file){		this._file = file;		this._dom = Packages.javax.xml.parsers.			DocumentBuilderFactory.newInstance()				.newDocumentBuilder().parse(file);	};		DOMDocument.prototype = {		createTextNode: function(text){			return makeNode( this._dom.createTextNode(text) );		},		createElement: function(name){			return makeNode( this._dom.createElement(name) );		},		getElementsByTagName: function(name){			return new DOMNodeList( this._dom.getElementsByTagName(name) );		},		getElementById: function(id){			var elems = this._dom.getElementsByTagName("*");						for ( var i = 0; i < elems.length; i++ ) {				var elem = elems.item(i);				if ( elem.getAttribute("id") == id )					return makeNode(elem);			}						return null;		},		get body(){			return this.getElementsByTagName("body")[0];		},		defaultView: {			getComputedStyle: {				getPropertyValue: function(){ }			}		},		get documentElement(){			return makeNode( this._dom.getDocumentElement() );		},		get ownerDocument(){			return this;		},		addEventListener: function(){},		removeEventListener: function(){},		get nodeName() {			return "#document";		},		importNode: function(node, deep){			return makeNode( this._dom.importNode(node._dom, deep) );		},		toString: function(){			return "Document" + (typeof this._file == "string" ?				": " + this._file : "");		},				get defaultView(){			return {				getComputedStyle: function(){					return {						getPropertyValue: function(){							return "";						}					}				}			};		}	};		// DOM NodeList		window.DOMNodeList = function(list){		this._dom = list;		this.length = list.getLength();				for ( var i = 0; i < this.length; i++ ) {			var node = list.item(i);			this[i] = makeNode( node );		}	};		DOMNodeList.prototype = {		toString: function(){			return "[ " +				Array.prototype.join.call( this, ", " ) + " ]";		},		valueOf: function(){			return Array.prototype.map.call(				this, function(node){return node.valueOf();}).join('');		}	};		// DOM Node		window.DOMNode = function(node){		this._dom = node;	};		DOMNode.prototype = {		get nodeType(){			return this._dom.getNodeType();		},		get nodeValue(){			return this._dom.getNodeValue();		},		get nodeName() {			return this._dom.getNodeName();		},		cloneNode: function(deep){			return makeNode( this._dom.cloneNode(deep) );		},		get ownerDocument(){			return document;		},		get documentElement(){			return document.documentElement;		},		get parentNode() {			return makeNode( this._dom.getParentNode() );		},		get nextSibling() {			return makeNode( this._dom.getNextSibling() );		},		get previousSibling() {			return makeNode( this._dom.getPreviousSibling() );		},		toString: function(){			return '"' + this.nodeValue + '"';		},		valueOf: function(){			return this.nodeValue;		}	};	// DOM Element	window.DOMElement = function(elem){		this._dom = elem;	};		DOMElement.prototype = extend( new DOMNode(), {		get nodeName(){			return this.tagName.toUpperCase();		},		get tagName(){			return this._dom.getTagName();		},		toString: function(){			return "<" + this.tagName + (this.id ? "#" + this.id : "" ) + ">";		},		valueOf: function(){			var ret = "<" + this.tagName, attr = this.attributes;						for ( var i in attr )				ret += " " + i + "='" + attr[i] + "'";							if ( this.childNodes.length || this.nodeName == "SCRIPT" )				ret += ">" + this.childNodes.valueOf() + 					"</" + this.tagName + ">";			else				ret += "/>";						return ret;		},				get attributes(){			var attr = {}, attrs = this._dom.getAttributes();						for ( var i = 0; i < attrs.getLength(); i++ )				attr[ attrs.item(i).nodeName ] = attrs.item(i).nodeValue;							return attr;		},				get innerHTML(){			return this.childNodes.valueOf();			},		set innerHTML(html){			var nodes = this.ownerDocument.importNode(				new DOMDocument( new java.io.ByteArrayInputStream(					(new java.lang.String("<wrap>" + html + "</wrap>"))						.getBytes())).documentElement, true).childNodes;							while (this.firstChild)				this.removeChild( this.firstChild );						for ( var i = 0; i < nodes.length; i++ )				this.appendChild( nodes[i] );		},				get textContent(){			return nav(this.childNodes);						function nav(nodes){				var str = "";				for ( var i = 0; i < nodes.length; i++ )					if ( nodes[i].nodeType == 3 )						str += nodes[i].nodeValue;					else if ( nodes[i].nodeType == 1 )						str += nav(nodes[i].childNodes);				return str;			}		},		set textContent(text){			while (this.firstChild)				this.removeChild( this.firstChild );			this.appendChild( document.createTextNode(text) );			this.innerHTML = document.createTextNode(text).nodeValue;		},				style: {},		clientHeight: 0,		clientWidth: 0,		offsetHeight: 0,		offsetWidth: 0,				get disabled() { return !!this.getAttribute("disabled"); },		set disabled(val) { return this.setAttribute("disabled",val); },				get checked() { return !!this.getAttribute("checked"); },		set checked(val) { return this.setAttribute("checked",val); },				get selected() { return !!this.getAttribute("selected"); },		set selected(val) { return this.setAttribute("selected",val); },		get className() { return this.getAttribute("class") || ""; },		set className(val) { return this.setAttribute("class",val); },				get type() { return this.getAttribute("type") || ""; },		set type(val) { return this.setAttribute("type",val); },				get value() { return this.getAttribute("value") || ""; },		set value(val) { return this.setAttribute("value",val); },				get src() { return this.getAttribute("src") || ""; },		set src(val) { return this.setAttribute("src",val); },				get id() { return this.getAttribute("id") || ""; },		set id(val) { return this.setAttribute("id",val); },				getAttribute: function(name){			return this._dom.hasAttribute(name) ?				this._dom.getAttribute(name) :				null;		},		setAttribute: function(name,value){			this._dom.setAttribute(name,value);		},		removeAttribute: function(name){			this._dom.removeAttribute(name);		},				get childNodes(){			return new DOMNodeList( this._dom.getChildNodes() );		},		get firstChild(){			return makeNode( this._dom.getFirstChild() );		},		get lastChild(){			return makeNode( this._dom.getLastChild() );		},		appendChild: function(node){			this._dom.appendChild( node._dom );		},		insertBefore: function(node,before){			this._dom.insertBefore( node._dom, before ? before._dom : before );		},		removeChild: function(node){			this._dom.removeChild( node._dom );		},		getElementsByTagName: DOMDocument.prototype.getElementsByTagName,		addEventListener: function(){},		removeEventListener: function(){},		click: function(){},		submit: function(){},		focus: function(){},		blur: function(){},		elements: []	});		// Helper method for extending one object with another		function extend(a,b) {		for ( var i in b ) {			var g = b.__lookupGetter__(i), s = b.__lookupSetter__(i);						if ( g || s ) {				if ( g )					a.__defineGetter__(i, g);				if ( s )					a.__defineSetter__(i, s);			} else				a[i] = b[i];		}		return a;	}		// Helper method for generating the right	// DOM objects based upon the type		var obj_nodes = new java.util.HashMap();		function makeNode(node){		if ( node ) {			if ( !obj_nodes.containsKey( node ) )				obj_nodes.put( node, node.getNodeType() == 					Packages.org.w3c.dom.Node.ELEMENT_NODE ?						new DOMElement( node ) : new DOMNode( node ) );						return obj_nodes.get(node);		} else			return null;	}		// XMLHttpRequest	window.XMLHttpRequest = function(){ };		XMLHttpRequest.prototype = {		open: function(){ },		setRequestHeader: function(){ },		getResponseHeader: function(){ },		readyState: 0,		responseText: "",		responseXML: {},		status: 0	};})();
6056	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/6056/52c6739c20838f2d705d404664dcc0cfa07f2c30/env.js/buggy/build/runtest/env.js