/**
  * Gets the range of valid values for the specified field.
  *
  * <p>The range object expresses the minimum and maximum valid values for a field. This
  * day-of-week is used to enhance the accuracy of the returned range. If it is not possible to
  * return the range, because the field is not supported or for some other reason, an exception is
  * thrown.
  *
  * <p>If the field is {@link ChronoField#DAY_OF_WEEK DAY_OF_WEEK} then the range of the
  * day-of-week, from 1 to 7, will be returned. All other {@code ChronoField} instances will throw
  * an {@code UnsupportedTemporalTypeException}.
  *
  * <p>If the field is not a {@code ChronoField}, then the result of this method is obtained by
  * invoking {@code TemporalField.rangeRefinedBy(TemporalAccessor)} passing {@code this} as the
  * argument. Whether the range can be obtained is determined by the field.
  *
  * @param field the field to query the range for, not null
  * @return the range of valid values for the field, not null
  * @throws DateTimeException if the range for the field cannot be obtained
  * @throws UnsupportedTemporalTypeException if the field is not supported
  */
 @Override
 public ValueRange range(TemporalField field) {
   if (field == DAY_OF_WEEK) {
     return field.range();
   }
   return TemporalAccessor.super.range(field);
 }