- /* package whatever; // don't place package name! */ 
-   
- import java.util.*; 
- import java.lang.*; 
- import java.io.*; 
-   
- import java.time.* ; 
- import java.time.temporal.* ; 
- import java.time.format.* ; 
-   
- /* Name of the class has to be "Main" only if the class is public. */ 
- class Ideone 
- { 
- 	{ 
-   
- String-  input2017  = "2017-01-30T13:00:00+0000"- . replace( "+0000"-  ,  "+00:00" ) ;  // Workaround Java 8 bug where omitted colon in offset-from-UTC fails to parse. Fixed in Java 9.
 
- OffsetDateTime odt2017 = OffsetDateTime.parse( input2017 ) ;  
-   
- String-  input2018  = "2018-06-23T16:00:00+0000"- . replace( "+0000"-  ,  "+00:00" ) ;  // Workaround Java 8 bug where omitted colon in offset-from-UTC fails to parse. Fixed in Java 9.
 
- OffsetDateTime odt2018 = OffsetDateTime.parse( input2018 ) ;  
-   
- ZoneId z = ZoneId.of( "Europe/London" ) ;  
- ZonedDateTime zdt2017 = odt2017.atZoneSameInstant( z ) ; 
- ZonedDateTime zdt2018 = odt2018.atZoneSameInstant( z ) ; 
-   
- System- . out- . println( "input2017: " +-  input2017  ) ;
 
- System- . out- . println( "odt2017: " +-  odt2017  ) ;
 
- System- . out- . println( "zdt2017: " +-  zdt2017  ) ;
 
- System- . out- . println( "" ) ;  // Blank line.
 
-   
- System- . out- . println( "input2018: " +-  input2018  ) ;
 
- System- . out- . println( "odt2018: " +-  odt2018  ) ;
 
- System- . out- . println( "zdt2018: " +-  zdt2018  ) ;
 
-   
-   
- 	} 
- } 
				LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgppbXBvcnQgamF2YS50aW1lLiogOwppbXBvcnQgamF2YS50aW1lLnRlbXBvcmFsLiogOwppbXBvcnQgamF2YS50aW1lLmZvcm1hdC4qIDsKCi8qIE5hbWUgb2YgdGhlIGNsYXNzIGhhcyB0byBiZSAiTWFpbiIgb25seSBpZiB0aGUgY2xhc3MgaXMgcHVibGljLiAqLwpjbGFzcyBJZGVvbmUKewoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uCgl7CgpTdHJpbmcgaW5wdXQyMDE3ID0gIjIwMTctMDEtMzBUMTM6MDA6MDArMDAwMCIucmVwbGFjZSggIiswMDAwIiAsICIrMDA6MDAiICkgOyAgLy8gV29ya2Fyb3VuZCBKYXZhIDggYnVnIHdoZXJlIG9taXR0ZWQgY29sb24gaW4gb2Zmc2V0LWZyb20tVVRDIGZhaWxzIHRvIHBhcnNlLiBGaXhlZCBpbiBKYXZhIDkuCk9mZnNldERhdGVUaW1lIG9kdDIwMTcgPSBPZmZzZXREYXRlVGltZS5wYXJzZSggaW5wdXQyMDE3ICkgOyAKClN0cmluZyBpbnB1dDIwMTggPSAiMjAxOC0wNi0yM1QxNjowMDowMCswMDAwIi5yZXBsYWNlKCAiKzAwMDAiICwgIiswMDowMCIgKSA7ICAvLyBXb3JrYXJvdW5kIEphdmEgOCBidWcgd2hlcmUgb21pdHRlZCBjb2xvbiBpbiBvZmZzZXQtZnJvbS1VVEMgZmFpbHMgdG8gcGFyc2UuIEZpeGVkIGluIEphdmEgOS4KT2Zmc2V0RGF0ZVRpbWUgb2R0MjAxOCA9IE9mZnNldERhdGVUaW1lLnBhcnNlKCBpbnB1dDIwMTggKSA7IAoKWm9uZUlkIHogPSBab25lSWQub2YoICJFdXJvcGUvTG9uZG9uIiApIDsgClpvbmVkRGF0ZVRpbWUgemR0MjAxNyA9IG9kdDIwMTcuYXRab25lU2FtZUluc3RhbnQoIHogKSA7ClpvbmVkRGF0ZVRpbWUgemR0MjAxOCA9IG9kdDIwMTguYXRab25lU2FtZUluc3RhbnQoIHogKSA7CgpTeXN0ZW0ub3V0LnByaW50bG4oICJpbnB1dDIwMTc6ICIgKyBpbnB1dDIwMTcgKSA7ClN5c3RlbS5vdXQucHJpbnRsbiggIm9kdDIwMTc6ICIgKyBvZHQyMDE3ICkgOwpTeXN0ZW0ub3V0LnByaW50bG4oICJ6ZHQyMDE3OiAiICsgemR0MjAxNyApIDsKU3lzdGVtLm91dC5wcmludGxuKCAiIiApIDsgIC8vIEJsYW5rIGxpbmUuCgpTeXN0ZW0ub3V0LnByaW50bG4oICJpbnB1dDIwMTg6ICIgKyBpbnB1dDIwMTggKSA7ClN5c3RlbS5vdXQucHJpbnRsbiggIm9kdDIwMTg6ICIgKyBvZHQyMDE4ICkgOwpTeXN0ZW0ub3V0LnByaW50bG4oICJ6ZHQyMDE4OiAiICsgemR0MjAxOCApIDsKCgoJfQp9