code: public static ZonedDateTime toZonedDateTime(Calendar calendar) {
          Instant instant = Instant.ofEpochMilli(calendar.getTimeInMillis());
          ZoneId zone = toZoneId(calendar.getTimeZone());
          return ZonedDateTime.ofInstant(instant, zone);
      }
docs: Converts a {@code Calendar} to a {@code ZonedDateTime}.
  <p>
  Note that {@code GregorianCalendar} supports a Julian-Gregorian cutover
  date and {@code ZonedDateTime} does not so some differences will occur.
  
  @param calendar  the calendar, not null
  @return the instant, not null