/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
import java.time.* ;
import java.time.zone.* ;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
LocalDateTime ldt = LocalDateTime.parse( "2021-09-16T12:00" ) ;
ZonedDateTime zdtAbidjan = ldt.atZone( ZoneId.of( "Africa/Abidjan" ) ) ;
ZonedDateTime zdtLondon = zdtAbidjan.withZoneSameInstant( ZoneId.of( "Europe/London" ) ) ;
Instant instant = zdtAbidjan.toInstant() ; // Adjust to UTC by extracting an `Instant` object.
System.
out.
println( "ldt: " + ldt
) ; System.
out.
println( "zdtAbidjan: " + zdtAbidjan
) ; System.
out.
println( "zdtLondon: " + zdtLondon
) ; System.
out.
println( "instant: " + instant
) ;
ZoneId z = ZoneId.of( "Africa/Abidjan" ) ;
ZoneRules rules = z.getRules() ;
ZoneOffset offset = rules.getOffset( LocalDateTime.parse( "2021-09-16T12:00" ) ) ;
int offsetInSeconds = offset.getTotalSeconds() ;
System.
out.
println( "rules: " + rules
) ; System.
out.
println( "offset: " + offset
) ; System.
out.
println( "offsetInSeconds: " + offsetInSeconds
) ; }
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgppbXBvcnQgamF2YS50aW1lLiogOwppbXBvcnQgamF2YS50aW1lLnpvbmUuKiA7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCUxvY2FsRGF0ZVRpbWUgbGR0ID0gTG9jYWxEYXRlVGltZS5wYXJzZSggIjIwMjEtMDktMTZUMTI6MDAiICkgOwoJCVpvbmVkRGF0ZVRpbWUgemR0QWJpZGphbiA9IGxkdC5hdFpvbmUoIFpvbmVJZC5vZiggIkFmcmljYS9BYmlkamFuIiApICkgOwoJCVpvbmVkRGF0ZVRpbWUgemR0TG9uZG9uID0gemR0QWJpZGphbi53aXRoWm9uZVNhbWVJbnN0YW50KCBab25lSWQub2YoICJFdXJvcGUvTG9uZG9uIiApICkgOwoJCUluc3RhbnQgaW5zdGFudCA9IHpkdEFiaWRqYW4udG9JbnN0YW50KCkgOyAgLy8gQWRqdXN0IHRvIFVUQyBieSBleHRyYWN0aW5nIGFuIGBJbnN0YW50YCBvYmplY3QuCgoJCVN5c3RlbS5vdXQucHJpbnRsbiggImxkdDogIiArIGxkdCApIDsKCQlTeXN0ZW0ub3V0LnByaW50bG4oICJ6ZHRBYmlkamFuOiAiICsgemR0QWJpZGphbiApIDsKCQlTeXN0ZW0ub3V0LnByaW50bG4oICJ6ZHRMb25kb246ICIgKyB6ZHRMb25kb24gKSA7CgkJU3lzdGVtLm91dC5wcmludGxuKCAiaW5zdGFudDogIiArIGluc3RhbnQgKSA7CgkJCgkJWm9uZUlkIHogPSBab25lSWQub2YoICJBZnJpY2EvQWJpZGphbiIgKSA7CgkJWm9uZVJ1bGVzIHJ1bGVzID0gei5nZXRSdWxlcygpIDsKCQlab25lT2Zmc2V0IG9mZnNldCA9IHJ1bGVzLmdldE9mZnNldCggTG9jYWxEYXRlVGltZS5wYXJzZSggIjIwMjEtMDktMTZUMTI6MDAiICkgKSA7CgkJaW50IG9mZnNldEluU2Vjb25kcyA9IG9mZnNldC5nZXRUb3RhbFNlY29uZHMoKSA7CgkJCgkJU3lzdGVtLm91dC5wcmludGxuKCAicnVsZXM6ICIgKyBydWxlcyApIDsKCQlTeXN0ZW0ub3V0LnByaW50bG4oICJvZmZzZXQ6ICIgKyBvZmZzZXQgKSA7CgkJU3lzdGVtLm91dC5wcmludGxuKCAib2Zmc2V0SW5TZWNvbmRzOiAiICsgb2Zmc2V0SW5TZWNvbmRzICkgOwoJfQp9