private ExternalLocation[] getExternalLocationsForOriginalID(long originalID) {
		ExternalLocation[] externalLocations = new ExternalLocation[4];

		Symbol originalSymbol = symbolTables[ORIGINAL].getSymbol(originalID);
		long latestID = resolveLatestIDFromOriginalID(originalID);
		long myID = resolveMyIDFromOriginalID(originalID);

		Symbol latestSymbol = symbolTables[LATEST].getSymbol(latestID);
		Symbol mySymbol = symbolTables[MY].getSymbol(myID);
		if (latestSymbol != null) {
			externalLocations[LATEST] = externalManagers[LATEST].getExternalLocation(latestSymbol);
		}
		if (mySymbol != null) {
			externalLocations[MY] = externalManagers[MY].getExternalLocation(mySymbol);
		}
		if (originalSymbol != null) {
			externalLocations[ORIGINAL] =
				externalManagers[ORIGINAL].getExternalLocation(originalSymbol);
		}
		// Get the RESULT external location.
		long resultID;
		try {
			resultID = originalResolvedSymbols.get(originalID);
		}
		catch (NoValueException e) {
			resultID = latestID;
		}
		Symbol resultSymbol = symbolTables[RESULT].getSymbol(resultID);
		if (resultSymbol != null) {
			externalLocations[RESULT] = externalManagers[RESULT].getExternalLocation(resultSymbol);
		}
		return externalLocations;
	}
Gets the external locations (result, latest, my, original) for the specified MY program
external space address.<br>
NOTE: Be careful where you call this method from. It is intended to be used for external
location changes only (not for Adds). It gets the ORIGINAL based on MY and then LATEST and
RESULT based on the ORIGINAL.
@param myAddress the MY program external space address for MY external location
@return all four program's external locations.
Ghidra/Features/Base/src/main/java/ghidra/app/merge/listing/ExternalFunctionMerger.java