docs: public boolean prefixEquals(IPAddressString other) {
  		// getting the prefix 
  		Integer prefixLength = getNetworkPrefixLength();
  		if(prefixLength == null) {
  			return false;
  		}
  		if(other == this && !isPrefixOnly()) {
  			return true;
  		}
  		if(other.addressProvider.isUninitialized()) { // other not yet validated - if other is validated no need for this quick contains
  			// do the quick check that uses only the String of the other, matching til the end of the prefix length, for performance
  			Boolean directResult = addressProvider.prefixEquals(other.fullAddr);
  			if(directResult != null) {
  				return directResult.booleanValue();
  			}
  		}
  		if(other.isValid()) {
  			Boolean directResult = addressProvider.prefixEquals(other.addressProvider); 
  			if(directResult != null) {
  				return directResult.booleanValue();
  			}
  			IPAddress thisAddress = getAddress();
  			IPAddress otherAddress = other.getAddress();
  			if(thisAddress != null) {
  				return otherAddress != null && prefixLength <= otherAddress.getBitCount() &&
  						thisAddress.prefixEquals(otherAddress);
  			}
  			// one or both addresses are null, so there is no prefix to speak of
  		}
  		return false;
  	}