code: @NotNull String firstPropertyIfNested(@NotNull String propertyName) {
      if (!isNestedProperty(propertyName)) {
        return propertyName;
      }
      return checkNotNull(propertyName.substring(0, propertyName.indexOf(SEPARATOR)));
    }
docs: Returns the first property from the given property name only if the given property name belongs to a nested
  property. For example, given the nested property "address.street.name", this method will return "address". This
  method returns the given property name unchanged if it does not belong to a nested property.
  
  @param propertyName the given property name.
  @return the first property from the given property name, if the property name belongs to a nested property;
  otherwise, it will return the given property name unchanged.
  @throws NullPointerException if given property name is {@code null}.