public abstract class java.time.ZoneId implements java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: java.time.ZoneId
  super_class: java.lang.Object
{
  public static final java.util.Map<java.lang.String, java.lang.String> SHORT_IDS;
    descriptor: Ljava/util/Map;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;

  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 8352817235686

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 225
            new java.util.HashMap
            dup
            bipush 64
            invokespecial java.util.HashMap.<init>:(I)V
            astore 0 /* map */
        start local 0 // java.util.Map map
         1: .line 226
            aload 0 /* map */
            ldc "ACT"
            ldc "Australia/Darwin"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 227
            aload 0 /* map */
            ldc "AET"
            ldc "Australia/Sydney"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 228
            aload 0 /* map */
            ldc "AGT"
            ldc "America/Argentina/Buenos_Aires"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 229
            aload 0 /* map */
            ldc "ART"
            ldc "Africa/Cairo"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 230
            aload 0 /* map */
            ldc "AST"
            ldc "America/Anchorage"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 231
            aload 0 /* map */
            ldc "BET"
            ldc "America/Sao_Paulo"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 232
            aload 0 /* map */
            ldc "BST"
            ldc "Asia/Dhaka"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 233
            aload 0 /* map */
            ldc "CAT"
            ldc "Africa/Harare"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 234
            aload 0 /* map */
            ldc "CNT"
            ldc "America/St_Johns"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 235
            aload 0 /* map */
            ldc "CST"
            ldc "America/Chicago"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 236
            aload 0 /* map */
            ldc "CTT"
            ldc "Asia/Shanghai"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 237
            aload 0 /* map */
            ldc "EAT"
            ldc "Africa/Addis_Ababa"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 238
            aload 0 /* map */
            ldc "ECT"
            ldc "Europe/Paris"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 239
            aload 0 /* map */
            ldc "IET"
            ldc "America/Indiana/Indianapolis"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        15: .line 240
            aload 0 /* map */
            ldc "IST"
            ldc "Asia/Kolkata"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 241
            aload 0 /* map */
            ldc "JST"
            ldc "Asia/Tokyo"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        17: .line 242
            aload 0 /* map */
            ldc "MIT"
            ldc "Pacific/Apia"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 243
            aload 0 /* map */
            ldc "NET"
            ldc "Asia/Yerevan"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        19: .line 244
            aload 0 /* map */
            ldc "NST"
            ldc "Pacific/Auckland"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 245
            aload 0 /* map */
            ldc "PLT"
            ldc "Asia/Karachi"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        21: .line 246
            aload 0 /* map */
            ldc "PNT"
            ldc "America/Phoenix"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        22: .line 247
            aload 0 /* map */
            ldc "PRT"
            ldc "America/Puerto_Rico"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        23: .line 248
            aload 0 /* map */
            ldc "PST"
            ldc "America/Los_Angeles"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        24: .line 249
            aload 0 /* map */
            ldc "SST"
            ldc "Pacific/Guadalcanal"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        25: .line 250
            aload 0 /* map */
            ldc "VST"
            ldc "Asia/Ho_Chi_Minh"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        26: .line 251
            aload 0 /* map */
            ldc "EST"
            ldc "-05:00"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        27: .line 252
            aload 0 /* map */
            ldc "MST"
            ldc "-07:00"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        28: .line 253
            aload 0 /* map */
            ldc "HST"
            ldc "-10:00"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        29: .line 254
            aload 0 /* map */
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
            putstatic java.time.ZoneId.SHORT_IDS:Ljava/util/Map;
        end local 0 // java.util.Map map
        30: .line 259
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1   30     0   map  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;

  public static java.time.ZoneId systemDefault();
    descriptor: ()Ljava/time/ZoneId;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 274
            invokestatic java.util.TimeZone.getDefault:()Ljava/util/TimeZone;
            invokevirtual java.util.TimeZone.toZoneId:()Ljava/time/ZoneId;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.util.Set<java.lang.String> getAvailableZoneIds();
    descriptor: ()Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 290
            invokestatic java.time.zone.ZoneRulesProvider.getAvailableZoneIds:()Ljava/util/Set;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Ljava/util/Set<Ljava/lang/String;>;

  public static java.time.ZoneId of(java.lang.String, java.util.Map<java.lang.String, java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/util/Map;)Ljava/time/ZoneId;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.lang.String zoneId
        start local 1 // java.util.Map aliasMap
         0: .line 311
            aload 0 /* zoneId */
            ldc "zoneId"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 312
            aload 1 /* aliasMap */
            ldc "aliasMap"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         2: .line 313
            aload 1 /* aliasMap */
            aload 0 /* zoneId */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* id */
        start local 2 // java.lang.String id
         3: .line 314
            aload 2 /* id */
            ifnull 4
            aload 2 /* id */
            goto 5
      StackMap locals: java.lang.String
      StackMap stack:
         4: aload 0 /* zoneId */
      StackMap locals:
      StackMap stack: java.lang.String
         5: astore 2 /* id */
         6: .line 315
            aload 2 /* id */
            invokestatic java.time.ZoneId.of:(Ljava/lang/String;)Ljava/time/ZoneId;
            areturn
        end local 2 // java.lang.String id
        end local 1 // java.util.Map aliasMap
        end local 0 // java.lang.String zoneId
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0    zoneId  Ljava/lang/String;
            0    7     1  aliasMap  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            3    7     2        id  Ljava/lang/String;
    Signature: (Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)Ljava/time/ZoneId;
    MethodParameters:
          Name  Flags
      zoneId    
      aliasMap  

  public static java.time.ZoneId of(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/time/ZoneId;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String zoneId
         0: .line 359
            aload 0 /* zoneId */
            iconst_1
            invokestatic java.time.ZoneId.of:(Ljava/lang/String;Z)Ljava/time/ZoneId;
            areturn
        end local 0 // java.lang.String zoneId
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  zoneId  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      zoneId  

  public static java.time.ZoneId ofOffset(java.lang.String, java.time.ZoneOffset);
    descriptor: (Ljava/lang/String;Ljava/time/ZoneOffset;)Ljava/time/ZoneId;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.lang.String prefix
        start local 1 // java.time.ZoneOffset offset
         0: .line 376
            aload 0 /* prefix */
            ldc "prefix"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 377
            aload 1 /* offset */
            ldc "offset"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         2: .line 378
            aload 0 /* prefix */
            invokevirtual java.lang.String.length:()I
            ifne 4
         3: .line 379
            aload 1 /* offset */
            areturn
         4: .line 382
      StackMap locals:
      StackMap stack:
            aload 0 /* prefix */
            ldc "GMT"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 6
            aload 0 /* prefix */
            ldc "UTC"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 6
            aload 0 /* prefix */
            ldc "UT"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 6
         5: .line 383
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "prefix should be GMT, UTC or UT, is: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* prefix */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 386
      StackMap locals:
      StackMap stack:
            aload 1 /* offset */
            invokevirtual java.time.ZoneOffset.getTotalSeconds:()I
            ifeq 8
         7: .line 387
            aload 0 /* prefix */
            aload 1 /* offset */
            invokevirtual java.time.ZoneOffset.getId:()Ljava/lang/String;
            invokevirtual java.lang.String.concat:(Ljava/lang/String;)Ljava/lang/String;
            astore 0 /* prefix */
         8: .line 389
      StackMap locals:
      StackMap stack:
            new java.time.ZoneRegion
            dup
            aload 0 /* prefix */
            aload 1 /* offset */
            invokevirtual java.time.ZoneOffset.getRules:()Ljava/time/zone/ZoneRules;
            invokespecial java.time.ZoneRegion.<init>:(Ljava/lang/String;Ljava/time/zone/ZoneRules;)V
            areturn
        end local 1 // java.time.ZoneOffset offset
        end local 0 // java.lang.String prefix
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0  prefix  Ljava/lang/String;
            0    9     1  offset  Ljava/time/ZoneOffset;
    MethodParameters:
        Name  Flags
      prefix  
      offset  

  static java.time.ZoneId of(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Ljava/time/ZoneId;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String zoneId
        start local 1 // boolean checkAvailable
         0: .line 403
            aload 0 /* zoneId */
            ldc "zoneId"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 404
            aload 0 /* zoneId */
            invokevirtual java.lang.String.length:()I
            iconst_1
            if_icmple 2
            aload 0 /* zoneId */
            ldc "+"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 2
            aload 0 /* zoneId */
            ldc "-"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 3
         2: .line 405
      StackMap locals:
      StackMap stack:
            aload 0 /* zoneId */
            invokestatic java.time.ZoneOffset.of:(Ljava/lang/String;)Ljava/time/ZoneOffset;
            areturn
         3: .line 406
      StackMap locals:
      StackMap stack:
            aload 0 /* zoneId */
            ldc "UTC"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 4
            aload 0 /* zoneId */
            ldc "GMT"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 5
         4: .line 407
      StackMap locals:
      StackMap stack:
            aload 0 /* zoneId */
            iconst_3
            iload 1 /* checkAvailable */
            invokestatic java.time.ZoneId.ofWithPrefix:(Ljava/lang/String;IZ)Ljava/time/ZoneId;
            areturn
         5: .line 408
      StackMap locals:
      StackMap stack:
            aload 0 /* zoneId */
            ldc "UT"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 7
         6: .line 409
            aload 0 /* zoneId */
            iconst_2
            iload 1 /* checkAvailable */
            invokestatic java.time.ZoneId.ofWithPrefix:(Ljava/lang/String;IZ)Ljava/time/ZoneId;
            areturn
         7: .line 411
      StackMap locals:
      StackMap stack:
            aload 0 /* zoneId */
            iload 1 /* checkAvailable */
            invokestatic java.time.ZoneRegion.ofId:(Ljava/lang/String;Z)Ljava/time/ZoneRegion;
            areturn
        end local 1 // boolean checkAvailable
        end local 0 // java.lang.String zoneId
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    8     0          zoneId  Ljava/lang/String;
            0    8     1  checkAvailable  Z
    MethodParameters:
                Name  Flags
      zoneId          
      checkAvailable  

  private static java.time.ZoneId ofWithPrefix(java.lang.String, int, boolean);
    descriptor: (Ljava/lang/String;IZ)Ljava/time/ZoneId;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // java.lang.String zoneId
        start local 1 // int prefixLength
        start local 2 // boolean checkAvailable
         0: .line 423
            aload 0 /* zoneId */
            iconst_0
            iload 1 /* prefixLength */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 3 /* prefix */
        start local 3 // java.lang.String prefix
         1: .line 424
            aload 0 /* zoneId */
            invokevirtual java.lang.String.length:()I
            iload 1 /* prefixLength */
            if_icmpne 3
         2: .line 425
            aload 3 /* prefix */
            getstatic java.time.ZoneOffset.UTC:Ljava/time/ZoneOffset;
            invokestatic java.time.ZoneId.ofOffset:(Ljava/lang/String;Ljava/time/ZoneOffset;)Ljava/time/ZoneId;
            areturn
         3: .line 427
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* zoneId */
            iload 1 /* prefixLength */
            invokevirtual java.lang.String.charAt:(I)C
            bipush 43
            if_icmpeq 5
            aload 0 /* zoneId */
            iload 1 /* prefixLength */
            invokevirtual java.lang.String.charAt:(I)C
            bipush 45
            if_icmpeq 5
         4: .line 428
            aload 0 /* zoneId */
            iload 2 /* checkAvailable */
            invokestatic java.time.ZoneRegion.ofId:(Ljava/lang/String;Z)Ljava/time/ZoneRegion;
            areturn
         5: .line 431
      StackMap locals:
      StackMap stack:
            aload 0 /* zoneId */
            iload 1 /* prefixLength */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokestatic java.time.ZoneOffset.of:(Ljava/lang/String;)Ljava/time/ZoneOffset;
            astore 4 /* offset */
        start local 4 // java.time.ZoneOffset offset
         6: .line 432
            aload 4 /* offset */
            getstatic java.time.ZoneOffset.UTC:Ljava/time/ZoneOffset;
            if_acmpne 9
         7: .line 433
            aload 3 /* prefix */
            aload 4 /* offset */
            invokestatic java.time.ZoneId.ofOffset:(Ljava/lang/String;Ljava/time/ZoneOffset;)Ljava/time/ZoneId;
         8: areturn
         9: .line 435
      StackMap locals: java.time.ZoneOffset
      StackMap stack:
            aload 3 /* prefix */
            aload 4 /* offset */
            invokestatic java.time.ZoneId.ofOffset:(Ljava/lang/String;Ljava/time/ZoneOffset;)Ljava/time/ZoneId;
        10: areturn
        end local 4 // java.time.ZoneOffset offset
        11: .line 436
      StackMap locals: java.lang.String int int java.lang.String
      StackMap stack: java.time.DateTimeException
            astore 4 /* ex */
        start local 4 // java.time.DateTimeException ex
        12: .line 437
            new java.time.DateTimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid ID for offset-based ZoneId: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* zoneId */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 4 /* ex */
            invokespecial java.time.DateTimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.time.DateTimeException ex
        end local 3 // java.lang.String prefix
        end local 2 // boolean checkAvailable
        end local 1 // int prefixLength
        end local 0 // java.lang.String zoneId
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   13     0          zoneId  Ljava/lang/String;
            0   13     1    prefixLength  I
            0   13     2  checkAvailable  Z
            1   13     3          prefix  Ljava/lang/String;
            6   11     4          offset  Ljava/time/ZoneOffset;
           12   13     4              ex  Ljava/time/DateTimeException;
      Exception table:
        from    to  target  type
           5     8      11  Class java.time.DateTimeException
           9    10      11  Class java.time.DateTimeException
    MethodParameters:
                Name  Flags
      zoneId          
      prefixLength    
      checkAvailable  

  public static java.time.ZoneId from(java.time.temporal.TemporalAccessor);
    descriptor: (Ljava/time/temporal/TemporalAccessor;)Ljava/time/ZoneId;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.time.temporal.TemporalAccessor temporal
         0: .line 463
            aload 0 /* temporal */
            invokestatic java.time.temporal.TemporalQueries.zone:()Ljava/time/temporal/TemporalQuery;
            invokeinterface java.time.temporal.TemporalAccessor.query:(Ljava/time/temporal/TemporalQuery;)Ljava/lang/Object;
            checkcast java.time.ZoneId
            astore 1 /* obj */
        start local 1 // java.time.ZoneId obj
         1: .line 464
            aload 1 /* obj */
            ifnonnull 5
         2: .line 465
            new java.time.DateTimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unable to obtain ZoneId from TemporalAccessor: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         3: .line 466
            aload 0 /* temporal */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " of type "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* temporal */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 465
            invokespecial java.time.DateTimeException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 468
      StackMap locals: java.time.ZoneId
      StackMap stack:
            aload 1 /* obj */
            areturn
        end local 1 // java.time.ZoneId obj
        end local 0 // java.time.temporal.TemporalAccessor temporal
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0  temporal  Ljava/time/temporal/TemporalAccessor;
            1    6     1       obj  Ljava/time/ZoneId;
    MethodParameters:
          Name  Flags
      temporal  

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.time.ZoneId this
         0: .line 475
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 476
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc Ljava/time/ZoneOffset;
            if_acmpeq 3
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc Ljava/time/ZoneRegion;
            if_acmpeq 3
         2: .line 477
            new java.lang.AssertionError
            dup
            ldc "Invalid subclass"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 479
      StackMap locals: java.time.ZoneId
      StackMap stack:
            return
        end local 0 // java.time.ZoneId this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/time/ZoneId;

  public abstract java.lang.String getId();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public java.lang.String getDisplayName(java.time.format.TextStyle, java.util.Locale);
    descriptor: (Ljava/time/format/TextStyle;Ljava/util/Locale;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.time.ZoneId this
        start local 1 // java.time.format.TextStyle style
        start local 2 // java.util.Locale locale
         0: .line 508
            new java.time.format.DateTimeFormatterBuilder
            dup
            invokespecial java.time.format.DateTimeFormatterBuilder.<init>:()V
            aload 1 /* style */
            invokevirtual java.time.format.DateTimeFormatterBuilder.appendZoneText:(Ljava/time/format/TextStyle;)Ljava/time/format/DateTimeFormatterBuilder;
            aload 2 /* locale */
            invokevirtual java.time.format.DateTimeFormatterBuilder.toFormatter:(Ljava/util/Locale;)Ljava/time/format/DateTimeFormatter;
            aload 0 /* this */
            invokevirtual java.time.ZoneId.toTemporal:()Ljava/time/temporal/TemporalAccessor;
            invokevirtual java.time.format.DateTimeFormatter.format:(Ljava/time/temporal/TemporalAccessor;)Ljava/lang/String;
            areturn
        end local 2 // java.util.Locale locale
        end local 1 // java.time.format.TextStyle style
        end local 0 // java.time.ZoneId this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Ljava/time/ZoneId;
            0    1     1   style  Ljava/time/format/TextStyle;
            0    1     2  locale  Ljava/util/Locale;
    MethodParameters:
        Name  Flags
      style   
      locale  

  private java.time.temporal.TemporalAccessor toTemporal();
    descriptor: ()Ljava/time/temporal/TemporalAccessor;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.time.ZoneId this
         0: .line 524
            new java.time.ZoneId$1
            dup
            aload 0 /* this */
            invokespecial java.time.ZoneId$1.<init>:(Ljava/time/ZoneId;)V
            areturn
        end local 0 // java.time.ZoneId this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/time/ZoneId;

  public abstract java.time.zone.ZoneRules getRules();
    descriptor: ()Ljava/time/zone/ZoneRules;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public java.time.ZoneId normalized();
    descriptor: ()Ljava/time/ZoneId;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.time.ZoneId this
         0: .line 582
            aload 0 /* this */
            invokevirtual java.time.ZoneId.getRules:()Ljava/time/zone/ZoneRules;
            astore 1 /* rules */
        start local 1 // java.time.zone.ZoneRules rules
         1: .line 583
            aload 1 /* rules */
            invokevirtual java.time.zone.ZoneRules.isFixedOffset:()Z
            ifeq 5
         2: .line 584
            aload 1 /* rules */
            getstatic java.time.Instant.EPOCH:Ljava/time/Instant;
            invokevirtual java.time.zone.ZoneRules.getOffset:(Ljava/time/Instant;)Ljava/time/ZoneOffset;
         3: areturn
        end local 1 // java.time.zone.ZoneRules rules
         4: .line 586
      StackMap locals:
      StackMap stack: java.time.zone.ZoneRulesException
            pop
         5: .line 589
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 0 // java.time.ZoneId this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Ljava/time/ZoneId;
            1    4     1  rules  Ljava/time/zone/ZoneRules;
      Exception table:
        from    to  target  type
           0     3       4  Class java.time.zone.ZoneRulesException

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.time.ZoneId this
        start local 1 // java.lang.Object obj
         0: .line 603
            aload 0 /* this */
            aload 1 /* obj */
            if_acmpne 2
         1: .line 604
            iconst_1
            ireturn
         2: .line 606
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            instanceof java.time.ZoneId
            ifeq 5
         3: .line 607
            aload 1 /* obj */
            checkcast java.time.ZoneId
            astore 2 /* other */
        start local 2 // java.time.ZoneId other
         4: .line 608
            aload 0 /* this */
            invokevirtual java.time.ZoneId.getId:()Ljava/lang/String;
            aload 2 /* other */
            invokevirtual java.time.ZoneId.getId:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 2 // java.time.ZoneId other
         5: .line 610
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // java.time.ZoneId this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Ljava/time/ZoneId;
            0    6     1    obj  Ljava/lang/Object;
            4    5     2  other  Ljava/time/ZoneId;
    MethodParameters:
      Name  Flags
      obj   

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.time.ZoneId this
         0: .line 620
            aload 0 /* this */
            invokevirtual java.time.ZoneId.getId:()Ljava/lang/String;
            invokevirtual java.lang.String.hashCode:()I
            ireturn
        end local 0 // java.time.ZoneId this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/time/ZoneId;

  private void readObject(java.io.ObjectInputStream);
    descriptor: (Ljava/io/ObjectInputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.time.ZoneId this
        start local 1 // java.io.ObjectInputStream s
         0: .line 631
            new java.io.InvalidObjectException
            dup
            ldc "Deserialization via serialization delegate"
            invokespecial java.io.InvalidObjectException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.io.ObjectInputStream s
        end local 0 // java.time.ZoneId this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/time/ZoneId;
            0    1     1     s  Ljava/io/ObjectInputStream;
    Exceptions:
      throws java.io.InvalidObjectException
    MethodParameters:
      Name  Flags
      s     

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.time.ZoneId this
         0: .line 641
            aload 0 /* this */
            invokevirtual java.time.ZoneId.getId:()Ljava/lang/String;
            areturn
        end local 0 // java.time.ZoneId this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/time/ZoneId;

  private java.lang.Object writeReplace();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.time.ZoneId this
         0: .line 662
            new java.time.Ser
            dup
            bipush 7
            aload 0 /* this */
            invokespecial java.time.Ser.<init>:(BLjava/lang/Object;)V
            areturn
        end local 0 // java.time.ZoneId this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/time/ZoneId;

  abstract void write(java.io.DataOutput);
    descriptor: (Ljava/io/DataOutput;)V
    flags: (0x0400) ACC_ABSTRACT
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      out   
}
SourceFile: "ZoneId.java"
NestMembers:
  java.time.ZoneId$1
InnerClasses:
  java.time.ZoneId$1