import java.time.LocalDate;
import java.time.LocalTime;
import java.time.Month;
import java.time.ZoneId;
import java.time.ZonedDateTime;
class Main {
public static void main
(String[] args
) { // Using the default ZoneId set to your JVM i.e. it is the same as
// ZonedDateTime.now(ZoneId.systemDefault())
ZonedDateTime nowInDefaultZone = ZonedDateTime.now();
System.
out.
println(nowInDefaultZone
);
// Using a specified ZoneId. Note: India does not observe DST
ZonedDateTime nowInIndia = ZonedDateTime.now(ZoneId.of("Asia/Kolkata"));
System.
out.
println(nowInIndia
);
// ZoneId.of("America/New_York") observes DST
ZoneId zoneId = ZoneId.of("America/New_York");
// A date-time in ZoneId.of("America/New_York") during DST
ZonedDateTime zdtNyDuringDST = ZonedDateTime.of(
LocalDate.of(2024, Month.DECEMBER, 20),
LocalTime.MIN,
zoneId);
System.
out.
println(zdtNyDuringDST
);
// A date-time in ZoneId.of("America/New_York") outside DST period
ZonedDateTime zdtNyOutsideDST = ZonedDateTime.of(
LocalDate.of(2025, Month.MAY, 20),
LocalTime.MIN,
zoneId);
System.
out.
println(zdtNyOutsideDST
); }
}
aW1wb3J0IGphdmEudGltZS5Mb2NhbERhdGU7CmltcG9ydCBqYXZhLnRpbWUuTG9jYWxUaW1lOwppbXBvcnQgamF2YS50aW1lLk1vbnRoOwppbXBvcnQgamF2YS50aW1lLlpvbmVJZDsKaW1wb3J0IGphdmEudGltZS5ab25lZERhdGVUaW1lOwoKY2xhc3MgTWFpbiB7CiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB7CiAgICAgICAgLy8gVXNpbmcgdGhlIGRlZmF1bHQgWm9uZUlkIHNldCB0byB5b3VyIEpWTSBpLmUuIGl0IGlzIHRoZSBzYW1lIGFzCiAgICAgICAgLy8gWm9uZWREYXRlVGltZS5ub3coWm9uZUlkLnN5c3RlbURlZmF1bHQoKSkKICAgICAgICBab25lZERhdGVUaW1lIG5vd0luRGVmYXVsdFpvbmUgPSBab25lZERhdGVUaW1lLm5vdygpOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihub3dJbkRlZmF1bHRab25lKTsKCiAgICAgICAgLy8gVXNpbmcgYSBzcGVjaWZpZWQgWm9uZUlkLiBOb3RlOiBJbmRpYSBkb2VzIG5vdCBvYnNlcnZlIERTVAogICAgICAgIFpvbmVkRGF0ZVRpbWUgbm93SW5JbmRpYSA9IFpvbmVkRGF0ZVRpbWUubm93KFpvbmVJZC5vZigiQXNpYS9Lb2xrYXRhIikpOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihub3dJbkluZGlhKTsKCiAgICAgICAgLy8gWm9uZUlkLm9mKCJBbWVyaWNhL05ld19Zb3JrIikgb2JzZXJ2ZXMgRFNUCiAgICAgICAgWm9uZUlkIHpvbmVJZCA9IFpvbmVJZC5vZigiQW1lcmljYS9OZXdfWW9yayIpOwoKICAgICAgICAvLyBBIGRhdGUtdGltZSBpbiBab25lSWQub2YoIkFtZXJpY2EvTmV3X1lvcmsiKSBkdXJpbmcgRFNUCiAgICAgICAgWm9uZWREYXRlVGltZSB6ZHROeUR1cmluZ0RTVCA9IFpvbmVkRGF0ZVRpbWUub2YoCiAgICAgICAgICAgICAgICBMb2NhbERhdGUub2YoMjAyNCwgTW9udGguREVDRU1CRVIsIDIwKSwKICAgICAgICAgICAgICAgIExvY2FsVGltZS5NSU4sCiAgICAgICAgICAgICAgICB6b25lSWQpOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbih6ZHROeUR1cmluZ0RTVCk7CgogICAgICAgIC8vIEEgZGF0ZS10aW1lIGluIFpvbmVJZC5vZigiQW1lcmljYS9OZXdfWW9yayIpIG91dHNpZGUgRFNUIHBlcmlvZAogICAgICAgIFpvbmVkRGF0ZVRpbWUgemR0TnlPdXRzaWRlRFNUID0gWm9uZWREYXRlVGltZS5vZigKICAgICAgICAgICAgICAgIExvY2FsRGF0ZS5vZigyMDI1LCBNb250aC5NQVksIDIwKSwKICAgICAgICAgICAgICAgIExvY2FsVGltZS5NSU4sCiAgICAgICAgICAgICAgICB6b25lSWQpOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbih6ZHROeU91dHNpZGVEU1QpOwogICAgfQp9