private boolean equivalentNamespaces(Namespace namespace1, Namespace namespace2) {
		if (namespace1 == null) {
			return (namespace2 == null);
		}
		if (namespace1.getID() == Namespace.GLOBAL_NAMESPACE_ID) {
			return (namespace2.getID() == Namespace.GLOBAL_NAMESPACE_ID);
		}
		String name1 = namespace1.getName();
		String name2 = namespace2.getName();
		if (!SystemUtilities.isEqual(name1, name2)) {
			return false;
		}
		SymbolType symbolType1 = namespace1.getSymbol().getSymbolType();
		SymbolType symbolType2 = namespace2.getSymbol().getSymbolType();
		if (!SystemUtilities.isEqual(symbolType1, symbolType2)) {
			return false;
		}
		Namespace parent1 = namespace1.getParentNamespace();
		Namespace parent2 = namespace2.getParentNamespace();
		return equivalentNamespaces(parent1, parent2);
	}
@param entry
@param type (FUNC_RETURN_TYPE, FUNC_RETURN_ADDRESS_OFFSET,
FUNC_PARAMETER_OFFSET, FUNC_LOCAL_SIZE, FUNC_STACK_PURGE_SIZE, FUNC_NAME, FUNC_INLINE,
FUNC_NO_RETURN, FUNC_CALLING_CONVENTION)
@param latestMyChanges
@param originalLatestChanges
@param originalMyChanges
@param monitor
@return
@throws CancelledException
Ghidra/Features/Base/src/main/java/ghidra/app/merge/listing/ExternalFunctionMerger.java