private long getResultIDFromMyID(long mySymbolID) throws NoValueException {
		try {
			return myHash.get(mySymbolID);
		}
		catch (NoValueException e) {
			Symbol mySymbol = mySymTab.getSymbol(mySymbolID);
			Symbol originalSymbol = originalSymTab.getSymbol(mySymbolID);
			SymbolType mySymbolType = (mySymbol != null) ? mySymbol.getSymbolType() : null;
			SymbolType originalSymbolType =
				(originalSymbol != null) ? originalSymbol.getSymbolType() : null;
			if ((originalSymbolType != null) && (originalSymbolType == mySymbolType)) {
				Symbol resultSymbol = resultSymTab.getSymbol(mySymbolID);
				SymbolType resultSymbolType =
					(resultSymbol != null) ? resultSymbol.getSymbolType() : null;
				if (originalSymbolType == resultSymbolType) {
					return mySymbolID;
				}
			}
			if (mySymbol != null) {
				Symbol resultSymbol = SimpleDiffUtility.getSymbol(mySymbol, resultPgm);
				if (resultSymbol != null) {
					return resultSymbol.getID();
				}
			}
			throw e;
		}
	}
Checks to see if there is a symbol in the otherProgram that conflicts
with the indicated symbol. A conflict can be one of these types:
1) a symbol other than label or function that has the same name and 
namespace as another non label or function.
2) a symbol at the same address with the same name and namespace.

@param program the program that contains the specified symbol
@param symbol the symbol (Can be original, latest, or my.)
@param otherProgram the program to be checked for a conflicting symbol
@param saveConflict if true this will also save the conflict for processing or in
some cases automatically process the conflict.
@return true if there is a symbol name conflict
Ghidra/Features/Base/src/main/java/ghidra/app/merge/listing/SymbolMerger.java