public class org.apache.commons.compress.archivers.tar.TarArchiveOutputStream extends org.apache.commons.compress.archivers.ArchiveOutputStream
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.commons.compress.archivers.tar.TarArchiveOutputStream
  super_class: org.apache.commons.compress.archivers.ArchiveOutputStream
{
  public static final int LONGFILE_ERROR;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

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

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

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

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

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

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

  private static final int RECORD_SIZE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 512

  private long currSize;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String currName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private long currBytes;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private final byte[] recordBuf;
    descriptor: [B
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private int longFileMode;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int bigNumberMode;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int recordsWritten;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private final int recordsPerBlock;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private boolean closed;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean haveUnclosedEntry;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean finished;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private final org.apache.commons.compress.utils.FixedLengthBlockOutputStream out;
    descriptor: Lorg/apache/commons/compress/utils/FixedLengthBlockOutputStream;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.commons.compress.utils.CountingOutputStream countingOut;
    descriptor: Lorg/apache/commons/compress/utils/CountingOutputStream;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.commons.compress.archivers.zip.ZipEncoding zipEncoding;
    descriptor: Lorg/apache/commons/compress/archivers/zip/ZipEncoding;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  final java.lang.String encoding;
    descriptor: Ljava/lang/String;
    flags: (0x0010) ACC_FINAL

  private boolean addPaxHeadersForNonAsciiNames;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private static final org.apache.commons.compress.archivers.zip.ZipEncoding ASCII;
    descriptor: Lorg/apache/commons/compress/archivers/zip/ZipEncoding;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int BLOCK_SIZE_UNSPECIFIED;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -511

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 123
            ldc "ASCII"
            invokestatic org.apache.commons.compress.archivers.zip.ZipEncodingHelper.getZipEncoding:(Ljava/lang/String;)Lorg/apache/commons/compress/archivers/zip/ZipEncoding;
         1: .line 122
            putstatic org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.ASCII:Lorg/apache/commons/compress/archivers/zip/ZipEncoding;
         2: .line 125
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(java.io.OutputStream);
    descriptor: (Ljava/io/OutputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // java.io.OutputStream os
         0: .line 135
            aload 0 /* this */
            aload 1 /* os */
            sipush -511
            invokespecial org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.<init>:(Ljava/io/OutputStream;I)V
         1: .line 136
            return
        end local 1 // java.io.OutputStream os
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0    2     1    os  Ljava/io/OutputStream;
    MethodParameters:
      Name  Flags
      os    final

  public void <init>(java.io.OutputStream, java.lang.String);
    descriptor: (Ljava/io/OutputStream;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // java.io.OutputStream os
        start local 2 // java.lang.String encoding
         0: .line 148
            aload 0 /* this */
            aload 1 /* os */
            sipush -511
            aload 2 /* encoding */
            invokespecial org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.<init>:(Ljava/io/OutputStream;ILjava/lang/String;)V
         1: .line 149
            return
        end local 2 // java.lang.String encoding
        end local 1 // java.io.OutputStream os
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0    2     1        os  Ljava/io/OutputStream;
            0    2     2  encoding  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      os        final
      encoding  final

  public void <init>(java.io.OutputStream, int);
    descriptor: (Ljava/io/OutputStream;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // java.io.OutputStream os
        start local 2 // int blockSize
         0: .line 158
            aload 0 /* this */
            aload 1 /* os */
            iload 2 /* blockSize */
            aconst_null
            invokespecial org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.<init>:(Ljava/io/OutputStream;ILjava/lang/String;)V
         1: .line 159
            return
        end local 2 // int blockSize
        end local 1 // java.io.OutputStream os
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0    2     1         os  Ljava/io/OutputStream;
            0    2     2  blockSize  I
    MethodParameters:
           Name  Flags
      os         final
      blockSize  final

  public void <init>(java.io.OutputStream, int, int);
    descriptor: (Ljava/io/OutputStream;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // java.io.OutputStream os
        start local 2 // int blockSize
        start local 3 // int recordSize
         0: .line 174
            aload 0 /* this */
            aload 1 /* os */
            iload 2 /* blockSize */
            iload 3 /* recordSize */
            aconst_null
            invokespecial org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.<init>:(Ljava/io/OutputStream;IILjava/lang/String;)V
         1: .line 175
            return
        end local 3 // int recordSize
        end local 2 // int blockSize
        end local 1 // java.io.OutputStream os
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0    2     1          os  Ljava/io/OutputStream;
            0    2     2   blockSize  I
            0    2     3  recordSize  I
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
            Name  Flags
      os          final
      blockSize   final
      recordSize  final

  public void <init>(java.io.OutputStream, int, int, java.lang.String);
    descriptor: (Ljava/io/OutputStream;IILjava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // java.io.OutputStream os
        start local 2 // int blockSize
        start local 3 // int recordSize
        start local 4 // java.lang.String encoding
         0: .line 191
            aload 0 /* this */
            aload 1 /* os */
            iload 2 /* blockSize */
            aload 4 /* encoding */
            invokespecial org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.<init>:(Ljava/io/OutputStream;ILjava/lang/String;)V
         1: .line 192
            iload 3 /* recordSize */
            sipush 512
            if_icmpeq 5
         2: .line 193
            new java.lang.IllegalArgumentException
            dup
         3: .line 194
            new java.lang.StringBuilder
            dup
            ldc "Tar record size must always be 512 bytes. Attempt to set size of "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* recordSize */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 193
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 197
      StackMap locals: org.apache.commons.compress.archivers.tar.TarArchiveOutputStream java.io.OutputStream int int java.lang.String
      StackMap stack:
            return
        end local 4 // java.lang.String encoding
        end local 3 // int recordSize
        end local 2 // int blockSize
        end local 1 // java.io.OutputStream os
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0    6     1          os  Ljava/io/OutputStream;
            0    6     2   blockSize  I
            0    6     3  recordSize  I
            0    6     4    encoding  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
            Name  Flags
      os          final
      blockSize   final
      recordSize  final
      encoding    final

  public void <init>(java.io.OutputStream, int, java.lang.String);
    descriptor: (Ljava/io/OutputStream;ILjava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // java.io.OutputStream os
        start local 2 // int blockSize
        start local 3 // java.lang.String encoding
         0: .line 207
            aload 0 /* this */
            invokespecial org.apache.commons.compress.archivers.ArchiveOutputStream.<init>:()V
         1: .line 96
            aload 0 /* this */
            iconst_0
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.longFileMode:I
         2: .line 97
            aload 0 /* this */
            iconst_0
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.bigNumberMode:I
         3: .line 101
            aload 0 /* this */
            iconst_0
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.closed:Z
         4: .line 106
            aload 0 /* this */
            iconst_0
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.haveUnclosedEntry:Z
         5: .line 111
            aload 0 /* this */
            iconst_0
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.finished:Z
         6: .line 121
            aload 0 /* this */
            iconst_0
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.addPaxHeadersForNonAsciiNames:Z
         7: .line 210
            sipush -511
            iload 2 /* blockSize */
            if_icmpne 10
         8: .line 211
            sipush 512
            istore 4 /* realBlockSize */
        start local 4 // int realBlockSize
         9: .line 212
            goto 11
        end local 4 // int realBlockSize
        10: .line 213
      StackMap locals: org.apache.commons.compress.archivers.tar.TarArchiveOutputStream java.io.OutputStream int java.lang.String
      StackMap stack:
            iload 2 /* blockSize */
            istore 4 /* realBlockSize */
        start local 4 // int realBlockSize
        11: .line 216
      StackMap locals: int
      StackMap stack:
            iload 4 /* realBlockSize */
            ifle 12
            iload 4 /* realBlockSize */
            sipush 512
            irem
            ifeq 13
        12: .line 217
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Block size must be a multiple of 512 bytes. Attempt to use set size of "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* blockSize */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 219
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.apache.commons.compress.utils.FixedLengthBlockOutputStream
            dup
            aload 0 /* this */
            new org.apache.commons.compress.utils.CountingOutputStream
            dup
            aload 1 /* os */
            invokespecial org.apache.commons.compress.utils.CountingOutputStream.<init>:(Ljava/io/OutputStream;)V
            dup_x1
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.countingOut:Lorg/apache/commons/compress/utils/CountingOutputStream;
        14: .line 220
            sipush 512
            invokespecial org.apache.commons.compress.utils.FixedLengthBlockOutputStream.<init>:(Ljava/io/OutputStream;I)V
        15: .line 219
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.out:Lorg/apache/commons/compress/utils/FixedLengthBlockOutputStream;
        16: .line 221
            aload 0 /* this */
            aload 3 /* encoding */
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.encoding:Ljava/lang/String;
        17: .line 222
            aload 0 /* this */
            aload 3 /* encoding */
            invokestatic org.apache.commons.compress.archivers.zip.ZipEncodingHelper.getZipEncoding:(Ljava/lang/String;)Lorg/apache/commons/compress/archivers/zip/ZipEncoding;
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.zipEncoding:Lorg/apache/commons/compress/archivers/zip/ZipEncoding;
        18: .line 224
            aload 0 /* this */
            sipush 512
            newarray 8
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.recordBuf:[B
        19: .line 225
            aload 0 /* this */
            iload 4 /* realBlockSize */
            sipush 512
            idiv
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.recordsPerBlock:I
        20: .line 226
            return
        end local 4 // int realBlockSize
        end local 3 // java.lang.String encoding
        end local 2 // int blockSize
        end local 1 // java.io.OutputStream os
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   21     0           this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0   21     1             os  Ljava/io/OutputStream;
            0   21     2      blockSize  I
            0   21     3       encoding  Ljava/lang/String;
            9   10     4  realBlockSize  I
           11   21     4  realBlockSize  I
    MethodParameters:
           Name  Flags
      os         final
      blockSize  final
      encoding   final

  public void setLongFileMode(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // int longFileMode
         0: .line 236
            aload 0 /* this */
            iload 1 /* longFileMode */
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.longFileMode:I
         1: .line 237
            return
        end local 1 // int longFileMode
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0    2     1  longFileMode  I
    MethodParameters:
              Name  Flags
      longFileMode  final

  public void setBigNumberMode(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // int bigNumberMode
         0: .line 249
            aload 0 /* this */
            iload 1 /* bigNumberMode */
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.bigNumberMode:I
         1: .line 250
            return
        end local 1 // int bigNumberMode
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0    2     1  bigNumberMode  I
    MethodParameters:
               Name  Flags
      bigNumberMode  final

  public void setAddPaxHeadersForNonAsciiNames(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // boolean b
         0: .line 259
            aload 0 /* this */
            iload 1 /* b */
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.addPaxHeadersForNonAsciiNames:Z
         1: .line 260
            return
        end local 1 // boolean b
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0    2     1     b  Z
    MethodParameters:
      Name  Flags
      b     final

  public int getCount();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
         0: .line 265
            aload 0 /* this */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.getBytesWritten:()J
            l2i
            ireturn
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public long getBytesWritten();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
         0: .line 270
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.countingOut:Lorg/apache/commons/compress/utils/CountingOutputStream;
            invokevirtual org.apache.commons.compress.utils.CountingOutputStream.getBytesWritten:()J
            lreturn
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;

  public void finish();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
         0: .line 284
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.finished:Z
            ifeq 2
         1: .line 285
            new java.io.IOException
            dup
            ldc "This archive has already been finished"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 288
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.haveUnclosedEntry:Z
            ifeq 4
         3: .line 289
            new java.io.IOException
            dup
            ldc "This archive contains unclosed entries."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 291
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.writeEOFRecord:()V
         5: .line 292
            aload 0 /* this */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.writeEOFRecord:()V
         6: .line 293
            aload 0 /* this */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.padAsNeeded:()V
         7: .line 294
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.out:Lorg/apache/commons/compress/utils/FixedLengthBlockOutputStream;
            invokevirtual org.apache.commons.compress.utils.FixedLengthBlockOutputStream.flush:()V
         8: .line 295
            aload 0 /* this */
            iconst_1
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.finished:Z
         9: .line 296
            return
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
    Exceptions:
      throws java.io.IOException

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
         0: .line 306
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.finished:Z
            ifne 8
         1: .line 307
            aload 0 /* this */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.finish:()V
         2: .line 309
            goto 8
      StackMap locals:
      StackMap stack: java.lang.Throwable
         3: astore 1
         4: .line 310
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.closed:Z
            ifne 7
         5: .line 311
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.out:Lorg/apache/commons/compress/utils/FixedLengthBlockOutputStream;
            invokevirtual org.apache.commons.compress.utils.FixedLengthBlockOutputStream.close:()V
         6: .line 312
            aload 0 /* this */
            iconst_1
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.closed:Z
         7: .line 314
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 1
            athrow
         8: .line 310
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.closed:Z
            ifne 11
         9: .line 311
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.out:Lorg/apache/commons/compress/utils/FixedLengthBlockOutputStream;
            invokevirtual org.apache.commons.compress.utils.FixedLengthBlockOutputStream.close:()V
        10: .line 312
            aload 0 /* this */
            iconst_1
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.closed:Z
        11: .line 315
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
      Exception table:
        from    to  target  type
           0     3       3  any
    Exceptions:
      throws java.io.IOException

  public int getRecordSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
         0: .line 325
            sipush 512
            ireturn
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public void putArchiveEntry(org.apache.commons.compress.archivers.ArchiveEntry);
    descriptor: (Lorg/apache/commons/compress/archivers/ArchiveEntry;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=8, args_size=2
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // org.apache.commons.compress.archivers.ArchiveEntry archiveEntry
         0: .line 341
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.finished:Z
            ifeq 2
         1: .line 342
            new java.io.IOException
            dup
            ldc "Stream has already been finished"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 344
      StackMap locals:
      StackMap stack:
            aload 1 /* archiveEntry */
            checkcast org.apache.commons.compress.archivers.tar.TarArchiveEntry
            astore 2 /* entry */
        start local 2 // org.apache.commons.compress.archivers.tar.TarArchiveEntry entry
         3: .line 345
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.isGlobalPaxHeader:()Z
            ifeq 16
         4: .line 346
            aload 0 /* this */
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getExtraPaxHeaders:()Ljava/util/Map;
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.encodeExtendedPaxHeadersContents:(Ljava/util/Map;)[B
            astore 3 /* data */
        start local 3 // byte[] data
         5: .line 347
            aload 2 /* entry */
            aload 3 /* data */
            arraylength
            i2l
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.setSize:(J)V
         6: .line 348
            aload 2 /* entry */
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.recordBuf:[B
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.zipEncoding:Lorg/apache/commons/compress/archivers/zip/ZipEncoding;
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.bigNumberMode:I
            iconst_1
            if_icmpne 7
            iconst_1
            goto 8
      StackMap locals: org.apache.commons.compress.archivers.tar.TarArchiveOutputStream org.apache.commons.compress.archivers.ArchiveEntry org.apache.commons.compress.archivers.tar.TarArchiveEntry byte[]
      StackMap stack: org.apache.commons.compress.archivers.tar.TarArchiveEntry byte[] org.apache.commons.compress.archivers.zip.ZipEncoding
         7: iconst_0
      StackMap locals: org.apache.commons.compress.archivers.tar.TarArchiveOutputStream org.apache.commons.compress.archivers.ArchiveEntry org.apache.commons.compress.archivers.tar.TarArchiveEntry byte[]
      StackMap stack: org.apache.commons.compress.archivers.tar.TarArchiveEntry byte[] org.apache.commons.compress.archivers.zip.ZipEncoding int
         8: invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.writeEntryHeader:([BLorg/apache/commons/compress/archivers/zip/ZipEncoding;Z)V
         9: .line 349
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.recordBuf:[B
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.writeRecord:([B)V
        10: .line 350
            aload 0 /* this */
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getSize:()J
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currSize:J
        11: .line 351
            aload 0 /* this */
            lconst_0
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currBytes:J
        12: .line 352
            aload 0 /* this */
            iconst_1
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.haveUnclosedEntry:Z
        13: .line 353
            aload 0 /* this */
            aload 3 /* data */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.write:([B)V
        14: .line 354
            aload 0 /* this */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.closeArchiveEntry:()V
        end local 3 // byte[] data
        15: .line 355
            goto 56
        16: .line 356
      StackMap locals:
      StackMap stack:
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 3 /* paxHeaders */
        start local 3 // java.util.Map paxHeaders
        17: .line 357
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getName:()Ljava/lang/String;
            astore 4 /* entryName */
        start local 4 // java.lang.String entryName
        18: .line 358
            aload 0 /* this */
            aload 2 /* entry */
            aload 4 /* entryName */
            aload 3 /* paxHeaders */
            ldc "path"
        19: .line 359
            bipush 76
            ldc "file name"
        20: .line 358
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.handleLongName:(Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;BLjava/lang/String;)Z
            istore 5 /* paxHeaderContainsPath */
        start local 5 // boolean paxHeaderContainsPath
        21: .line 361
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getLinkName:()Ljava/lang/String;
            astore 6 /* linkName */
        start local 6 // java.lang.String linkName
        22: .line 362
            aload 6 /* linkName */
            ifnull 28
            aload 6 /* linkName */
            invokevirtual java.lang.String.length:()I
            ifle 28
        23: .line 363
            aload 0 /* this */
            aload 2 /* entry */
            aload 6 /* linkName */
            aload 3 /* paxHeaders */
            ldc "linkpath"
        24: .line 364
            bipush 75
            ldc "link name"
        25: .line 363
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.handleLongName:(Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;BLjava/lang/String;)Z
        26: .line 364
            ifeq 28
        27: .line 362
            iconst_1
            goto 29
      StackMap locals: org.apache.commons.compress.archivers.tar.TarArchiveOutputStream org.apache.commons.compress.archivers.ArchiveEntry org.apache.commons.compress.archivers.tar.TarArchiveEntry java.util.Map java.lang.String int java.lang.String
      StackMap stack:
        28: iconst_0
      StackMap locals:
      StackMap stack: int
        29: istore 7 /* paxHeaderContainsLinkPath */
        start local 7 // boolean paxHeaderContainsLinkPath
        30: .line 366
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.bigNumberMode:I
            iconst_2
            if_icmpne 33
        31: .line 367
            aload 0 /* this */
            aload 3 /* paxHeaders */
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.addPaxHeadersForBigNumbers:(Ljava/util/Map;Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;)V
        32: .line 368
            goto 35
      StackMap locals: int
      StackMap stack:
        33: aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.bigNumberMode:I
            iconst_1
            if_icmpeq 35
        34: .line 369
            aload 0 /* this */
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.failForBigNumbers:(Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;)V
        35: .line 372
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.addPaxHeadersForNonAsciiNames:Z
            ifeq 38
            iload 5 /* paxHeaderContainsPath */
            ifne 38
        36: .line 373
            getstatic org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.ASCII:Lorg/apache/commons/compress/archivers/zip/ZipEncoding;
            aload 4 /* entryName */
            invokeinterface org.apache.commons.compress.archivers.zip.ZipEncoding.canEncode:(Ljava/lang/String;)Z
            ifne 38
        37: .line 374
            aload 3 /* paxHeaders */
            ldc "path"
            aload 4 /* entryName */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        38: .line 377
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.addPaxHeadersForNonAsciiNames:Z
            ifeq 42
            iload 7 /* paxHeaderContainsLinkPath */
            ifne 42
        39: .line 378
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.isLink:()Z
            ifne 40
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.isSymbolicLink:()Z
            ifeq 42
        40: .line 379
      StackMap locals:
      StackMap stack:
            getstatic org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.ASCII:Lorg/apache/commons/compress/archivers/zip/ZipEncoding;
            aload 6 /* linkName */
            invokeinterface org.apache.commons.compress.archivers.zip.ZipEncoding.canEncode:(Ljava/lang/String;)Z
            ifne 42
        41: .line 380
            aload 3 /* paxHeaders */
            ldc "linkpath"
            aload 6 /* linkName */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        42: .line 382
      StackMap locals:
      StackMap stack:
            aload 3 /* paxHeaders */
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getExtraPaxHeaders:()Ljava/util/Map;
            invokeinterface java.util.Map.putAll:(Ljava/util/Map;)V
        43: .line 384
            aload 3 /* paxHeaders */
            invokeinterface java.util.Map.size:()I
            ifle 45
        44: .line 385
            aload 0 /* this */
            aload 2 /* entry */
            aload 4 /* entryName */
            aload 3 /* paxHeaders */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.writePaxHeaders:(Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;Ljava/lang/String;Ljava/util/Map;)V
        45: .line 388
      StackMap locals:
      StackMap stack:
            aload 2 /* entry */
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.recordBuf:[B
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.zipEncoding:Lorg/apache/commons/compress/archivers/zip/ZipEncoding;
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.bigNumberMode:I
            iconst_1
            if_icmpne 46
            iconst_1
            goto 47
      StackMap locals: org.apache.commons.compress.archivers.tar.TarArchiveOutputStream org.apache.commons.compress.archivers.ArchiveEntry org.apache.commons.compress.archivers.tar.TarArchiveEntry java.util.Map java.lang.String int java.lang.String int
      StackMap stack: org.apache.commons.compress.archivers.tar.TarArchiveEntry byte[] org.apache.commons.compress.archivers.zip.ZipEncoding
        46: iconst_0
      StackMap locals: org.apache.commons.compress.archivers.tar.TarArchiveOutputStream org.apache.commons.compress.archivers.ArchiveEntry org.apache.commons.compress.archivers.tar.TarArchiveEntry java.util.Map java.lang.String int java.lang.String int
      StackMap stack: org.apache.commons.compress.archivers.tar.TarArchiveEntry byte[] org.apache.commons.compress.archivers.zip.ZipEncoding int
        47: invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.writeEntryHeader:([BLorg/apache/commons/compress/archivers/zip/ZipEncoding;Z)V
        48: .line 389
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.recordBuf:[B
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.writeRecord:([B)V
        49: .line 391
            aload 0 /* this */
            lconst_0
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currBytes:J
        50: .line 393
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.isDirectory:()Z
            ifeq 53
        51: .line 394
            aload 0 /* this */
            lconst_0
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currSize:J
        52: .line 395
            goto 54
        53: .line 396
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getSize:()J
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currSize:J
        54: .line 398
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* entryName */
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currName:Ljava/lang/String;
        55: .line 399
            aload 0 /* this */
            iconst_1
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.haveUnclosedEntry:Z
        end local 7 // boolean paxHeaderContainsLinkPath
        end local 6 // java.lang.String linkName
        end local 5 // boolean paxHeaderContainsPath
        end local 4 // java.lang.String entryName
        end local 3 // java.util.Map paxHeaders
        56: .line 401
      StackMap locals: org.apache.commons.compress.archivers.tar.TarArchiveOutputStream org.apache.commons.compress.archivers.ArchiveEntry org.apache.commons.compress.archivers.tar.TarArchiveEntry
      StackMap stack:
            return
        end local 2 // org.apache.commons.compress.archivers.tar.TarArchiveEntry entry
        end local 1 // org.apache.commons.compress.archivers.ArchiveEntry archiveEntry
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0   57     0                       this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0   57     1               archiveEntry  Lorg/apache/commons/compress/archivers/ArchiveEntry;
            3   57     2                      entry  Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;
            5   15     3                       data  [B
           17   56     3                 paxHeaders  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
           18   56     4                  entryName  Ljava/lang/String;
           21   56     5      paxHeaderContainsPath  Z
           22   56     6                   linkName  Ljava/lang/String;
           30   56     7  paxHeaderContainsLinkPath  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      archiveEntry  final

  public void closeArchiveEntry();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=1, args_size=1
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
         0: .line 413
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.finished:Z
            ifeq 2
         1: .line 414
            new java.io.IOException
            dup
            ldc "Stream has already been finished"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 416
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.haveUnclosedEntry:Z
            ifne 4
         3: .line 417
            new java.io.IOException
            dup
            ldc "No current entry to close"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 419
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.out:Lorg/apache/commons/compress/utils/FixedLengthBlockOutputStream;
            invokevirtual org.apache.commons.compress.utils.FixedLengthBlockOutputStream.flushBlock:()V
         5: .line 420
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currBytes:J
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currSize:J
            lcmp
            ifge 11
         6: .line 421
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "entry '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' closed at '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 422
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currBytes:J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
         8: .line 423
            ldc "' before the '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currSize:J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
         9: .line 424
            ldc "' bytes specified in the header were written"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        10: .line 421
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        11: .line 426
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.recordsWritten:I
            i2l
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currSize:J
            ldc 512
            ldiv
            ladd
            l2i
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.recordsWritten:I
        12: .line 427
            lconst_0
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currSize:J
            ldc 512
            lrem
            lcmp
            ifeq 14
        13: .line 428
            aload 0 /* this */
            dup
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.recordsWritten:I
            iconst_1
            iadd
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.recordsWritten:I
        14: .line 430
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.haveUnclosedEntry:Z
        15: .line 431
            return
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
    Exceptions:
      throws java.io.IOException

  public void write(byte[], int, int);
    descriptor: ([BII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // byte[] wBuf
        start local 2 // int wOffset
        start local 3 // int numToWrite
         0: .line 445
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.haveUnclosedEntry:Z
            ifne 2
         1: .line 446
            new java.lang.IllegalStateException
            dup
            ldc "No current tar entry"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 448
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currBytes:J
            iload 3 /* numToWrite */
            i2l
            ladd
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currSize:J
            lcmp
            ifle 8
         3: .line 449
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "request to write '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* numToWrite */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         4: .line 450
            ldc "' bytes exceeds size in header of '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 451
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currSize:J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "' bytes for entry '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 452
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 449
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 454
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.out:Lorg/apache/commons/compress/utils/FixedLengthBlockOutputStream;
            aload 1 /* wBuf */
            iload 2 /* wOffset */
            iload 3 /* numToWrite */
            invokevirtual org.apache.commons.compress.utils.FixedLengthBlockOutputStream.write:([BII)V
         9: .line 455
            aload 0 /* this */
            dup
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currBytes:J
            iload 3 /* numToWrite */
            i2l
            ladd
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.currBytes:J
        10: .line 456
            return
        end local 3 // int numToWrite
        end local 2 // int wOffset
        end local 1 // byte[] wBuf
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0   11     1        wBuf  [B
            0   11     2     wOffset  I
            0   11     3  numToWrite  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      wBuf        final
      wOffset     
      numToWrite  

  void writePaxHeaders(org.apache.commons.compress.archivers.tar.TarArchiveEntry, java.lang.String, java.util.Map<java.lang.String, java.lang.String>);
    descriptor: (Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;Ljava/lang/String;Ljava/util/Map;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // org.apache.commons.compress.archivers.tar.TarArchiveEntry entry
        start local 2 // java.lang.String entryName
        start local 3 // java.util.Map headers
         0: .line 466
            new java.lang.StringBuilder
            dup
            ldc "./PaxHeaders.X/"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            aload 2 /* entryName */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.stripTo7Bits:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* name */
        start local 4 // java.lang.String name
         1: .line 467
            aload 4 /* name */
            invokevirtual java.lang.String.length:()I
            bipush 100
            if_icmplt 3
         2: .line 468
            aload 4 /* name */
            iconst_0
            bipush 99
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 4 /* name */
         3: .line 470
      StackMap locals: java.lang.String
      StackMap stack:
            new org.apache.commons.compress.archivers.tar.TarArchiveEntry
            dup
            aload 4 /* name */
         4: .line 471
            bipush 120
         5: .line 470
            invokespecial org.apache.commons.compress.archivers.tar.TarArchiveEntry.<init>:(Ljava/lang/String;B)V
            astore 5 /* pex */
        start local 5 // org.apache.commons.compress.archivers.tar.TarArchiveEntry pex
         6: .line 472
            aload 0 /* this */
            aload 1 /* entry */
            aload 5 /* pex */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.transferModTime:(Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;)V
         7: .line 474
            aload 0 /* this */
            aload 3 /* headers */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.encodeExtendedPaxHeadersContents:(Ljava/util/Map;)[B
            astore 6 /* data */
        start local 6 // byte[] data
         8: .line 475
            aload 5 /* pex */
            aload 6 /* data */
            arraylength
            i2l
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.setSize:(J)V
         9: .line 476
            aload 0 /* this */
            aload 5 /* pex */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.putArchiveEntry:(Lorg/apache/commons/compress/archivers/ArchiveEntry;)V
        10: .line 477
            aload 0 /* this */
            aload 6 /* data */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.write:([B)V
        11: .line 478
            aload 0 /* this */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.closeArchiveEntry:()V
        12: .line 479
            return
        end local 6 // byte[] data
        end local 5 // org.apache.commons.compress.archivers.tar.TarArchiveEntry pex
        end local 4 // java.lang.String name
        end local 3 // java.util.Map headers
        end local 2 // java.lang.String entryName
        end local 1 // org.apache.commons.compress.archivers.tar.TarArchiveEntry entry
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   13     0       this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0   13     1      entry  Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;
            0   13     2  entryName  Ljava/lang/String;
            0   13     3    headers  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            1   13     4       name  Ljava/lang/String;
            6   13     5        pex  Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;
            8   13     6       data  [B
    Exceptions:
      throws java.io.IOException
    Signature: (Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)V
    MethodParameters:
           Name  Flags
      entry      final
      entryName  final
      headers    final

  private byte[] encodeExtendedPaxHeadersContents(java.util.Map<java.lang.String, java.lang.String>);
    descriptor: (Ljava/util/Map;)[B
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=10, args_size=2
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // java.util.Map headers
         0: .line 483
            new java.io.StringWriter
            dup
            invokespecial java.io.StringWriter.<init>:()V
            astore 2 /* w */
        start local 2 // java.io.StringWriter w
         1: .line 484
            aload 1 /* headers */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 18
      StackMap locals: org.apache.commons.compress.archivers.tar.TarArchiveOutputStream java.util.Map java.io.StringWriter top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 3 /* h */
        start local 3 // java.util.Map$Entry h
         3: .line 485
            aload 3 /* h */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* key */
        start local 5 // java.lang.String key
         4: .line 486
            aload 3 /* h */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* value */
        start local 6 // java.lang.String value
         5: .line 487
            aload 5 /* key */
            invokevirtual java.lang.String.length:()I
            aload 6 /* value */
            invokevirtual java.lang.String.length:()I
            iadd
         6: .line 488
            iconst_3
         7: .line 487
            iadd
         8: .line 489
            iconst_2
         9: .line 487
            iadd
            istore 7 /* len */
        start local 7 // int len
        10: .line 490
            new java.lang.StringBuilder
            dup
            iload 7 /* len */
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* key */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 8 /* line */
        start local 8 // java.lang.String line
        11: .line 491
            aload 8 /* line */
            ldc "UTF-8"
            invokevirtual java.lang.String.getBytes:(Ljava/lang/String;)[B
            arraylength
            istore 9 /* actualLength */
        start local 9 // int actualLength
        12: .line 492
            goto 16
        13: .line 498
      StackMap locals: org.apache.commons.compress.archivers.tar.TarArchiveOutputStream java.util.Map java.io.StringWriter java.util.Map$Entry java.util.Iterator java.lang.String java.lang.String int java.lang.String int
      StackMap stack:
            iload 9 /* actualLength */
            istore 7 /* len */
        14: .line 499
            new java.lang.StringBuilder
            dup
            iload 7 /* len */
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* key */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 8 /* line */
        15: .line 500
            aload 8 /* line */
            ldc "UTF-8"
            invokevirtual java.lang.String.getBytes:(Ljava/lang/String;)[B
            arraylength
            istore 9 /* actualLength */
        16: .line 492
      StackMap locals:
      StackMap stack:
            iload 7 /* len */
            iload 9 /* actualLength */
            if_icmpne 13
        17: .line 502
            aload 2 /* w */
            aload 8 /* line */
            invokevirtual java.io.StringWriter.write:(Ljava/lang/String;)V
        end local 9 // int actualLength
        end local 8 // java.lang.String line
        end local 7 // int len
        end local 6 // java.lang.String value
        end local 5 // java.lang.String key
        end local 3 // java.util.Map$Entry h
        18: .line 484
      StackMap locals: org.apache.commons.compress.archivers.tar.TarArchiveOutputStream java.util.Map java.io.StringWriter top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        19: .line 504
            aload 2 /* w */
            invokevirtual java.io.StringWriter.toString:()Ljava/lang/String;
            ldc "UTF-8"
            invokevirtual java.lang.String.getBytes:(Ljava/lang/String;)[B
            areturn
        end local 2 // java.io.StringWriter w
        end local 1 // java.util.Map headers
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   20     0          this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0   20     1       headers  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            1   20     2             w  Ljava/io/StringWriter;
            3   18     3             h  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;
            4   18     5           key  Ljava/lang/String;
            5   18     6         value  Ljava/lang/String;
           10   18     7           len  I
           11   18     8          line  Ljava/lang/String;
           12   18     9  actualLength  I
    Exceptions:
      throws java.io.UnsupportedEncodingException
    Signature: (Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)[B
    MethodParameters:
         Name  Flags
      headers  

  private java.lang.String stripTo7Bits(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // java.lang.String name
         0: .line 508
            aload 1 /* name */
            invokevirtual java.lang.String.length:()I
            istore 2 /* length */
        start local 2 // int length
         1: .line 509
            new java.lang.StringBuilder
            dup
            iload 2 /* length */
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 3 /* result */
        start local 3 // java.lang.StringBuilder result
         2: .line 510
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 10
         4: .line 511
      StackMap locals: int java.lang.StringBuilder int
      StackMap stack:
            aload 1 /* name */
            iload 4 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            bipush 127
            iand
            i2c
            istore 5 /* stripped */
        start local 5 // char stripped
         5: .line 512
            aload 0 /* this */
            iload 5 /* stripped */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.shouldBeReplaced:(C)Z
            ifeq 8
         6: .line 513
            aload 3 /* result */
            ldc "_"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 514
            goto 9
         8: .line 515
      StackMap locals: int
      StackMap stack:
            aload 3 /* result */
            iload 5 /* stripped */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 5 // char stripped
         9: .line 510
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 4 /* i */
            iload 2 /* length */
            if_icmplt 4
        end local 4 // int i
        11: .line 518
            aload 3 /* result */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.lang.StringBuilder result
        end local 2 // int length
        end local 1 // java.lang.String name
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0   12     1      name  Ljava/lang/String;
            1   12     2    length  I
            2   12     3    result  Ljava/lang/StringBuilder;
            3   11     4         i  I
            5    9     5  stripped  C
    MethodParameters:
      Name  Flags
      name  final

  private boolean shouldBeReplaced(char);
    descriptor: (C)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // char c
         0: .line 526
            iload 1 /* c */
            ifeq 4
         1: .line 527
            iload 1 /* c */
            bipush 47
            if_icmpeq 4
         2: .line 528
            iload 1 /* c */
            bipush 92
            if_icmpeq 4
         3: .line 526
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_1
            ireturn
        end local 1 // char c
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0    5     1     c  C
    MethodParameters:
      Name  Flags
      c     final

  private void writeEOFRecord();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
         0: .line 536
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.recordBuf:[B
            iconst_0
            invokestatic java.util.Arrays.fill:([BB)V
         1: .line 537
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.recordBuf:[B
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.writeRecord:([B)V
         2: .line 538
            return
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
    Exceptions:
      throws java.io.IOException

  public void flush();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
         0: .line 542
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.out:Lorg/apache/commons/compress/utils/FixedLengthBlockOutputStream;
            invokevirtual org.apache.commons.compress.utils.FixedLengthBlockOutputStream.flush:()V
         1: .line 543
            return
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
    Exceptions:
      throws java.io.IOException

  public org.apache.commons.compress.archivers.ArchiveEntry createArchiveEntry(java.io.File, java.lang.String);
    descriptor: (Ljava/io/File;Ljava/lang/String;)Lorg/apache/commons/compress/archivers/ArchiveEntry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // java.io.File inputFile
        start local 2 // java.lang.String entryName
         0: .line 548
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.finished:Z
            ifeq 2
         1: .line 549
            new java.io.IOException
            dup
            ldc "Stream has already been finished"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 551
      StackMap locals:
      StackMap stack:
            new org.apache.commons.compress.archivers.tar.TarArchiveEntry
            dup
            aload 1 /* inputFile */
            aload 2 /* entryName */
            invokespecial org.apache.commons.compress.archivers.tar.TarArchiveEntry.<init>:(Ljava/io/File;Ljava/lang/String;)V
            areturn
        end local 2 // java.lang.String entryName
        end local 1 // java.io.File inputFile
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0    3     1  inputFile  Ljava/io/File;
            0    3     2  entryName  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      inputFile  final
      entryName  final

  private void writeRecord(byte[]);
    descriptor: ([B)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // byte[] record
         0: .line 561
            aload 1 /* record */
            arraylength
            sipush 512
            if_icmpeq 6
         1: .line 562
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "record to write has length '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 563
            aload 1 /* record */
            arraylength
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         3: .line 564
            ldc "' which is not the record size of '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 565
            sipush 512
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 562
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 568
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.out:Lorg/apache/commons/compress/utils/FixedLengthBlockOutputStream;
            aload 1 /* record */
            invokevirtual org.apache.commons.compress.utils.FixedLengthBlockOutputStream.write:([B)V
         7: .line 569
            aload 0 /* this */
            dup
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.recordsWritten:I
            iconst_1
            iadd
            putfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.recordsWritten:I
         8: .line 570
            return
        end local 1 // byte[] record
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0    9     1  record  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      record  final

  private void padAsNeeded();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
         0: .line 573
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.recordsWritten:I
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.recordsPerBlock:I
            irem
            istore 1 /* start */
        start local 1 // int start
         1: .line 574
            iload 1 /* start */
            ifeq 7
         2: .line 575
            iload 1 /* start */
            istore 2 /* i */
        start local 2 // int i
         3: goto 6
         4: .line 576
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.writeEOFRecord:()V
         5: .line 575
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.recordsPerBlock:I
            if_icmplt 4
        end local 2 // int i
         7: .line 579
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int start
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            1    8     1  start  I
            3    7     2      i  I
    Exceptions:
      throws java.io.IOException

  private void addPaxHeadersForBigNumbers(java.util.Map<java.lang.String, java.lang.String>, org.apache.commons.compress.archivers.tar.TarArchiveEntry);
    descriptor: (Ljava/util/Map;Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // java.util.Map paxHeaders
        start local 2 // org.apache.commons.compress.archivers.tar.TarArchiveEntry entry
         0: .line 583
            aload 0 /* this */
            aload 1 /* paxHeaders */
            ldc "size"
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getSize:()J
         1: .line 584
            ldc 8589934591
         2: .line 583
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.addPaxHeaderForBigNumber:(Ljava/util/Map;Ljava/lang/String;JJ)V
         3: .line 585
            aload 0 /* this */
            aload 1 /* paxHeaders */
            ldc "gid"
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getLongGroupId:()J
         4: .line 586
            ldc 2097151
         5: .line 585
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.addPaxHeaderForBigNumber:(Ljava/util/Map;Ljava/lang/String;JJ)V
         6: .line 587
            aload 0 /* this */
            aload 1 /* paxHeaders */
            ldc "mtime"
         7: .line 588
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getModTime:()Ljava/util/Date;
            invokevirtual java.util.Date.getTime:()J
            ldc 1000
            ldiv
         8: .line 589
            ldc 8589934591
         9: .line 587
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.addPaxHeaderForBigNumber:(Ljava/util/Map;Ljava/lang/String;JJ)V
        10: .line 590
            aload 0 /* this */
            aload 1 /* paxHeaders */
            ldc "uid"
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getLongUserId:()J
        11: .line 591
            ldc 2097151
        12: .line 590
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.addPaxHeaderForBigNumber:(Ljava/util/Map;Ljava/lang/String;JJ)V
        13: .line 593
            aload 0 /* this */
            aload 1 /* paxHeaders */
            ldc "SCHILY.devmajor"
        14: .line 594
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getDevMajor:()I
            i2l
            ldc 2097151
        15: .line 593
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.addPaxHeaderForBigNumber:(Ljava/util/Map;Ljava/lang/String;JJ)V
        16: .line 595
            aload 0 /* this */
            aload 1 /* paxHeaders */
            ldc "SCHILY.devminor"
        17: .line 596
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getDevMinor:()I
            i2l
            ldc 2097151
        18: .line 595
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.addPaxHeaderForBigNumber:(Ljava/util/Map;Ljava/lang/String;JJ)V
        19: .line 598
            aload 0 /* this */
            ldc "mode"
            aload 2 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getMode:()I
            i2l
            ldc 2097151
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.failForBigNumber:(Ljava/lang/String;JJ)V
        20: .line 599
            return
        end local 2 // org.apache.commons.compress.archivers.tar.TarArchiveEntry entry
        end local 1 // java.util.Map paxHeaders
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   21     0        this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0   21     1  paxHeaders  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            0   21     2       entry  Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;
    Signature: (Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;)V
    MethodParameters:
            Name  Flags
      paxHeaders  final
      entry       final

  private void addPaxHeaderForBigNumber(java.util.Map<java.lang.String, java.lang.String>, java.lang.String, long, );
    descriptor: (Ljava/util/Map;Ljava/lang/String;JJ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=5
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // java.util.Map paxHeaders
        start local 2 // java.lang.String header
        start local 3 // long value
        start local 5 // long maxValue
         0: .line 604
            lload 3 /* value */
            lconst_0
            lcmp
            iflt 1
            lload 3 /* value */
            lload 5 /* maxValue */
            lcmp
            ifle 2
         1: .line 605
      StackMap locals:
      StackMap stack:
            aload 1 /* paxHeaders */
            aload 2 /* header */
            lload 3 /* value */
            invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 607
      StackMap locals:
      StackMap stack:
            return
        end local 5 // long maxValue
        end local 3 // long value
        end local 2 // java.lang.String header
        end local 1 // java.util.Map paxHeaders
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0    3     1  paxHeaders  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            0    3     2      header  Ljava/lang/String;
            0    3     3       value  J
            0    3     5    maxValue  J
    Signature: (Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;Ljava/lang/String;JJ)V
    MethodParameters:
            Name  Flags
      paxHeaders  final
      header      final
      value       final
      maxValue    final

  private void failForBigNumbers(org.apache.commons.compress.archivers.tar.TarArchiveEntry);
    descriptor: (Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // org.apache.commons.compress.archivers.tar.TarArchiveEntry entry
         0: .line 610
            aload 0 /* this */
            ldc "entry size"
            aload 1 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getSize:()J
            ldc 8589934591
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.failForBigNumber:(Ljava/lang/String;JJ)V
         1: .line 611
            aload 0 /* this */
            ldc "group id"
            aload 1 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getLongGroupId:()J
            ldc 2097151
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.failForBigNumberWithPosixMessage:(Ljava/lang/String;JJ)V
         2: .line 612
            aload 0 /* this */
            ldc "last modification time"
         3: .line 613
            aload 1 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getModTime:()Ljava/util/Date;
            invokevirtual java.util.Date.getTime:()J
            ldc 1000
            ldiv
         4: .line 614
            ldc 8589934591
         5: .line 612
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.failForBigNumber:(Ljava/lang/String;JJ)V
         6: .line 615
            aload 0 /* this */
            ldc "user id"
            aload 1 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getLongUserId:()J
            ldc 2097151
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.failForBigNumber:(Ljava/lang/String;JJ)V
         7: .line 616
            aload 0 /* this */
            ldc "mode"
            aload 1 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getMode:()I
            i2l
            ldc 2097151
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.failForBigNumber:(Ljava/lang/String;JJ)V
         8: .line 617
            aload 0 /* this */
            ldc "major device number"
            aload 1 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getDevMajor:()I
            i2l
         9: .line 618
            ldc 2097151
        10: .line 617
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.failForBigNumber:(Ljava/lang/String;JJ)V
        11: .line 619
            aload 0 /* this */
            ldc "minor device number"
            aload 1 /* entry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getDevMinor:()I
            i2l
        12: .line 620
            ldc 2097151
        13: .line 619
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.failForBigNumber:(Ljava/lang/String;JJ)V
        14: .line 621
            return
        end local 1 // org.apache.commons.compress.archivers.tar.TarArchiveEntry entry
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   15     0   this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0   15     1  entry  Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;
    MethodParameters:
       Name  Flags
      entry  final

  private void failForBigNumber(java.lang.String, long, long);
    descriptor: (Ljava/lang/String;JJ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=6, args_size=4
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // java.lang.String field
        start local 2 // long value
        start local 4 // long maxValue
         0: .line 624
            aload 0 /* this */
            aload 1 /* field */
            lload 2 /* value */
            lload 4 /* maxValue */
            ldc ""
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.failForBigNumber:(Ljava/lang/String;JJLjava/lang/String;)V
         1: .line 625
            return
        end local 4 // long maxValue
        end local 2 // long value
        end local 1 // java.lang.String field
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0    2     1     field  Ljava/lang/String;
            0    2     2     value  J
            0    2     4  maxValue  J
    MethodParameters:
          Name  Flags
      field     final
      value     final
      maxValue  final

  private void failForBigNumberWithPosixMessage(java.lang.String, long, long);
    descriptor: (Ljava/lang/String;JJ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=6, args_size=4
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // java.lang.String field
        start local 2 // long value
        start local 4 // long maxValue
         0: .line 629
            aload 0 /* this */
            aload 1 /* field */
            lload 2 /* value */
            lload 4 /* maxValue */
         1: .line 630
            ldc " Use STAR or POSIX extensions to overcome this limit"
         2: .line 629
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.failForBigNumber:(Ljava/lang/String;JJLjava/lang/String;)V
         3: .line 631
            return
        end local 4 // long maxValue
        end local 2 // long value
        end local 1 // java.lang.String field
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0    4     1     field  Ljava/lang/String;
            0    4     2     value  J
            0    4     4  maxValue  J
    MethodParameters:
          Name  Flags
      field     final
      value     final
      maxValue  final

  private void failForBigNumber(java.lang.String, long, long, java.lang.String);
    descriptor: (Ljava/lang/String;JJLjava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // java.lang.String field
        start local 2 // long value
        start local 4 // long maxValue
        start local 6 // java.lang.String additionalMsg
         0: .line 635
            lload 2 /* value */
            lconst_0
            lcmp
            iflt 1
            lload 2 /* value */
            lload 4 /* maxValue */
            lcmp
            ifle 5
         1: .line 636
      StackMap locals:
      StackMap stack:
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            aload 1 /* field */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            lload 2 /* value */
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
         2: .line 637
            ldc "' is too big ( > "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 638
            lload 4 /* maxValue */
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " )."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* additionalMsg */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 636
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 640
      StackMap locals:
      StackMap stack:
            return
        end local 6 // java.lang.String additionalMsg
        end local 4 // long maxValue
        end local 2 // long value
        end local 1 // java.lang.String field
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0           this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0    6     1          field  Ljava/lang/String;
            0    6     2          value  J
            0    6     4       maxValue  J
            0    6     6  additionalMsg  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      field          final
      value          final
      maxValue       final
      additionalMsg  final

  private boolean handleLongName(org.apache.commons.compress.archivers.tar.TarArchiveEntry, java.lang.String, java.util.Map<java.lang.String, java.lang.String>, java.lang.String, byte, java.lang.String);
    descriptor: (Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;BLjava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=10, args_size=7
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // org.apache.commons.compress.archivers.tar.TarArchiveEntry entry
        start local 2 // java.lang.String name
        start local 3 // java.util.Map paxHeaders
        start local 4 // java.lang.String paxHeaderName
        start local 5 // byte linkType
        start local 6 // java.lang.String fieldName
         0: .line 663
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.zipEncoding:Lorg/apache/commons/compress/archivers/zip/ZipEncoding;
            aload 2 /* name */
            invokeinterface org.apache.commons.compress.archivers.zip.ZipEncoding.encode:(Ljava/lang/String;)Ljava/nio/ByteBuffer;
            astore 7 /* encodedName */
        start local 7 // java.nio.ByteBuffer encodedName
         1: .line 664
            aload 7 /* encodedName */
            invokevirtual java.nio.ByteBuffer.limit:()I
            aload 7 /* encodedName */
            invokevirtual java.nio.ByteBuffer.position:()I
            isub
            istore 8 /* len */
        start local 8 // int len
         2: .line 665
            iload 8 /* len */
            bipush 100
            if_icmplt 22
         3: .line 667
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.longFileMode:I
            iconst_3
            if_icmpne 6
         4: .line 668
            aload 3 /* paxHeaders */
            aload 4 /* paxHeaderName */
            aload 2 /* name */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 669
            iconst_1
            ireturn
         6: .line 670
      StackMap locals: java.nio.ByteBuffer int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.longFileMode:I
            iconst_2
            if_icmpne 17
         7: .line 673
            new org.apache.commons.compress.archivers.tar.TarArchiveEntry
            dup
            ldc "././@LongLink"
         8: .line 674
            iload 5 /* linkType */
         9: .line 673
            invokespecial org.apache.commons.compress.archivers.tar.TarArchiveEntry.<init>:(Ljava/lang/String;B)V
            astore 9 /* longLinkEntry */
        start local 9 // org.apache.commons.compress.archivers.tar.TarArchiveEntry longLinkEntry
        10: .line 676
            aload 9 /* longLinkEntry */
            iload 8 /* len */
            i2l
            lconst_1
            ladd
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.setSize:(J)V
        11: .line 677
            aload 0 /* this */
            aload 1 /* entry */
            aload 9 /* longLinkEntry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.transferModTime:(Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;)V
        12: .line 678
            aload 0 /* this */
            aload 9 /* longLinkEntry */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.putArchiveEntry:(Lorg/apache/commons/compress/archivers/ArchiveEntry;)V
        13: .line 679
            aload 0 /* this */
            aload 7 /* encodedName */
            invokevirtual java.nio.ByteBuffer.array:()[B
            aload 7 /* encodedName */
            invokevirtual java.nio.ByteBuffer.arrayOffset:()I
            iload 8 /* len */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.write:([BII)V
        14: .line 680
            aload 0 /* this */
            iconst_0
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.write:(I)V
        15: .line 681
            aload 0 /* this */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.closeArchiveEntry:()V
        end local 9 // org.apache.commons.compress.archivers.tar.TarArchiveEntry longLinkEntry
        16: .line 682
            goto 22
      StackMap locals:
      StackMap stack:
        17: aload 0 /* this */
            getfield org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.longFileMode:I
            iconst_1
            if_icmpeq 22
        18: .line 683
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            aload 6 /* fieldName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        19: .line 684
            ldc "' is too long ( > "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        20: .line 685
            bipush 100
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " bytes)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        21: .line 683
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        22: .line 688
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 8 // int len
        end local 7 // java.nio.ByteBuffer encodedName
        end local 6 // java.lang.String fieldName
        end local 5 // byte linkType
        end local 4 // java.lang.String paxHeaderName
        end local 3 // java.util.Map paxHeaders
        end local 2 // java.lang.String name
        end local 1 // org.apache.commons.compress.archivers.tar.TarArchiveEntry entry
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   23     0           this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0   23     1          entry  Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;
            0   23     2           name  Ljava/lang/String;
            0   23     3     paxHeaders  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            0   23     4  paxHeaderName  Ljava/lang/String;
            0   23     5       linkType  B
            0   23     6      fieldName  Ljava/lang/String;
            1   23     7    encodedName  Ljava/nio/ByteBuffer;
            2   23     8            len  I
           10   16     9  longLinkEntry  Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;
    Exceptions:
      throws java.io.IOException
    Signature: (Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;Ljava/lang/String;BLjava/lang/String;)Z
    MethodParameters:
               Name  Flags
      entry          final
      name           final
      paxHeaders     final
      paxHeaderName  final
      linkType       final
      fieldName      final

  private void transferModTime(org.apache.commons.compress.archivers.tar.TarArchiveEntry, org.apache.commons.compress.archivers.tar.TarArchiveEntry);
    descriptor: (Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
        start local 1 // org.apache.commons.compress.archivers.tar.TarArchiveEntry from
        start local 2 // org.apache.commons.compress.archivers.tar.TarArchiveEntry to
         0: .line 692
            aload 1 /* from */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.getModTime:()Ljava/util/Date;
            astore 3 /* fromModTime */
        start local 3 // java.util.Date fromModTime
         1: .line 693
            aload 3 /* fromModTime */
            invokevirtual java.util.Date.getTime:()J
            ldc 1000
            ldiv
            lstore 4 /* fromModTimeSeconds */
        start local 4 // long fromModTimeSeconds
         2: .line 694
            lload 4 /* fromModTimeSeconds */
            lconst_0
            lcmp
            iflt 3
            lload 4 /* fromModTimeSeconds */
            ldc 8589934591
            lcmp
            ifle 4
         3: .line 695
      StackMap locals: java.util.Date long
      StackMap stack:
            new java.util.Date
            dup
            lconst_0
            invokespecial java.util.Date.<init>:(J)V
            astore 3 /* fromModTime */
         4: .line 697
      StackMap locals:
      StackMap stack:
            aload 2 /* to */
            aload 3 /* fromModTime */
            invokevirtual org.apache.commons.compress.archivers.tar.TarArchiveEntry.setModTime:(Ljava/util/Date;)V
         5: .line 698
            return
        end local 4 // long fromModTimeSeconds
        end local 3 // java.util.Date fromModTime
        end local 2 // org.apache.commons.compress.archivers.tar.TarArchiveEntry to
        end local 1 // org.apache.commons.compress.archivers.tar.TarArchiveEntry from
        end local 0 // org.apache.commons.compress.archivers.tar.TarArchiveOutputStream this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    6     0                this  Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;
            0    6     1                from  Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;
            0    6     2                  to  Lorg/apache/commons/compress/archivers/tar/TarArchiveEntry;
            1    6     3         fromModTime  Ljava/util/Date;
            2    6     4  fromModTimeSeconds  J
    MethodParameters:
      Name  Flags
      from  final
      to    final
}
SourceFile: "TarArchiveOutputStream.java"
InnerClasses:
  public abstract Entry = java.util.Map$Entry of java.util.Map