private void handleChangeConflict(ListingMergePanel listingPanel, Address addr, int opIndex,
			int chosenConflictOption, boolean askUser, TaskMonitor monitor)
			throws CancelledException {
		ArrayList<Reference> changeList = changeConflicts.get(addr);
		if (changeList == null || changeList.size() == 0) {
			return;
		}
		currentAddress = addr;
		currentOpIndex = opIndex;
		currentBackgroundSet = new AddressSet(addr, addr);
		currentConflictType = CHANGE_CONFLICT;
		for (Reference changeRef : changeList) {
			currentReference = changeRef;
			if (currentReference.getOperandIndex() == opIndex) {
				// If we have a reference choice then a "Use For All" has already occurred.
				if (referenceChoice != ASK_USER) {
					resolveChangeConflict(currentReference, referenceChoice);
				}
				else {
					if (askUser && mergeManager != null) {
						showConflictPanel(listingPanel, CHANGE_CONFLICT);
						monitor.checkCancelled();
					}
					else {
						resolveChangeConflict(currentReference, chosenConflictOption);
					}
				}
			}
		}
	}
Replace the fallthroughs where possible. 
@param addressSet the address set where fallthroughs should be replaced
@param chosenConflictOption indicator of where to get references from (KEEP_ORIGINAL, KEEP_LATEST, KEEP_MY).
@param monitor task monitor
@throws CancelledException if user cancels.
Ghidra/Features/Base/src/main/java/ghidra/app/merge/listing/ReferenceMerger.java