code: public MACAddressSection toOUIPrefixBlock() {
  		int ouiSegmentCount = getOUISegmentCount();
  		int segmentCount = getSegmentCount();
  		Integer currentPref = getPrefixLength();
  		int newPref = ouiSegmentCount << 3;//ouiSegmentCount * MACAddress.BITS_PER_SEGMENT
  		boolean createNew;
  		if(!(createNew = (currentPref == null || currentPref > newPref))) {
  			newPref = currentPref;
  			for(int i = ouiSegmentCount; i < segmentCount; i++) {
  				MACAddressSegment segment = getSegment(i);
  				if(!segment.isFullRange()) {
  					createNew = true;
  					break;
  				}
  			}
  		}
  		if(createNew) {
  			MACAddressCreator creator = getAddressCreator();
  			MACAddressSegment allRangeSegment = creator.createRangeSegment(0, MACAddress.MAX_VALUE_PER_SEGMENT);
  			MACAddressSegment newSegments[] = setPrefixedSegments(
  					getNetwork(),
  					newPref,
  					getSegments(), //this clones
  					MACAddress.BITS_PER_SEGMENT,
  					MACAddress.BYTES_PER_SEGMENT,
  					creator, 
  					(seg, prefixLength) -> (prefixLength == 0) ? allRangeSegment : seg);			
  			MACAddressSection result = creator.createSectionInternal(newSegments);
  			result.assignPrefixLength(newPref);
  			return result;
  		}
  		return this;
  	}
docs: Returns a section in which the range of values match the block for the OUI (organizationally unique identifier) bytes
  
  @return