private String getUniqueSectionChunkName(MemorySection section,
			int preferredIndex) {
		String sectionName = section.getSectionName();
		int index = preferredIndex;
		while (true) {
			String name = sectionName;
			if (index >= 0) {
				name += "." + index;
			}
			if (!usedBlockNames.contains(name)) {
				return name;
			}
			if (index <= 0) {
				index = 1;
			}
			else {
				index += 1;
			}
		}
	}
Add uninitialized memory "section".
The last "section" defined will take precedence when resolving conflicts.  
@param key the loadable section key which corresponds to this memory "section"
@param numberOfBytes number of bytes within "section" 
@param startAddress desired physical start address of "section" (not overlay address)
@param sectionName name of "section" 
@param isReadable true if "section" has read privilege
@param isWritable true if "section" has write privilege
@param isExecutable true if "section" has execute privilege
@param comment section comment (used as basis for block comment)
@param isFragmentationOK if true this memory section may be fragmented due to 
conflict/overlap with other memory sections of higher precedence.
@throws AddressOverflowException
Ghidra/Features/Base/src/main/java/ghidra/app/util/opinion/MemorySectionResolver.java