public class java.util.zip.ZipEntry implements java.util.zip.ZipConstants, java.lang.Cloneable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: java.util.zip.ZipEntry
  super_class: java.lang.Object
{
  java.lang.String name;
    descriptor: Ljava/lang/String;
    flags: (0x0000) 

  long xdostime;
    descriptor: J
    flags: (0x0000) 

  java.nio.file.attribute.FileTime mtime;
    descriptor: Ljava/nio/file/attribute/FileTime;
    flags: (0x0000) 

  java.nio.file.attribute.FileTime atime;
    descriptor: Ljava/nio/file/attribute/FileTime;
    flags: (0x0000) 

  java.nio.file.attribute.FileTime ctime;
    descriptor: Ljava/nio/file/attribute/FileTime;
    flags: (0x0000) 

  long crc;
    descriptor: J
    flags: (0x0000) 

  long size;
    descriptor: J
    flags: (0x0000) 

  long csize;
    descriptor: J
    flags: (0x0000) 

  int method;
    descriptor: I
    flags: (0x0000) 

  int flag;
    descriptor: I
    flags: (0x0000) 

  byte[] extra;
    descriptor: [B
    flags: (0x0000) 

  java.lang.String comment;
    descriptor: Ljava/lang/String;
    flags: (0x0000) 

  public static final int STORED;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int DEFLATED;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  static final long DOSTIME_BEFORE_1980;
    descriptor: J
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 2162688

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

  public void <init>(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.util.zip.ZipEntry this
        start local 1 // java.lang.String name
         0: .line 100
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 44
            aload 0 /* this */
            ldc -1
            putfield java.util.zip.ZipEntry.xdostime:J
         2: .line 50
            aload 0 /* this */
            ldc -1
            putfield java.util.zip.ZipEntry.crc:J
         3: .line 51
            aload 0 /* this */
            ldc -1
            putfield java.util.zip.ZipEntry.size:J
         4: .line 52
            aload 0 /* this */
            ldc -1
            putfield java.util.zip.ZipEntry.csize:J
         5: .line 53
            aload 0 /* this */
            iconst_m1
            putfield java.util.zip.ZipEntry.method:I
         6: .line 54
            aload 0 /* this */
            iconst_0
            putfield java.util.zip.ZipEntry.flag:I
         7: .line 101
            aload 1 /* name */
            ldc "name"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         8: .line 102
            aload 1 /* name */
            invokevirtual java.lang.String.length:()I
            ldc 65535
            if_icmple 10
         9: .line 103
            new java.lang.IllegalArgumentException
            dup
            ldc "entry name too long"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 105
      StackMap locals: java.util.zip.ZipEntry java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            putfield java.util.zip.ZipEntry.name:Ljava/lang/String;
        11: .line 106
            return
        end local 1 // java.lang.String name
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Ljava/util/zip/ZipEntry;
            0   12     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public void <init>(java.util.zip.ZipEntry);
    descriptor: (Ljava/util/zip/ZipEntry;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.util.zip.ZipEntry this
        start local 1 // java.util.zip.ZipEntry e
         0: .line 117
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 44
            aload 0 /* this */
            ldc -1
            putfield java.util.zip.ZipEntry.xdostime:J
         2: .line 50
            aload 0 /* this */
            ldc -1
            putfield java.util.zip.ZipEntry.crc:J
         3: .line 51
            aload 0 /* this */
            ldc -1
            putfield java.util.zip.ZipEntry.size:J
         4: .line 52
            aload 0 /* this */
            ldc -1
            putfield java.util.zip.ZipEntry.csize:J
         5: .line 53
            aload 0 /* this */
            iconst_m1
            putfield java.util.zip.ZipEntry.method:I
         6: .line 54
            aload 0 /* this */
            iconst_0
            putfield java.util.zip.ZipEntry.flag:I
         7: .line 118
            aload 1 /* e */
            ldc "entry"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         8: .line 119
            aload 0 /* this */
            aload 1 /* e */
            getfield java.util.zip.ZipEntry.name:Ljava/lang/String;
            putfield java.util.zip.ZipEntry.name:Ljava/lang/String;
         9: .line 120
            aload 0 /* this */
            aload 1 /* e */
            getfield java.util.zip.ZipEntry.xdostime:J
            putfield java.util.zip.ZipEntry.xdostime:J
        10: .line 121
            aload 0 /* this */
            aload 1 /* e */
            getfield java.util.zip.ZipEntry.mtime:Ljava/nio/file/attribute/FileTime;
            putfield java.util.zip.ZipEntry.mtime:Ljava/nio/file/attribute/FileTime;
        11: .line 122
            aload 0 /* this */
            aload 1 /* e */
            getfield java.util.zip.ZipEntry.atime:Ljava/nio/file/attribute/FileTime;
            putfield java.util.zip.ZipEntry.atime:Ljava/nio/file/attribute/FileTime;
        12: .line 123
            aload 0 /* this */
            aload 1 /* e */
            getfield java.util.zip.ZipEntry.ctime:Ljava/nio/file/attribute/FileTime;
            putfield java.util.zip.ZipEntry.ctime:Ljava/nio/file/attribute/FileTime;
        13: .line 124
            aload 0 /* this */
            aload 1 /* e */
            getfield java.util.zip.ZipEntry.crc:J
            putfield java.util.zip.ZipEntry.crc:J
        14: .line 125
            aload 0 /* this */
            aload 1 /* e */
            getfield java.util.zip.ZipEntry.size:J
            putfield java.util.zip.ZipEntry.size:J
        15: .line 126
            aload 0 /* this */
            aload 1 /* e */
            getfield java.util.zip.ZipEntry.csize:J
            putfield java.util.zip.ZipEntry.csize:J
        16: .line 127
            aload 0 /* this */
            aload 1 /* e */
            getfield java.util.zip.ZipEntry.method:I
            putfield java.util.zip.ZipEntry.method:I
        17: .line 128
            aload 0 /* this */
            aload 1 /* e */
            getfield java.util.zip.ZipEntry.flag:I
            putfield java.util.zip.ZipEntry.flag:I
        18: .line 129
            aload 0 /* this */
            aload 1 /* e */
            getfield java.util.zip.ZipEntry.extra:[B
            putfield java.util.zip.ZipEntry.extra:[B
        19: .line 130
            aload 0 /* this */
            aload 1 /* e */
            getfield java.util.zip.ZipEntry.comment:Ljava/lang/String;
            putfield java.util.zip.ZipEntry.comment:Ljava/lang/String;
        20: .line 131
            return
        end local 1 // java.util.zip.ZipEntry e
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   21     0  this  Ljava/util/zip/ZipEntry;
            0   21     1     e  Ljava/util/zip/ZipEntry;
    MethodParameters:
      Name  Flags
      e     

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.zip.ZipEntry this
         0: .line 136
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 44
            aload 0 /* this */
            ldc -1
            putfield java.util.zip.ZipEntry.xdostime:J
         2: .line 50
            aload 0 /* this */
            ldc -1
            putfield java.util.zip.ZipEntry.crc:J
         3: .line 51
            aload 0 /* this */
            ldc -1
            putfield java.util.zip.ZipEntry.size:J
         4: .line 52
            aload 0 /* this */
            ldc -1
            putfield java.util.zip.ZipEntry.csize:J
         5: .line 53
            aload 0 /* this */
            iconst_m1
            putfield java.util.zip.ZipEntry.method:I
         6: .line 54
            aload 0 /* this */
            iconst_0
            putfield java.util.zip.ZipEntry.flag:I
         7: .line 136
            return
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljava/util/zip/ZipEntry;

  public java.lang.String getName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.zip.ZipEntry this
         0: .line 143
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.name:Ljava/lang/String;
            areturn
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/zip/ZipEntry;

  public void setTime(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.util.zip.ZipEntry this
        start local 1 // long time
         0: .line 164
            aload 0 /* this */
            lload 1 /* time */
            invokestatic java.util.zip.ZipUtils.javaToExtendedDosTime:(J)J
            putfield java.util.zip.ZipEntry.xdostime:J
         1: .line 167
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.xdostime:J
            ldc 2162688
            lcmp
            ifeq 4
            lload 1 /* time */
            ldc 4036608000000
            lcmp
            ifgt 4
         2: .line 168
            aload 0 /* this */
            aconst_null
            putfield java.util.zip.ZipEntry.mtime:Ljava/nio/file/attribute/FileTime;
         3: .line 169
            goto 5
         4: .line 170
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* time */
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
            invokestatic java.nio.file.attribute.FileTime.from:(JLjava/util/concurrent/TimeUnit;)Ljava/nio/file/attribute/FileTime;
            putfield java.util.zip.ZipEntry.mtime:Ljava/nio/file/attribute/FileTime;
         5: .line 172
      StackMap locals:
      StackMap stack:
            return
        end local 1 // long time
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/util/zip/ZipEntry;
            0    6     1  time  J
    MethodParameters:
      Name  Flags
      time  

  public long getTime();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.util.zip.ZipEntry this
         0: .line 191
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.mtime:Ljava/nio/file/attribute/FileTime;
            ifnull 2
         1: .line 192
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.mtime:Ljava/nio/file/attribute/FileTime;
            invokevirtual java.nio.file.attribute.FileTime.toMillis:()J
            lreturn
         2: .line 194
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.xdostime:J
            ldc -1
            lcmp
            ifeq 3
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.xdostime:J
            invokestatic java.util.zip.ZipUtils.extendedDosToJavaTime:(J)J
            goto 4
      StackMap locals:
      StackMap stack:
         3: ldc -1
      StackMap locals:
      StackMap stack: long
         4: lreturn
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/zip/ZipEntry;

  public java.util.zip.ZipEntry setLastModifiedTime(java.nio.file.attribute.FileTime);
    descriptor: (Ljava/nio/file/attribute/FileTime;)Ljava/util/zip/ZipEntry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.util.zip.ZipEntry this
        start local 1 // java.nio.file.attribute.FileTime time
         0: .line 216
            aload 0 /* this */
            aload 1 /* time */
            ldc "lastModifiedTime"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            checkcast java.nio.file.attribute.FileTime
            putfield java.util.zip.ZipEntry.mtime:Ljava/nio/file/attribute/FileTime;
         1: .line 217
            aload 0 /* this */
            aload 1 /* time */
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
            invokevirtual java.nio.file.attribute.FileTime.to:(Ljava/util/concurrent/TimeUnit;)J
            invokestatic java.util.zip.ZipUtils.javaToExtendedDosTime:(J)J
            putfield java.util.zip.ZipEntry.xdostime:J
         2: .line 218
            aload 0 /* this */
            areturn
        end local 1 // java.nio.file.attribute.FileTime time
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/util/zip/ZipEntry;
            0    3     1  time  Ljava/nio/file/attribute/FileTime;
    MethodParameters:
      Name  Flags
      time  

  public java.nio.file.attribute.FileTime getLastModifiedTime();
    descriptor: ()Ljava/nio/file/attribute/FileTime;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.util.zip.ZipEntry this
         0: .line 238
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.mtime:Ljava/nio/file/attribute/FileTime;
            ifnull 2
         1: .line 239
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.mtime:Ljava/nio/file/attribute/FileTime;
            areturn
         2: .line 240
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.xdostime:J
            ldc -1
            lcmp
            ifne 4
         3: .line 241
            aconst_null
            areturn
         4: .line 242
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.util.zip.ZipEntry.getTime:()J
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
            invokestatic java.nio.file.attribute.FileTime.from:(JLjava/util/concurrent/TimeUnit;)Ljava/nio/file/attribute/FileTime;
            areturn
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/zip/ZipEntry;

  public java.util.zip.ZipEntry setLastAccessTime(java.nio.file.attribute.FileTime);
    descriptor: (Ljava/nio/file/attribute/FileTime;)Ljava/util/zip/ZipEntry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.util.zip.ZipEntry this
        start local 1 // java.nio.file.attribute.FileTime time
         0: .line 262
            aload 0 /* this */
            aload 1 /* time */
            ldc "lastAccessTime"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            checkcast java.nio.file.attribute.FileTime
            putfield java.util.zip.ZipEntry.atime:Ljava/nio/file/attribute/FileTime;
         1: .line 263
            aload 0 /* this */
            areturn
        end local 1 // java.nio.file.attribute.FileTime time
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/zip/ZipEntry;
            0    2     1  time  Ljava/nio/file/attribute/FileTime;
    MethodParameters:
      Name  Flags
      time  

  public java.nio.file.attribute.FileTime getLastAccessTime();
    descriptor: ()Ljava/nio/file/attribute/FileTime;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.zip.ZipEntry this
         0: .line 279
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.atime:Ljava/nio/file/attribute/FileTime;
            areturn
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/zip/ZipEntry;

  public java.util.zip.ZipEntry setCreationTime(java.nio.file.attribute.FileTime);
    descriptor: (Ljava/nio/file/attribute/FileTime;)Ljava/util/zip/ZipEntry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.util.zip.ZipEntry this
        start local 1 // java.nio.file.attribute.FileTime time
         0: .line 299
            aload 0 /* this */
            aload 1 /* time */
            ldc "creationTime"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            checkcast java.nio.file.attribute.FileTime
            putfield java.util.zip.ZipEntry.ctime:Ljava/nio/file/attribute/FileTime;
         1: .line 300
            aload 0 /* this */
            areturn
        end local 1 // java.nio.file.attribute.FileTime time
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/zip/ZipEntry;
            0    2     1  time  Ljava/nio/file/attribute/FileTime;
    MethodParameters:
      Name  Flags
      time  

  public java.nio.file.attribute.FileTime getCreationTime();
    descriptor: ()Ljava/nio/file/attribute/FileTime;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.zip.ZipEntry this
         0: .line 315
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.ctime:Ljava/nio/file/attribute/FileTime;
            areturn
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/zip/ZipEntry;

  public void setSize(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.util.zip.ZipEntry this
        start local 1 // long size
         0: .line 330
            lload 1 /* size */
            lconst_0
            lcmp
            ifge 2
         1: .line 331
            new java.lang.IllegalArgumentException
            dup
            ldc "invalid entry size"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 333
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* size */
            putfield java.util.zip.ZipEntry.size:J
         3: .line 334
            return
        end local 1 // long size
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/util/zip/ZipEntry;
            0    4     1  size  J
    MethodParameters:
      Name  Flags
      size  

  public long getSize();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.zip.ZipEntry this
         0: .line 343
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.size:J
            lreturn
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/zip/ZipEntry;

  public long getCompressedSize();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.zip.ZipEntry this
         0: .line 356
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.csize:J
            lreturn
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/zip/ZipEntry;

  public void setCompressedSize(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.zip.ZipEntry this
        start local 1 // long csize
         0: .line 367
            aload 0 /* this */
            lload 1 /* csize */
            putfield java.util.zip.ZipEntry.csize:J
         1: .line 368
            return
        end local 1 // long csize
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljava/util/zip/ZipEntry;
            0    2     1  csize  J
    MethodParameters:
       Name  Flags
      csize  

  public void setCrc(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.util.zip.ZipEntry this
        start local 1 // long crc
         0: .line 380
            lload 1 /* crc */
            lconst_0
            lcmp
            iflt 1
            lload 1 /* crc */
            ldc 4294967295
            lcmp
            ifle 2
         1: .line 381
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "invalid entry crc-32"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 383
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* crc */
            putfield java.util.zip.ZipEntry.crc:J
         3: .line 384
            return
        end local 1 // long crc
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/util/zip/ZipEntry;
            0    4     1   crc  J
    MethodParameters:
      Name  Flags
      crc   

  public long getCrc();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.zip.ZipEntry this
         0: .line 395
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.crc:J
            lreturn
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/zip/ZipEntry;

  public void setMethod(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.util.zip.ZipEntry this
        start local 1 // int method
         0: .line 408
            iload 1 /* method */
            ifeq 2
            iload 1 /* method */
            bipush 8
            if_icmpeq 2
         1: .line 409
            new java.lang.IllegalArgumentException
            dup
            ldc "invalid compression method"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 411
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* method */
            putfield java.util.zip.ZipEntry.method:I
         3: .line 412
            return
        end local 1 // int method
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljava/util/zip/ZipEntry;
            0    4     1  method  I
    MethodParameters:
        Name  Flags
      method  

  public int getMethod();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.zip.ZipEntry this
         0: .line 421
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.method:I
            ireturn
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/zip/ZipEntry;

  public void setExtra(byte[]);
    descriptor: ([B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.util.zip.ZipEntry this
        start local 1 // byte[] extra
         0: .line 443
            aload 0 /* this */
            aload 1 /* extra */
            iconst_0
            invokevirtual java.util.zip.ZipEntry.setExtra0:([BZ)V
         1: .line 444
            return
        end local 1 // byte[] extra
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljava/util/zip/ZipEntry;
            0    2     1  extra  [B
    MethodParameters:
       Name  Flags
      extra  

  void setExtra0(byte[], boolean);
    descriptor: ([BZ)V
    flags: (0x0000) 
    Code:
      stack=4, locals=10, args_size=3
        start local 0 // java.util.zip.ZipEntry this
        start local 1 // byte[] extra
        start local 2 // boolean doZIP64
         0: .line 455
            aload 1 /* extra */
            ifnull 40
         1: .line 456
            aload 1 /* extra */
            arraylength
            ldc 65535
            if_icmple 3
         2: .line 457
            new java.lang.IllegalArgumentException
            dup
            ldc "invalid extra field length"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 460
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* off */
        start local 3 // int off
         4: .line 461
            aload 1 /* extra */
            arraylength
            istore 4 /* len */
        start local 4 // int len
         5: .line 462
            goto 39
         6: .line 463
      StackMap locals: int int
      StackMap stack:
            aload 1 /* extra */
            iload 3 /* off */
            invokestatic java.util.zip.ZipUtils.get16:([BI)I
            istore 5 /* tag */
        start local 5 // int tag
         7: .line 464
            aload 1 /* extra */
            iload 3 /* off */
            iconst_2
            iadd
            invokestatic java.util.zip.ZipUtils.get16:([BI)I
            istore 6 /* sz */
        start local 6 // int sz
         8: .line 465
            iinc 3 /* off */ 4
         9: .line 466
            iload 3 /* off */
            iload 6 /* sz */
            iadd
            iload 4 /* len */
            if_icmple 11
        10: .line 467
            goto 40
        11: .line 468
      StackMap locals: int int
      StackMap stack:
            iload 5 /* tag */
            lookupswitch { // 3
                    1: 12
                   10: 17
                21589: 26
              default: 37
          }
        12: .line 470
      StackMap locals:
      StackMap stack:
            iload 2 /* doZIP64 */
            ifeq 37
        13: .line 477
            iload 6 /* sz */
            bipush 16
            if_icmplt 37
        14: .line 478
            aload 0 /* this */
            aload 1 /* extra */
            iload 3 /* off */
            invokestatic java.util.zip.ZipUtils.get64:([BI)J
            putfield java.util.zip.ZipEntry.size:J
        15: .line 479
            aload 0 /* this */
            aload 1 /* extra */
            iload 3 /* off */
            bipush 8
            iadd
            invokestatic java.util.zip.ZipUtils.get64:([BI)J
            putfield java.util.zip.ZipEntry.csize:J
        16: .line 482
            goto 37
        17: .line 484
      StackMap locals:
      StackMap stack:
            iload 6 /* sz */
            bipush 32
            if_icmpge 19
        18: .line 485
            goto 37
        19: .line 486
      StackMap locals:
      StackMap stack:
            iload 3 /* off */
            iconst_4
            iadd
            istore 7 /* pos */
        start local 7 // int pos
        20: .line 487
            aload 1 /* extra */
            iload 7 /* pos */
            invokestatic java.util.zip.ZipUtils.get16:([BI)I
            iconst_1
            if_icmpne 37
            aload 1 /* extra */
            iload 7 /* pos */
            iconst_2
            iadd
            invokestatic java.util.zip.ZipUtils.get16:([BI)I
            bipush 24
            if_icmpeq 22
        21: .line 488
            goto 37
        22: .line 489
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* extra */
            iload 7 /* pos */
            iconst_4
            iadd
            invokestatic java.util.zip.ZipUtils.get64:([BI)J
            invokestatic java.util.zip.ZipUtils.winTimeToFileTime:(J)Ljava/nio/file/attribute/FileTime;
            putfield java.util.zip.ZipEntry.mtime:Ljava/nio/file/attribute/FileTime;
        23: .line 490
            aload 0 /* this */
            aload 1 /* extra */
            iload 7 /* pos */
            bipush 12
            iadd
            invokestatic java.util.zip.ZipUtils.get64:([BI)J
            invokestatic java.util.zip.ZipUtils.winTimeToFileTime:(J)Ljava/nio/file/attribute/FileTime;
            putfield java.util.zip.ZipEntry.atime:Ljava/nio/file/attribute/FileTime;
        24: .line 491
            aload 0 /* this */
            aload 1 /* extra */
            iload 7 /* pos */
            bipush 20
            iadd
            invokestatic java.util.zip.ZipUtils.get64:([BI)J
            invokestatic java.util.zip.ZipUtils.winTimeToFileTime:(J)Ljava/nio/file/attribute/FileTime;
            putfield java.util.zip.ZipEntry.ctime:Ljava/nio/file/attribute/FileTime;
        25: .line 492
            goto 37
        end local 7 // int pos
        26: .line 494
      StackMap locals:
      StackMap stack:
            aload 1 /* extra */
            iload 3 /* off */
            baload
            invokestatic java.lang.Byte.toUnsignedInt:(B)I
            istore 8 /* flag */
        start local 8 // int flag
        27: .line 495
            iconst_1
            istore 9 /* sz0 */
        start local 9 // int sz0
        28: .line 500
            iload 8 /* flag */
            iconst_1
            iand
            ifeq 31
            iload 9 /* sz0 */
            iconst_4
            iadd
            iload 6 /* sz */
            if_icmpgt 31
        29: .line 501
            aload 0 /* this */
            aload 1 /* extra */
            iload 3 /* off */
            iload 9 /* sz0 */
            iadd
            invokestatic java.util.zip.ZipUtils.get32:([BI)J
            invokestatic java.util.zip.ZipUtils.unixTimeToFileTime:(J)Ljava/nio/file/attribute/FileTime;
            putfield java.util.zip.ZipEntry.mtime:Ljava/nio/file/attribute/FileTime;
        30: .line 502
            iinc 9 /* sz0 */ 4
        31: .line 504
      StackMap locals: java.util.zip.ZipEntry byte[] int int int int int top int int
      StackMap stack:
            iload 8 /* flag */
            iconst_2
            iand
            ifeq 34
            iload 9 /* sz0 */
            iconst_4
            iadd
            iload 6 /* sz */
            if_icmpgt 34
        32: .line 505
            aload 0 /* this */
            aload 1 /* extra */
            iload 3 /* off */
            iload 9 /* sz0 */
            iadd
            invokestatic java.util.zip.ZipUtils.get32:([BI)J
            invokestatic java.util.zip.ZipUtils.unixTimeToFileTime:(J)Ljava/nio/file/attribute/FileTime;
            putfield java.util.zip.ZipEntry.atime:Ljava/nio/file/attribute/FileTime;
        33: .line 506
            iinc 9 /* sz0 */ 4
        34: .line 508
      StackMap locals:
      StackMap stack:
            iload 8 /* flag */
            iconst_4
            iand
            ifeq 37
            iload 9 /* sz0 */
            iconst_4
            iadd
            iload 6 /* sz */
            if_icmpgt 37
        35: .line 509
            aload 0 /* this */
            aload 1 /* extra */
            iload 3 /* off */
            iload 9 /* sz0 */
            iadd
            invokestatic java.util.zip.ZipUtils.get32:([BI)J
            invokestatic java.util.zip.ZipUtils.unixTimeToFileTime:(J)Ljava/nio/file/attribute/FileTime;
            putfield java.util.zip.ZipEntry.ctime:Ljava/nio/file/attribute/FileTime;
        36: .line 510
            iinc 9 /* sz0 */ 4
        end local 9 // int sz0
        end local 8 // int flag
        37: .line 512
      StackMap locals: java.util.zip.ZipEntry byte[] int int int int int
      StackMap stack:
            iload 3 /* off */
        38: .line 515
            iload 6 /* sz */
            iadd
            istore 3 /* off */
        end local 6 // int sz
        end local 5 // int tag
        39: .line 462
      StackMap locals:
      StackMap stack:
            iload 3 /* off */
            iconst_4
            iadd
            iload 4 /* len */
            if_icmplt 6
        end local 4 // int len
        end local 3 // int off
        40: .line 518
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* extra */
            putfield java.util.zip.ZipEntry.extra:[B
        41: .line 519
            return
        end local 2 // boolean doZIP64
        end local 1 // byte[] extra
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   42     0     this  Ljava/util/zip/ZipEntry;
            0   42     1    extra  [B
            0   42     2  doZIP64  Z
            4   40     3      off  I
            5   40     4      len  I
            7   39     5      tag  I
            8   39     6       sz  I
           20   26     7      pos  I
           27   37     8     flag  I
           28   37     9      sz0  I
    MethodParameters:
         Name  Flags
      extra    
      doZIP64  

  public byte[] getExtra();
    descriptor: ()[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.zip.ZipEntry this
         0: .line 529
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.extra:[B
            areturn
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/zip/ZipEntry;

  public void setComment(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.zip.ZipEntry this
        start local 1 // java.lang.String comment
         0: .line 544
            aload 0 /* this */
            aload 1 /* comment */
            putfield java.util.zip.ZipEntry.comment:Ljava/lang/String;
         1: .line 545
            return
        end local 1 // java.lang.String comment
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Ljava/util/zip/ZipEntry;
            0    2     1  comment  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      comment  

  public java.lang.String getComment();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.zip.ZipEntry this
         0: .line 555
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.comment:Ljava/lang/String;
            areturn
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/zip/ZipEntry;

  public boolean isDirectory();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.zip.ZipEntry this
         0: .line 564
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.name:Ljava/lang/String;
            ldc "/"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ireturn
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/zip/ZipEntry;

  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.util.zip.ZipEntry this
         0: .line 571
            aload 0 /* this */
            invokevirtual java.util.zip.ZipEntry.getName:()Ljava/lang/String;
            areturn
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/zip/ZipEntry;

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

  public java.lang.Object clone();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.util.zip.ZipEntry this
         0: .line 586
            aload 0 /* this */
            invokespecial java.lang.Object.clone:()Ljava/lang/Object;
            checkcast java.util.zip.ZipEntry
            astore 1 /* e */
        start local 1 // java.util.zip.ZipEntry e
         1: .line 587
            aload 1 /* e */
            aload 0 /* this */
            getfield java.util.zip.ZipEntry.extra:[B
            ifnonnull 2
            aconst_null
            goto 3
      StackMap locals: java.util.zip.ZipEntry java.util.zip.ZipEntry
      StackMap stack: java.util.zip.ZipEntry
         2: aload 0 /* this */
            getfield java.util.zip.ZipEntry.extra:[B
            invokevirtual byte[].clone:()Ljava/lang/Object;
            checkcast byte[]
      StackMap locals: java.util.zip.ZipEntry java.util.zip.ZipEntry
      StackMap stack: java.util.zip.ZipEntry byte[]
         3: putfield java.util.zip.ZipEntry.extra:[B
         4: .line 588
            aload 1 /* e */
         5: areturn
        end local 1 // java.util.zip.ZipEntry e
         6: .line 589
      StackMap locals: java.util.zip.ZipEntry
      StackMap stack: java.lang.CloneNotSupportedException
            astore 1 /* e */
        start local 1 // java.lang.CloneNotSupportedException e
         7: .line 591
            new java.lang.InternalError
            dup
            aload 1 /* e */
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 1 // java.lang.CloneNotSupportedException e
        end local 0 // java.util.zip.ZipEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljava/util/zip/ZipEntry;
            1    6     1     e  Ljava/util/zip/ZipEntry;
            7    8     1     e  Ljava/lang/CloneNotSupportedException;
      Exception table:
        from    to  target  type
           0     5       6  Class java.lang.CloneNotSupportedException
}
SourceFile: "ZipEntry.java"