private void compareFunctions(VTMatchOneToManyContext c) {
		List<VTMatch> selectedMatches = c.getSelectedMatches();

		MatchedFunctionComparisonModel model = new MatchedFunctionComparisonModel();
		for (VTMatch match : selectedMatches) {
			MatchInfo matchInfo = controller.getMatchInfo(match);

			// Whichever side we are currently in, is what will be on the left
			// side of the compare functions window.
			Function leftFunction = matchInfo.getSourceFunction();
			Function rightFunction = matchInfo.getDestinationFunction();
			if (!isSource) {
				leftFunction = matchInfo.getDestinationFunction();
				rightFunction = matchInfo.getSourceFunction();
			}
			model.addMatch(leftFunction, rightFunction);

		}
		FunctionComparisonService service = tool.getService(FunctionComparisonService.class);
		service.createCustomComparison(model, null);
	}
The docking window that provides a table of the other tool's function matches
for the function containing the current cursor location in this tool's
listing.
Ghidra/Features/VersionTracking/src/main/java/ghidra/feature/vt/gui/provider/onetomany/VTMatchOneToManyTableProvider.java