private void setUnintializedDataSource(Buffer dataSource, int dataSourceOffset) {

		if (dataSourceOffset < 0) {
			throw new IllegalArgumentException("Invalid data source offset: " + dataSourceOffset);
		}

		int maxOffset = dataSourceOffset - 1 + size;
		if (maxOffset < 0 || maxOffset >= dataSource.length()) {
			throw new IllegalArgumentException("Data source has insufficient bytes (need " + size +
				" bytes at offset " + dataSourceOffset);
		}

		this.uninitializedDataSource = dataSource;
		this.uninitializedDataSourceOffset = dataSourceOffset;
	}
If this chained buffer was not completely filled/initialized a dataSource may be used
obtain the initial values when needed.  When an uninitialized area is written, any unwritten
areas within the containing block(s) will be initialized from the uninitialized dataSource.
The same uninitialized read-only dataSource used for a chained buffer should be re-applied
anytime this chained buffer is re-instantiated. 

@param dataSource data source for unitilized bytes
@param dataSourceOffset offset within dataSource which corresponds to first byte of
this chained buffer.
Ghidra/Framework/DB/src/main/java/db/ChainedBuffer.java