public AddressRange severMyHeadRange(AddressRangeManager manager) {
			if (range.getMaxAddress().compareTo(manager.range.getMinAddress()) < 0) {
				return getNextRange();
			}

			AddressRange severedRange =
				new AddressRangeImpl(range.getMinAddress(),
					manager.range.getMinAddress().previous());
			range = new AddressRangeImpl(manager.range.getMinAddress(), range.getMaxAddress());
			return severedRange;
		}
Sets this manager's begin range to be the start range of the given manager.  This method
will return the range that exists before the begin range is adjusted.
@param manager The manager whose range will be used to set this manager's begin range.
@return The range that is the difference between this manager's original and new begin
        range.
Ghidra/Features/Base/src/main/java/ghidra/program/util/CombinedAddressRangeIterator.java