rem: result.conditions.push(seleniumEquals('String', matcher + ':' + list[i], result.item(i))); 
add: result.conditions.push(seleniumEquals('String', matcher + ':' + list[i], { index: i, toString: function() { return result.item(this.index) }})); 
context: function seleniumEquals(type, pattern, expression) {	if (type == 'String[]') {		var matcher = 'exact';		var r;		if ((r = pattern.match(/^(regexp|glob|exact):/))) {			matcher = r[1];			pattern = pattern.substring(r[0].length);		} else if (pattern.match(/[\*\?]/)) {			matcher = 'glob';		}		var separateEquals = this.useSeparateEqualsForArray || 'exact' != matcher;		var list = parseArray(pattern);		if (separateEquals) {			var result = new EqualsArray(expression);			result.conditions.push(new Equals(list.length, result.length()));			for (var i = 0; i < list.length; i++) {				result.conditions.push(seleniumEquals('String', matcher + ':' + list[i], result.item(i)));			}			return result;		} else {			return new Equals(xlateValue(type, pattern), expression);		}	} else if (type == 'String' && pattern.match(/^regexp:/)) {		return new RegexpMatch(pattern.substring(7), expression);	} else if (type == 'String' && (pattern.match(/^glob:/) || pattern.match(/[\*\?]/))) {		pattern = pattern.replace(/^glob:/, '');		pattern = pattern.replace(/([\]\[\\\{\}\$\(\).])/g, "\\$1");		pattern = pattern.replace(/\?/g, "(.|[\r\n])");		pattern = pattern.replace(/\*/g, "(.|[\r\n])*");		return new RegexpMatch(pattern, expression);	} else {		pattern = pattern.replace(/^exact:/, '');		return new Equals(xlateValue(type, pattern), expression);	}}
meta: 3428	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/3428/9c787c7e6c12c5505c234cea90865fbee0d58139/remoteControl.js/buggy/src/content/formats/remoteControl.js