private void processRemoves(TaskMonitor monitor) throws CancelledException {
		updateProgressMessage("Processing removed symbols...");
		monitor.setMessage("Symbol Merge: Processing removed symbols...");

		int len = myRemoveIDs.length;
		monitor.initialize(len);
		for (int i = 0; i < len; i++) {
			monitor.setProgress(i);
			monitor.checkCancelled();
			long id = myRemoveIDs[i];
			Symbol originalSym = originalSymTab.getSymbol(id);
			SymbolType originalType = originalSym.getSymbolType();
			// CODE, CLASS, EXTERNAL, FUNCTION, GLOBAL, GLOBAL_VAR, LIBRARY,
			// LOCAL_VAR, NAMESPACE, PARAMETER
			if ((originalType == SymbolType.LABEL && !originalSym.isExternal()) ||
				(originalType == SymbolType.CLASS) || (originalType == SymbolType.NAMESPACE)) {
				processSingleRemove(id, originalSym);
			}
		}
		monitor.setProgress(len);
	}
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