|  | var baseIsMatch = require('./_baseIsMatch'), | 
						
						
							|  |     getMatchData = require('./_getMatchData'), | 
						
						
							|  |     matchesStrictComparable = require('./_matchesStrictComparable'); | 
						
						
							|  | 
 | 
						
						
							|  | /** | 
						
						
							|  |  * The base implementation of `_.matches` which doesn't clone `source`. | 
						
						
							|  |  * | 
						
						
							|  |  * @private | 
						
						
							|  |  * @param {Object} source The object of property values to match. | 
						
						
							|  |  * @returns {Function} Returns the new spec function. | 
						
						
							|  |  */ | 
						
						
							|  | function baseMatches(source) { | 
						
						
							|  |   var matchData = getMatchData(source); | 
						
						
							|  |   if (matchData.length == 1 && matchData[0][2]) { | 
						
						
							|  |     return matchesStrictComparable(matchData[0][0], matchData[0][1]); | 
						
						
							|  |   } | 
						
						
							|  |   return function(object) { | 
						
						
							|  |     return object === source || baseIsMatch(object, source, matchData); | 
						
						
							|  |   }; | 
						
						
							|  | } | 
						
						
							|  | 
 | 
						
						
							|  | module.exports = baseMatches;
 |