private void findSimilarNodes(List<FunctionPair> results, FunctionNode queryNode,
				TaskMonitor monitor) throws CancelledException {

			//Set up for matching via feature vector comparison.
			Set<FunctionNode> neighbors = sourceBinning.lookup(queryNode);
			VectorCompare veccompare = new VectorCompare();

			//Check each neighbor from the system of binnings to see if they pass a round of matching.
			for (FunctionNode neighbor : neighbors) {
				monitor.checkCancelled();

				//Feature vector computations
				double similarity = neighbor.getVector().compare(queryNode.getVector(), veccompare);
				if (similarity < simThreshold) {
					continue;
				}
				double confidence = vectorFactory.calculateSignificance(veccompare);

				//Create FunctionPair (bridge in the graph from source to dest)
				FunctionPair newPair =
					new FunctionPair(neighbor, queryNode, similarity, confidence);

				results.add(newPair);
			}
		}
Lookup potential matches for -queryNode- in the binning system,
and perform secondary testing to see if we have a full (potential) match.
Pairs that exceed the threshold are added to the -results- list
@param results is the list of FunctionPairs passing the similarity test
@param queryNode is the base FunctionNode to compare
@param monitor is the TaskMonitor
@throws CancelledException if the user cancels the correlation
Ghidra/Features/VersionTrackingBSim/src/main/java/ghidra/feature/vt/api/BSimProgramCorrelatorMatching.java