if(!self.containsValue(candidateItem, key, value)){ 
if(!self._containsValue(candidateItem, key, value, requestArgs.queryIgnoreCase)){ 
	_fetchItems: function(	/* Object */ keywordArgs, 							/* Function */ findCallback, 							/* Function */ errorCallback){		//	summary: 		//		See dojo.data.util.simpleFetch.fetch()				var self = this;		var filter = function(requestArgs, arrayOfAllItems){			var items = null;			if(requestArgs.query){				items = [];				for(var i = 0; i < arrayOfAllItems.length; ++i){					var match = true;					var candidateItem = arrayOfAllItems[i];					for(var key in requestArgs.query){						var value = requestArgs.query[key];						if(!self.containsValue(candidateItem, key, value)){							match = false;						}					}					if(match){						items.push(candidateItem);					}				}			}else{				// We want a copy to pass back in case the parent wishes to sort the array.  We shouldn't allow resort 				// of the internal list so that multiple callers can get lists and sort without affecting each other.				if(arrayOfAllItems.length> 0){					items = arrayOfAllItems.slice(0,arrayOfAllItems.length); 				}			}			findCallback(items, requestArgs);		};		if(this._loadFinished){			filter(keywordArgs, this._dataArray);		}else{			if(this._csvFileUrl){				var getArgs = {						url: self._csvFileUrl, 						handleAs: "text"					};				var getHandler = dojo.xhrGet(getArgs);				getHandler.addCallback(function(data){					self._processData(data);					filter(keywordArgs, self._arrayOfAllItems);				});				getHandler.addErrback(function(error){					throw error;				});			}else if(this._csvData){				this._processData(this._csvData);				this._csvData = null;				filter(keywordArgs, this._arrayOfAllItems);			}else{				throw new Error("dojox.data.CsvStore: No CSV source data was provided as either URL or String data input.");			}		}	},
5168	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/5168/4d7de51be571ef02f8ae9d105babf3e7d16da351/CsvStore.js/buggy/data/CsvStore.js