code: public static HijrahDate of(int prolepticYear, int monthOfYear, int dayOfMonth) {
          return (prolepticYear >= 1) ?
              HijrahDate.of(HijrahEra.AH, prolepticYear, monthOfYear, dayOfMonth) :
              HijrahDate.of(HijrahEra.BEFORE_AH, 1 - prolepticYear, monthOfYear, dayOfMonth);
      }
docs: Obtains an instance of {@code HijrahDate} from the Hijrah era year,
  month-of-year and day-of-month. This uses the Hijrah era.
  
  @param prolepticYear  the proleptic year to represent in the Hijrah
  @param monthOfYear  the month-of-year to represent, from 1 to 12
  @param dayOfMonth  the day-of-month to represent, from 1 to 30
  @return the Hijrah date, never null
  @throws IllegalCalendarFieldValueException if the value of any field is out of range
  @throws InvalidCalendarFieldException if the day-of-month is invalid for the month-year