@Override
  public boolean isBefore(ChronoLocalDateTime<?> other) {

    long thisEpDay = getDate().toEpochDay();
    long otherEpDay = other.getDate().toEpochDay();
    return thisEpDay < otherEpDay
        || (thisEpDay == otherEpDay && getTime().toNanoOfDay() < other.getTime().toNanoOfDay());
  }