public Symbol getSymbolInNamespaces(String parentNamespaceName, String namespaceName,
			String symbolName) throws CancelledException {

		SymbolIterator symbols = program.getSymbolTable().getSymbols(symbolName);
		while (symbols.hasNext()) {
			monitor.checkCancelled();
			Symbol symbol = symbols.next();
			if (symbol.getParentNamespace().getName().equals(namespaceName)) {
				Namespace namespace = symbol.getParentNamespace();
				Namespace parentNamespace = namespace.getParentNamespace();

				// make this exact parent-namespace-name is global and is not in yet a further namespace
				if (parentNamespace.getName().equals(parentNamespaceName) &&
					parentNamespace.getParentNamespace().isGlobal()) {
					return symbol;
				}
			}
		}
		return null;
	}
Method to return a symbol with the given name in the given namespace which is in the given
parent namespace or null if one is not found
@param parentNamespaceName name of parent namespace
@param namespaceName name of symbol namespace
@param symbolName name of symbol
@return Symbol with given name, namespace and parent namespace or null if doesn't exist
@throws CancelledException if cancelled
Ghidra/Features/Decompiler/ghidra_scripts/classrecovery/RecoveredClassHelper.java