import java.time.LocalDate;
import java.time.LocalTime;
import java.time.OffsetDateTime;
import java.time.ZoneId;
import java.time.ZoneOffset;
import java.time.ZonedDateTime;
class Main {
public static void main
(String[] args
) { ZoneId zone = ZoneId.of("America/New_York");
// Current date-time in America/New_York
System.
out.
println(ZonedDateTime.
now(zone
));
// A sample winter date-time in America/New_York
System.
out.
println(ZonedDateTime.
of(LocalDate.
of(2023, 01,
14), LocalTime.
of(10,
20,
30), zone
));
// A sample summer date-time in America/New_York
System.
out.
println(ZonedDateTime.
of(LocalDate.
of(2023, 06,
14), LocalTime.
of(10,
20,
30), zone
));
// Current OffsetDateTime with an offset of 00:00 hours (UTC time)
System.
out.
println(OffsetDateTime.
now(ZoneOffset.
UTC));
// Current OffsetDateTime with an offset of 05:30 hours
OffsetDateTime odt = OffsetDateTime.now(ZoneOffset.of("+05:30"));
// The same OffsetDateTime converted to UTC time (will be 05:30 less)
System.
out.
println(odt.
withOffsetSameInstant(ZoneOffset.
UTC)); }
}
aW1wb3J0IGphdmEudGltZS5Mb2NhbERhdGU7CmltcG9ydCBqYXZhLnRpbWUuTG9jYWxUaW1lOwppbXBvcnQgamF2YS50aW1lLk9mZnNldERhdGVUaW1lOwppbXBvcnQgamF2YS50aW1lLlpvbmVJZDsKaW1wb3J0IGphdmEudGltZS5ab25lT2Zmc2V0OwppbXBvcnQgamF2YS50aW1lLlpvbmVkRGF0ZVRpbWU7CgpjbGFzcyBNYWluIHsKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHsKICAgICAgICBab25lSWQgem9uZSA9IFpvbmVJZC5vZigiQW1lcmljYS9OZXdfWW9yayIpOwoKICAgICAgICAvLyBDdXJyZW50IGRhdGUtdGltZSBpbiBBbWVyaWNhL05ld19Zb3JrCiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKFpvbmVkRGF0ZVRpbWUubm93KHpvbmUpKTsKCiAgICAgICAgLy8gQSBzYW1wbGUgd2ludGVyIGRhdGUtdGltZSBpbiBBbWVyaWNhL05ld19Zb3JrCiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKFpvbmVkRGF0ZVRpbWUub2YoTG9jYWxEYXRlLm9mKDIwMjMsIDAxLCAxNCksIExvY2FsVGltZS5vZigxMCwgMjAsIDMwKSwgem9uZSkpOwoKICAgICAgICAvLyBBIHNhbXBsZSBzdW1tZXIgZGF0ZS10aW1lIGluIEFtZXJpY2EvTmV3X1lvcmsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oWm9uZWREYXRlVGltZS5vZihMb2NhbERhdGUub2YoMjAyMywgMDYsIDE0KSwgTG9jYWxUaW1lLm9mKDEwLCAyMCwgMzApLCB6b25lKSk7CgogICAgICAgIC8vIEN1cnJlbnQgT2Zmc2V0RGF0ZVRpbWUgd2l0aCBhbiBvZmZzZXQgb2YgMDA6MDAgaG91cnMgKFVUQyB0aW1lKQogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihPZmZzZXREYXRlVGltZS5ub3coWm9uZU9mZnNldC5VVEMpKTsKCiAgICAgICAgLy8gQ3VycmVudCBPZmZzZXREYXRlVGltZSB3aXRoIGFuIG9mZnNldCBvZiAwNTozMCBob3VycwogICAgICAgIE9mZnNldERhdGVUaW1lIG9kdCA9IE9mZnNldERhdGVUaW1lLm5vdyhab25lT2Zmc2V0Lm9mKCIrMDU6MzAiKSk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKG9kdCk7CiAgICAgICAgLy8gVGhlIHNhbWUgT2Zmc2V0RGF0ZVRpbWUgY29udmVydGVkIHRvIFVUQyB0aW1lICh3aWxsIGJlIDA1OjMwIGxlc3MpCiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKG9kdC53aXRoT2Zmc2V0U2FtZUluc3RhbnQoWm9uZU9mZnNldC5VVEMpKTsKICAgIH0KfQ==