private FidSearchResult makeAllMatches(Function function, HashFamily family,
			ArrayList<HashMatch> culledHashMatches, TaskMonitor monitor) throws CancelledException {
		ArrayList<FidMatch> fidMatches = new ArrayList<FidMatch>();
		for (FidMatchScore hashMatch : culledHashMatches) {
			monitor.checkCancelled();
			FidMatch match = new FidMatchImpl(
				fidQueryService.getLibraryForFunction(hashMatch.getFunctionRecord()),
				function.getEntryPoint(), hashMatch);
			fidMatches.add(match);
		}
		return new FidSearchResult(function, family.getHash(), fidMatches);
	}
We couldn't disambiguate, but it's OK to return multiple results to the analyzer
(which may decide to throw them all out, or mark all of them, or something in between).
@param function the function
@param family is the collection of hashes associated with function
@param culledHashMatches list of functions at the appropriate significance for the multiple matches
@param monitor a task monitor
@return the FidSearchResult describing the new matches
@throws CancelledException if the user cancels
Ghidra/Features/FunctionID/src/main/java/ghidra/feature/fid/service/FidProgramSeeker.java