/* package whatever; // don't place package name! */
import java.util.* ;
import java.lang.* ;
import java.io.* ;
import java.time.* ;
import java.time.format.* ;
import java.time.temporal.* ;
import java.time.chrono.* ;
import java.time.zone.* ;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
LocalDateTime
.parse (
"2020-02-21 16:36:30.072" .replace ( " " , "T" )
) // Returns a `LocalDateTime` object. *Not* a moment, *not* a point on the timeline. Just a date and a time-of-day, nothing more. Lacks context of a time zone or offset-from-UTC.
.atZone ( // Lending context to our `LocalDateTime` object to determine a moment by assigning a time zone.
ZoneId.of ( "Asia/Kolkata" ) // Currently using an offset of five and a half hours ahead of UTC.
) // Returns a `ZonedDateTime` object.
.format ( // Generates text representing the value of the `ZonedDateTime` object.
DateTimeFormatter.ISO_OFFSET_DATE_TIME // Pre-defined formatter. No need to specify your own formatting pattern. Your desired format complies with the ISO 8601 standard.
) // Returns a `String`.
;
System .
out .
println ( "output: " + output
) ; }
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgppbXBvcnQgamF2YS50aW1lLiogOwppbXBvcnQgamF2YS50aW1lLmZvcm1hdC4qIDsKaW1wb3J0IGphdmEudGltZS50ZW1wb3JhbC4qIDsKaW1wb3J0IGphdmEudGltZS5jaHJvbm8uKiA7CmltcG9ydCBqYXZhLnRpbWUuem9uZS4qIDsKCi8qIE5hbWUgb2YgdGhlIGNsYXNzIGhhcyB0byBiZSAiTWFpbiIgb25seSBpZiB0aGUgY2xhc3MgaXMgcHVibGljLiAqLwpjbGFzcyBJZGVvbmUKewoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uCgl7CgkJU3RyaW5nIG91dHB1dCAgPSAKCQlMb2NhbERhdGVUaW1lCgkJLnBhcnNlKAoJCSAgICAiMjAyMC0wMi0yMSAxNjozNjozMC4wNzIiLnJlcGxhY2UoICIgIiAsICJUIiApCgkJKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFJldHVybnMgYSBgTG9jYWxEYXRlVGltZWAgb2JqZWN0LiAqTm90KiBhIG1vbWVudCwgKm5vdCogYSBwb2ludCBvbiB0aGUgdGltZWxpbmUuIEp1c3QgYSBkYXRlIGFuZCBhIHRpbWUtb2YtZGF5LCBub3RoaW5nIG1vcmUuIExhY2tzIGNvbnRleHQgb2YgYSB0aW1lIHpvbmUgb3Igb2Zmc2V0LWZyb20tVVRDLgoJCS5hdFpvbmUoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBMZW5kaW5nIGNvbnRleHQgdG8gb3VyIGBMb2NhbERhdGVUaW1lYCBvYmplY3QgdG8gZGV0ZXJtaW5lIGEgbW9tZW50IGJ5IGFzc2lnbmluZyBhIHRpbWUgem9uZS4KCQkgICAgWm9uZUlkLm9mKCAiQXNpYS9Lb2xrYXRhIiApICAgICAgICAgICAgICAgICAgICAgLy8gQ3VycmVudGx5IHVzaW5nIGFuIG9mZnNldCBvZiBmaXZlIGFuZCBhIGhhbGYgaG91cnMgYWhlYWQgb2YgVVRDLgoJCSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBSZXR1cm5zIGEgYFpvbmVkRGF0ZVRpbWVgIG9iamVjdC4KCQkuZm9ybWF0KCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gR2VuZXJhdGVzIHRleHQgcmVwcmVzZW50aW5nIHRoZSB2YWx1ZSBvZiB0aGUgYFpvbmVkRGF0ZVRpbWVgIG9iamVjdC4KCQkgICAgRGF0ZVRpbWVGb3JtYXR0ZXIuSVNPX09GRlNFVF9EQVRFX1RJTUUgICAgICAgICAgLy8gUHJlLWRlZmluZWQgZm9ybWF0dGVyLiBObyBuZWVkIHRvIHNwZWNpZnkgeW91ciBvd24gZm9ybWF0dGluZyBwYXR0ZXJuLiBZb3VyIGRlc2lyZWQgZm9ybWF0IGNvbXBsaWVzIHdpdGggdGhlIElTTyA4NjAxIHN0YW5kYXJkLgoJCSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBSZXR1cm5zIGEgYFN0cmluZ2AuIAoJCTsKCQkKCQlTeXN0ZW0ub3V0LnByaW50bG4oICJvdXRwdXQ6ICIgKyBvdXRwdXQgKSA7Cgl9Cn0=