     var ret = []; var isFunc = dojo.lang.isFunction(type); if(!isFunc){ type = type.toLowerCase(); } for(var x=0; x<this.children.length; x++){ if(isFunc){ if(this.children[x] instanceof type){ ret.push(this.children[x]); } }else{ if(this.children[x].widgetType.toLowerCase() == type){ ret.push(this.children[x]); } } if(recurse){ ret = ret.concat(this.children[x].getChildrenOfType(type, recurse)); } } return ret; }, 
     var ret = []; var isFunc = dojo.lang.isFunction(type); if(!isFunc){ type = type.toLowerCase(); } for(var x=0; x<this.children.length; x++){ if(isFunc){ if(this.children[x] instanceof type){ ret.push(this.children[x]); } }else{ if(this.children[x].widgetType.toLowerCase() == type){ ret.push(this.children[x]); } } if(recurse){ ret = ret.concat(this.children[x].getChildrenOfType(type, recurse)); } } return ret; }, 
	getChildrenOfType: function(/*String*/type, recurse){		// summary: 		//		return an array of descendant widgets who match the passed type		// recurse: Boolean		//		should we try to get all descendants that match? Defaults to		//		false.		var ret = [];		var isFunc = dojo.lang.isFunction(type);		if(!isFunc){			type = type.toLowerCase();		}		for(var x=0; x<this.children.length; x++){			if(isFunc){				if(this.children[x] instanceof type){					ret.push(this.children[x]);				}			}else{				if(this.children[x].widgetType.toLowerCase() == type){					ret.push(this.children[x]);				}			}			if(recurse){				ret = ret.concat(this.children[x].getChildrenOfType(type, recurse));			}		}		return ret; // Array	},
6315	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/6315/2f1d2cb699c9d9329e8b782b0463156e211cb0f6/struts_dojo.js.uncompressed.js/buggy/src/main/resources/org/apache/struts2/static/dojo/struts_dojo.js.uncompressed.js