private void getEntryPtChanges(TaskMonitor monitor) throws CancelledException {
		AddressIterator originalIter = originalSymTab.getExternalEntryPointIterator();
		AddressIterator latestIter = latestSymTab.getExternalEntryPointIterator();
		AddressIterator myIter = mySymTab.getExternalEntryPointIterator();

		updateProgressMessage("Finding entry point changes...");
		monitor.setMessage("Symbol Merge: Finding entry point changes...");
		monitor.setProgress(0);

		MultiAddressIterator multiIter =
			new MultiAddressIterator(new AddressIterator[] { originalIter, latestIter, myIter });
		while (multiIter.hasNext()) {
			monitor.checkCancelled();
			Address[] addrs = multiIter.nextAddresses();
			if (addrs[0] != null) {
				if (addrs[1] == null || addrs[2] == null) {
					removeEntryPts.addRange(addrs[0], addrs[0]);
				}
			}
			else {
				if (addrs[1] != null) {
					addEntryPts.addRange(addrs[1], addrs[1]);
				}
				else if (addrs[2] != null) {
					addEntryPts.addRange(addrs[2], addrs[2]);
				}
			}
		}
	}
Determine the type of changes to the symbols in the LATEST and MY (CheckedOut) program.
Changes can be symbol removed, added, changed, renamed, and set to primary.
@param monitor task monitor for displaying progress to the user
@throws CancelledException if the user cancels the merge.
Ghidra/Features/Base/src/main/java/ghidra/app/merge/listing/SymbolMerger.java