private DataType getResolvedBaseType(long id, DataType dt,
			MyIdentityHashMap<Long, DataType> resolvedDataTypes) {
		DataTypeManager dtm = dt.getDataTypeManager();

		boolean doCheck = false;
		DataType baseDt = dt;
		if (baseDt instanceof TypeDef td) {
			baseDt = td.getDataType();
			doCheck = true;
		}
		if ((baseDt instanceof Pointer) || (baseDt instanceof Array)) {
			baseDt = DataTypeUtilities.getBaseDataType(baseDt);
			doCheck = true;
		}

		if (baseDt == null || baseDt == DataType.DEFAULT) {
			return DataType.DEFAULT; // force DEFAULT - null will be misconstrued
		}

		if (!doCheck) {
			throw new AssertException(
				"Unexpected condition - method only valid for typedef, pointer or array");
		}

		long baseID = dtm.getID(baseDt);
		DataType resolvedDt = resolvedDataTypes.get(baseID);
		if (resolvedDt == null) {
			// Haven't resolved this yet.
			// use dt from results
			if (!myDtAddedList.contains(Long.valueOf(baseID))) {
				resolvedDt = dtms[RESULT].getDataType(baseID);
				if (resolvedDt == null) {
					if (baseDt instanceof BuiltIn ||
						origDtConflictList.contains(Long.valueOf(baseID))) {
						// was deleted, but add it back so we can create
						// data types depending on it; will get resolved later
						resolvedDt = addDataType(baseID, baseDt, resolvedDataTypes);
					}
					else {
						// Removed in latest so fix up later.
						fixUpList.add(new FixUpInfo(id, baseID, baseDt, -1, resolvedDataTypes));
					}
				}
				else {
					resolvedDataTypes.put(baseID, resolvedDt);
				}
			}
			else {
				// Added in My, but hasn't processed yet, so fixup later.
				fixUpList.add(new FixUpInfo(id, baseID, baseDt, -1, resolvedDataTypes));
			}
		}
		return resolvedDt;
	}
Get the resolved data type from the given table;
If the data type has not been resolved yet, then use the one from
the results if the id was not added in MY program.
@param id id of data type
@param dt the data type
@return resolved data type that corresponds to id
Ghidra/Features/Base/src/main/java/ghidra/app/merge/datatypes/DataTypeMergeManager.java