public class com.sun.imageio.plugins.tiff.TIFFIFD extends javax.imageio.plugins.tiff.TIFFDirectory
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.imageio.plugins.tiff.TIFFIFD
  super_class: javax.imageio.plugins.tiff.TIFFDirectory
{
  private static final long MAX_SAMPLES_PER_PIXEL;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 65535

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

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

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

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

  private static volatile java.util.Set<java.lang.Integer> essentialTags;
    descriptor: Ljava/util/Set;
    flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE
    Signature: Ljava/util/Set<Ljava/lang/Integer;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 56
            aconst_null
            putstatic com.sun.imageio.plugins.tiff.TIFFIFD.essentialTags:Ljava/util/Set;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static void initializeEssentialTags();
    descriptor: ()V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=0
         0: .line 59
            getstatic com.sun.imageio.plugins.tiff.TIFFIFD.essentialTags:Ljava/util/Set;
            astore 0 /* tags */
        start local 0 // java.util.Set tags
         1: .line 60
            aload 0 /* tags */
            ifnonnull 37
         2: .line 61
            bipush 33
            anewarray java.lang.Integer
            dup
            iconst_0
         3: .line 62
            sipush 258
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
         4: .line 63
            sipush 320
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
         5: .line 64
            sipush 259
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
         6: .line 65
            sipush 338
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_4
         7: .line 66
            sipush 266
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_5
         8: .line 67
            ldc 34675
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 6
         9: .line 68
            sipush 257
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 7
        10: .line 69
            sipush 256
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 8
        11: .line 70
            sipush 521
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 9
        12: .line 71
            sipush 520
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 10
        13: .line 72
            sipush 513
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 11
        14: .line 73
            sipush 514
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 12
        15: .line 74
            sipush 512
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 13
        16: .line 75
            sipush 519
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 14
        17: .line 76
            sipush 515
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 15
        18: .line 77
            sipush 347
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 16
        19: .line 78
            sipush 262
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 17
        20: .line 79
            sipush 284
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 18
        21: .line 80
            sipush 317
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 19
        22: .line 81
            sipush 532
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 20
        23: .line 82
            sipush 278
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 21
        24: .line 83
            sipush 277
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 22
        25: .line 84
            sipush 339
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 23
        26: .line 85
            sipush 279
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 24
        27: .line 86
            sipush 273
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 25
        28: .line 87
            sipush 292
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 26
        29: .line 88
            sipush 293
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 27
        30: .line 89
            sipush 325
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 28
        31: .line 90
            sipush 323
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 29
        32: .line 91
            sipush 324
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 30
        33: .line 92
            sipush 322
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 31
        34: .line 93
            sipush 529
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 32
        35: .line 94
            sipush 530
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
        36: .line 61
            invokestatic java.util.Set.of:([Ljava/lang/Object;)Ljava/util/Set;
            dup
            astore 0 /* tags */
            putstatic com.sun.imageio.plugins.tiff.TIFFIFD.essentialTags:Ljava/util/Set;
        37: .line 97
      StackMap locals: java.util.Set
      StackMap stack:
            return
        end local 0 // java.util.Set tags
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1   38     0  tags  Ljava/util/Set<Ljava/lang/Integer;>;

  public static com.sun.imageio.plugins.tiff.TIFFIFD getDirectoryAsIFD(javax.imageio.plugins.tiff.TIFFDirectory);
    descriptor: (Ljavax/imageio/plugins/tiff/TIFFDirectory;)Lcom/sun/imageio/plugins/tiff/TIFFIFD;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=9, args_size=1
        start local 0 // javax.imageio.plugins.tiff.TIFFDirectory dir
         0: .line 103
            aload 0 /* dir */
            instanceof com.sun.imageio.plugins.tiff.TIFFIFD
            ifeq 2
         1: .line 104
            aload 0 /* dir */
            checkcast com.sun.imageio.plugins.tiff.TIFFIFD
            areturn
         2: .line 107
      StackMap locals:
      StackMap stack:
            new com.sun.imageio.plugins.tiff.TIFFIFD
            dup
            aload 0 /* dir */
            invokevirtual javax.imageio.plugins.tiff.TIFFDirectory.getTagSets:()[Ljavax/imageio/plugins/tiff/TIFFTagSet;
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
         3: .line 108
            aload 0 /* dir */
            invokevirtual javax.imageio.plugins.tiff.TIFFDirectory.getParentTag:()Ljavax/imageio/plugins/tiff/TIFFTag;
         4: .line 107
            invokespecial com.sun.imageio.plugins.tiff.TIFFIFD.<init>:(Ljava/util/List;Ljavax/imageio/plugins/tiff/TIFFTag;)V
            astore 1 /* ifd */
        start local 1 // com.sun.imageio.plugins.tiff.TIFFIFD ifd
         5: .line 109
            aload 0 /* dir */
            invokevirtual javax.imageio.plugins.tiff.TIFFDirectory.getTIFFFields:()[Ljavax/imageio/plugins/tiff/TIFFField;
            astore 2 /* fields */
        start local 2 // javax.imageio.plugins.tiff.TIFFField[] fields
         6: .line 110
            aload 2 /* fields */
            arraylength
            istore 3 /* numFields */
        start local 3 // int numFields
         7: .line 111
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         8: goto 28
         9: .line 112
      StackMap locals: javax.imageio.plugins.tiff.TIFFDirectory com.sun.imageio.plugins.tiff.TIFFIFD javax.imageio.plugins.tiff.TIFFField[] int int
      StackMap stack:
            aload 2 /* fields */
            iload 4 /* i */
            aaload
            astore 5 /* f */
        start local 5 // javax.imageio.plugins.tiff.TIFFField f
        10: .line 113
            aload 5 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getTag:()Ljavax/imageio/plugins/tiff/TIFFTag;
            astore 6 /* tag */
        start local 6 // javax.imageio.plugins.tiff.TIFFTag tag
        11: .line 114
            aload 6 /* tag */
            invokevirtual javax.imageio.plugins.tiff.TIFFTag.isIFDPointer:()Z
            ifeq 25
        12: .line 115
            aconst_null
            astore 7 /* subDir */
        start local 7 // javax.imageio.plugins.tiff.TIFFDirectory subDir
        13: .line 116
            aload 5 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.hasDirectory:()Z
            ifeq 16
        14: .line 117
            aload 5 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getDirectory:()Ljavax/imageio/plugins/tiff/TIFFDirectory;
            astore 7 /* subDir */
        15: .line 118
            goto 18
      StackMap locals: javax.imageio.plugins.tiff.TIFFField javax.imageio.plugins.tiff.TIFFTag javax.imageio.plugins.tiff.TIFFDirectory
      StackMap stack:
        16: aload 5 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getData:()Ljava/lang/Object;
            instanceof javax.imageio.plugins.tiff.TIFFDirectory
            ifeq 18
        17: .line 119
            aload 5 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getData:()Ljava/lang/Object;
            checkcast javax.imageio.plugins.tiff.TIFFDirectory
            astore 7 /* subDir */
        18: .line 121
      StackMap locals:
      StackMap stack:
            aload 7 /* subDir */
            ifnull 24
        19: .line 122
            aload 7 /* subDir */
            invokestatic com.sun.imageio.plugins.tiff.TIFFIFD.getDirectoryAsIFD:(Ljavax/imageio/plugins/tiff/TIFFDirectory;)Lcom/sun/imageio/plugins/tiff/TIFFIFD;
            astore 8 /* subIFD */
        start local 8 // javax.imageio.plugins.tiff.TIFFDirectory subIFD
        20: .line 123
            new javax.imageio.plugins.tiff.TIFFField
            dup
            aload 6 /* tag */
            aload 5 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getType:()I
            aload 5 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getCount:()I
            i2l
        21: .line 124
            aload 8 /* subIFD */
        22: .line 123
            invokespecial javax.imageio.plugins.tiff.TIFFField.<init>:(Ljavax/imageio/plugins/tiff/TIFFTag;IJLjavax/imageio/plugins/tiff/TIFFDirectory;)V
            astore 5 /* f */
        end local 8 // javax.imageio.plugins.tiff.TIFFDirectory subIFD
        23: .line 125
            goto 25
        24: .line 126
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 5 /* f */
        end local 7 // javax.imageio.plugins.tiff.TIFFDirectory subDir
        25: .line 129
      StackMap locals:
      StackMap stack:
            aload 5 /* f */
            ifnull 27
        26: .line 130
            aload 1 /* ifd */
            aload 5 /* f */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.addTIFFField:(Ljavax/imageio/plugins/tiff/TIFFField;)V
        end local 6 // javax.imageio.plugins.tiff.TIFFTag tag
        end local 5 // javax.imageio.plugins.tiff.TIFFField f
        27: .line 111
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 4 /* i */
            iload 3 /* numFields */
            if_icmplt 9
        end local 4 // int i
        29: .line 134
            aload 1 /* ifd */
            areturn
        end local 3 // int numFields
        end local 2 // javax.imageio.plugins.tiff.TIFFField[] fields
        end local 1 // com.sun.imageio.plugins.tiff.TIFFIFD ifd
        end local 0 // javax.imageio.plugins.tiff.TIFFDirectory dir
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   30     0        dir  Ljavax/imageio/plugins/tiff/TIFFDirectory;
            5   30     1        ifd  Lcom/sun/imageio/plugins/tiff/TIFFIFD;
            6   30     2     fields  [Ljavax/imageio/plugins/tiff/TIFFField;
            7   30     3  numFields  I
            8   29     4          i  I
           10   27     5          f  Ljavax/imageio/plugins/tiff/TIFFField;
           11   27     6        tag  Ljavax/imageio/plugins/tiff/TIFFTag;
           13   25     7     subDir  Ljavax/imageio/plugins/tiff/TIFFDirectory;
           20   23     8     subIFD  Ljavax/imageio/plugins/tiff/TIFFDirectory;
    MethodParameters:
      Name  Flags
      dir   

  public static javax.imageio.plugins.tiff.TIFFTag getTag(int, java.util.List<javax.imageio.plugins.tiff.TIFFTagSet>);
    descriptor: (ILjava/util/List;)Ljavax/imageio/plugins/tiff/TIFFTag;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // int tagNumber
        start local 1 // java.util.List tagSets
         0: .line 138
            aload 1 /* tagSets */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2 /* iter */
        start local 2 // java.util.Iterator iter
         1: .line 139
            goto 6
         2: .line 140
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 2 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.imageio.plugins.tiff.TIFFTagSet
            astore 3 /* tagSet */
        start local 3 // javax.imageio.plugins.tiff.TIFFTagSet tagSet
         3: .line 141
            aload 3 /* tagSet */
            iload 0 /* tagNumber */
            invokevirtual javax.imageio.plugins.tiff.TIFFTagSet.getTag:(I)Ljavax/imageio/plugins/tiff/TIFFTag;
            astore 4 /* tag */
        start local 4 // javax.imageio.plugins.tiff.TIFFTag tag
         4: .line 142
            aload 4 /* tag */
            ifnull 6
         5: .line 143
            aload 4 /* tag */
            areturn
        end local 4 // javax.imageio.plugins.tiff.TIFFTag tag
        end local 3 // javax.imageio.plugins.tiff.TIFFTagSet tagSet
         6: .line 139
      StackMap locals:
      StackMap stack:
            aload 2 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         7: .line 147
            aconst_null
            areturn
        end local 2 // java.util.Iterator iter
        end local 1 // java.util.List tagSets
        end local 0 // int tagNumber
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0  tagNumber  I
            0    8     1    tagSets  Ljava/util/List<Ljavax/imageio/plugins/tiff/TIFFTagSet;>;
            1    8     2       iter  Ljava/util/Iterator<Ljavax/imageio/plugins/tiff/TIFFTagSet;>;
            3    6     3     tagSet  Ljavax/imageio/plugins/tiff/TIFFTagSet;
            4    6     4        tag  Ljavax/imageio/plugins/tiff/TIFFTag;
    Signature: (ILjava/util/List<Ljavax/imageio/plugins/tiff/TIFFTagSet;>;)Ljavax/imageio/plugins/tiff/TIFFTag;
    MethodParameters:
           Name  Flags
      tagNumber  
      tagSets    

  public static javax.imageio.plugins.tiff.TIFFTag getTag(java.lang.String, java.util.List<javax.imageio.plugins.tiff.TIFFTagSet>);
    descriptor: (Ljava/lang/String;Ljava/util/List;)Ljavax/imageio/plugins/tiff/TIFFTag;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // java.lang.String tagName
        start local 1 // java.util.List tagSets
         0: .line 151
            aload 1 /* tagSets */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2 /* iter */
        start local 2 // java.util.Iterator iter
         1: .line 152
            goto 6
         2: .line 153
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 2 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.imageio.plugins.tiff.TIFFTagSet
            astore 3 /* tagSet */
        start local 3 // javax.imageio.plugins.tiff.TIFFTagSet tagSet
         3: .line 154
            aload 3 /* tagSet */
            aload 0 /* tagName */
            invokevirtual javax.imageio.plugins.tiff.TIFFTagSet.getTag:(Ljava/lang/String;)Ljavax/imageio/plugins/tiff/TIFFTag;
            astore 4 /* tag */
        start local 4 // javax.imageio.plugins.tiff.TIFFTag tag
         4: .line 155
            aload 4 /* tag */
            ifnull 6
         5: .line 156
            aload 4 /* tag */
            areturn
        end local 4 // javax.imageio.plugins.tiff.TIFFTag tag
        end local 3 // javax.imageio.plugins.tiff.TIFFTagSet tagSet
         6: .line 152
      StackMap locals:
      StackMap stack:
            aload 2 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         7: .line 160
            aconst_null
            areturn
        end local 2 // java.util.Iterator iter
        end local 1 // java.util.List tagSets
        end local 0 // java.lang.String tagName
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0  tagName  Ljava/lang/String;
            0    8     1  tagSets  Ljava/util/List<Ljavax/imageio/plugins/tiff/TIFFTagSet;>;
            1    8     2     iter  Ljava/util/Iterator<Ljavax/imageio/plugins/tiff/TIFFTagSet;>;
            3    6     3   tagSet  Ljavax/imageio/plugins/tiff/TIFFTagSet;
            4    6     4      tag  Ljavax/imageio/plugins/tiff/TIFFTag;
    Signature: (Ljava/lang/String;Ljava/util/List<Ljavax/imageio/plugins/tiff/TIFFTagSet;>;)Ljavax/imageio/plugins/tiff/TIFFTag;
    MethodParameters:
         Name  Flags
      tagName  
      tagSets  

  private static void writeTIFFFieldToStream(javax.imageio.plugins.tiff.TIFFField, javax.imageio.stream.ImageOutputStream);
    descriptor: (Ljavax/imageio/plugins/tiff/TIFFField;Ljavax/imageio/stream/ImageOutputStream;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=9, args_size=2
        start local 0 // javax.imageio.plugins.tiff.TIFFField field
        start local 1 // javax.imageio.stream.ImageOutputStream stream
         0: .line 166
            aload 0 /* field */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getCount:()I
            istore 2 /* count */
        start local 2 // int count
         1: .line 167
            aload 0 /* field */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getData:()Ljava/lang/Object;
            astore 3 /* data */
        start local 3 // java.lang.Object data
         2: .line 169
            aload 0 /* field */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getType:()I
            tableswitch { // 1 - 13
                    1: 16
                    2: 3
                    3: 18
                    4: 24
                    5: 43
                    6: 16
                    7: 16
                    8: 20
                    9: 22
                   10: 36
                   11: 32
                   12: 34
                   13: 30
              default: 51
          }
         3: .line 171
      StackMap locals: int java.lang.Object
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 14
         5: .line 172
      StackMap locals: int
      StackMap stack:
            aload 3 /* data */
            checkcast java.lang.String[]
            iload 4 /* i */
            aaload
            astore 5 /* s */
        start local 5 // java.lang.String s
         6: .line 173
            aload 5 /* s */
            invokevirtual java.lang.String.length:()I
            istore 6 /* length */
        start local 6 // int length
         7: .line 174
            iconst_0
            istore 7 /* j */
        start local 7 // int j
         8: goto 11
         9: .line 175
      StackMap locals: java.lang.String int int
      StackMap stack:
            aload 1 /* stream */
            aload 5 /* s */
            iload 7 /* j */
            invokevirtual java.lang.String.charAt:(I)C
            sipush 255
            iand
            invokeinterface javax.imageio.stream.ImageOutputStream.writeByte:(I)V
        10: .line 174
            iinc 7 /* j */ 1
      StackMap locals:
      StackMap stack:
        11: iload 7 /* j */
            iload 6 /* length */
            if_icmplt 9
        end local 7 // int j
        12: .line 177
            aload 1 /* stream */
            iconst_0
            invokeinterface javax.imageio.stream.ImageOutputStream.writeByte:(I)V
        end local 6 // int length
        end local 5 // java.lang.String s
        13: .line 171
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 4 /* i */
            iload 2 /* count */
            if_icmplt 5
        end local 4 // int i
        15: .line 179
            goto 51
        16: .line 183
      StackMap locals:
      StackMap stack:
            aload 1 /* stream */
            aload 3 /* data */
            checkcast byte[]
            invokeinterface javax.imageio.stream.ImageOutputStream.write:([B)V
        17: .line 184
            goto 51
        18: .line 186
      StackMap locals:
      StackMap stack:
            aload 1 /* stream */
            aload 3 /* data */
            checkcast char[]
            iconst_0
            aload 3 /* data */
            checkcast char[]
            arraylength
            invokeinterface javax.imageio.stream.ImageOutputStream.writeChars:([CII)V
        19: .line 187
            goto 51
        20: .line 189
      StackMap locals:
      StackMap stack:
            aload 1 /* stream */
            aload 3 /* data */
            checkcast short[]
            iconst_0
            aload 3 /* data */
            checkcast short[]
            arraylength
            invokeinterface javax.imageio.stream.ImageOutputStream.writeShorts:([SII)V
        21: .line 190
            goto 51
        22: .line 192
      StackMap locals:
      StackMap stack:
            aload 1 /* stream */
            aload 3 /* data */
            checkcast int[]
            iconst_0
            aload 3 /* data */
            checkcast int[]
            arraylength
            invokeinterface javax.imageio.stream.ImageOutputStream.writeInts:([III)V
        23: .line 193
            goto 51
        24: .line 195
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        25: goto 28
        26: .line 196
      StackMap locals: int
      StackMap stack:
            aload 1 /* stream */
            aload 3 /* data */
            checkcast long[]
            iload 4 /* i */
            laload
            l2i
            invokeinterface javax.imageio.stream.ImageOutputStream.writeInt:(I)V
        27: .line 195
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 4 /* i */
            iload 2 /* count */
            if_icmplt 26
        end local 4 // int i
        29: .line 198
            goto 51
        30: .line 200
      StackMap locals:
      StackMap stack:
            aload 1 /* stream */
            iconst_0
            invokeinterface javax.imageio.stream.ImageOutputStream.writeInt:(I)V
        31: .line 201
            goto 51
        32: .line 203
      StackMap locals:
      StackMap stack:
            aload 1 /* stream */
            aload 3 /* data */
            checkcast float[]
            iconst_0
            aload 3 /* data */
            checkcast float[]
            arraylength
            invokeinterface javax.imageio.stream.ImageOutputStream.writeFloats:([FII)V
        33: .line 204
            goto 51
        34: .line 206
      StackMap locals:
      StackMap stack:
            aload 1 /* stream */
            aload 3 /* data */
            checkcast double[]
            iconst_0
            aload 3 /* data */
            checkcast double[]
            arraylength
            invokeinterface javax.imageio.stream.ImageOutputStream.writeDoubles:([DII)V
        35: .line 207
            goto 51
        36: .line 209
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        37: goto 41
        38: .line 210
      StackMap locals: int
      StackMap stack:
            aload 1 /* stream */
            aload 3 /* data */
            checkcast int[][]
            iload 4 /* i */
            aaload
            iconst_0
            iaload
            invokeinterface javax.imageio.stream.ImageOutputStream.writeInt:(I)V
        39: .line 211
            aload 1 /* stream */
            aload 3 /* data */
            checkcast int[][]
            iload 4 /* i */
            aaload
            iconst_1
            iaload
            invokeinterface javax.imageio.stream.ImageOutputStream.writeInt:(I)V
        40: .line 209
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        41: iload 4 /* i */
            iload 2 /* count */
            if_icmplt 38
        end local 4 // int i
        42: .line 213
            goto 51
        43: .line 215
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        44: goto 50
        45: .line 216
      StackMap locals: int
      StackMap stack:
            aload 3 /* data */
            checkcast long[][]
            iload 4 /* i */
            aaload
            iconst_0
            laload
            lstore 5 /* num */
        start local 5 // long num
        46: .line 217
            aload 3 /* data */
            checkcast long[][]
            iload 4 /* i */
            aaload
            iconst_1
            laload
            lstore 7 /* den */
        start local 7 // long den
        47: .line 218
            aload 1 /* stream */
            lload 5 /* num */
            l2i
            invokeinterface javax.imageio.stream.ImageOutputStream.writeInt:(I)V
        48: .line 219
            aload 1 /* stream */
            lload 7 /* den */
            l2i
            invokeinterface javax.imageio.stream.ImageOutputStream.writeInt:(I)V
        end local 7 // long den
        end local 5 // long num
        49: .line 215
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        50: iload 4 /* i */
            iload 2 /* count */
            if_icmplt 45
        end local 4 // int i
        51: .line 225
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.Object data
        end local 2 // int count
        end local 1 // javax.imageio.stream.ImageOutputStream stream
        end local 0 // javax.imageio.plugins.tiff.TIFFField field
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   52     0   field  Ljavax/imageio/plugins/tiff/TIFFField;
            0   52     1  stream  Ljavax/imageio/stream/ImageOutputStream;
            1   52     2   count  I
            2   52     3    data  Ljava/lang/Object;
            4   15     4       i  I
            6   13     5       s  Ljava/lang/String;
            7   13     6  length  I
            8   12     7       j  I
           25   29     4       i  I
           37   42     4       i  I
           44   51     4       i  I
           46   49     5     num  J
           47   49     7     den  J
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      field   
      stream  

  public void <init>(java.util.List<javax.imageio.plugins.tiff.TIFFTagSet>, javax.imageio.plugins.tiff.TIFFTag);
    descriptor: (Ljava/util/List;Ljavax/imageio/plugins/tiff/TIFFTag;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
        start local 1 // java.util.List tagSets
        start local 2 // javax.imageio.plugins.tiff.TIFFTag parentTag
         0: .line 228
            aload 0 /* this */
            aload 1 /* tagSets */
            aload 1 /* tagSets */
            invokeinterface java.util.List.size:()I
            anewarray javax.imageio.plugins.tiff.TIFFTagSet
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast javax.imageio.plugins.tiff.TIFFTagSet[]
         1: .line 229
            aload 2 /* parentTag */
            invokespecial javax.imageio.plugins.tiff.TIFFDirectory.<init>:([Ljavax/imageio/plugins/tiff/TIFFTagSet;Ljavax/imageio/plugins/tiff/TIFFTag;)V
         2: .line 48
            aload 0 /* this */
            ldc -1
            putfield com.sun.imageio.plugins.tiff.TIFFIFD.stripOrTileByteCountsPosition:J
         3: .line 49
            aload 0 /* this */
            ldc -1
            putfield com.sun.imageio.plugins.tiff.TIFFIFD.stripOrTileOffsetsPosition:J
         4: .line 50
            aload 0 /* this */
            ldc -1
            putfield com.sun.imageio.plugins.tiff.TIFFIFD.lastPosition:J
         5: .line 230
            return
        end local 2 // javax.imageio.plugins.tiff.TIFFTag parentTag
        end local 1 // java.util.List tagSets
        end local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lcom/sun/imageio/plugins/tiff/TIFFIFD;
            0    6     1    tagSets  Ljava/util/List<Ljavax/imageio/plugins/tiff/TIFFTagSet;>;
            0    6     2  parentTag  Ljavax/imageio/plugins/tiff/TIFFTag;
    Signature: (Ljava/util/List<Ljavax/imageio/plugins/tiff/TIFFTagSet;>;Ljavax/imageio/plugins/tiff/TIFFTag;)V
    MethodParameters:
           Name  Flags
      tagSets    
      parentTag  

  public void <init>(java.util.List<javax.imageio.plugins.tiff.TIFFTagSet>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
        start local 1 // java.util.List tagSets
         0: .line 233
            aload 0 /* this */
            aload 1 /* tagSets */
            aconst_null
            invokespecial com.sun.imageio.plugins.tiff.TIFFIFD.<init>:(Ljava/util/List;Ljavax/imageio/plugins/tiff/TIFFTag;)V
         1: .line 234
            return
        end local 1 // java.util.List tagSets
        end local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/sun/imageio/plugins/tiff/TIFFIFD;
            0    2     1  tagSets  Ljava/util/List<Ljavax/imageio/plugins/tiff/TIFFTagSet;>;
    Signature: (Ljava/util/List<Ljavax/imageio/plugins/tiff/TIFFTagSet;>;)V
    MethodParameters:
         Name  Flags
      tagSets  

  public java.util.List<javax.imageio.plugins.tiff.TIFFTagSet> getTagSetList();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
         0: .line 237
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTagSets:()[Ljavax/imageio/plugins/tiff/TIFFTagSet;
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            areturn
        end local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/imageio/plugins/tiff/TIFFIFD;
    Signature: ()Ljava/util/List<Ljavax/imageio/plugins/tiff/TIFFTagSet;>;

  public java.util.Iterator<javax.imageio.plugins.tiff.TIFFField> iterator();
    descriptor: ()Ljava/util/Iterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
         0: .line 248
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTIFFFields:()[Ljavax/imageio/plugins/tiff/TIFFField;
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            areturn
        end local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/imageio/plugins/tiff/TIFFIFD;
    Signature: ()Ljava/util/Iterator<Ljavax/imageio/plugins/tiff/TIFFField;>;

  private static int readFieldValue(javax.imageio.stream.ImageInputStream, int, int, java.lang.Object[]);
    descriptor: (Ljavax/imageio/stream/ImageInputStream;II[Ljava/lang/Object;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=20, args_size=4
        start local 0 // javax.imageio.stream.ImageInputStream stream
        start local 1 // int type
        start local 2 // int count
        start local 3 // java.lang.Object[] data
         0: .line 267
            iload 1 /* type */
            tableswitch { // 1 - 13
                    1: 1
                    2: 1
                    3: 61
                    4: 96
                    5: 131
                    6: 1
                    7: 1
                    8: 172
                    9: 203
                   10: 234
                   11: 271
                   12: 302
                   13: 96
              default: 333
          }
         1: .line 272
      StackMap locals:
      StackMap stack:
            iload 1 /* type */
            iconst_2
            if_icmpne 36
         2: .line 273
            iload 2 /* count */
            newarray 8
            astore 5 /* bvalues */
        start local 5 // byte[] bvalues
         3: .line 274
            aload 0 /* stream */
            aload 5 /* bvalues */
            iconst_0
            iload 2 /* count */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([BII)V
         4: .line 276
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* v */
        start local 6 // java.util.ArrayList v
         5: .line 277
            iconst_0
            istore 7 /* inString */
        start local 7 // boolean inString
         6: .line 278
            iconst_0
            istore 8 /* prevIndex */
        start local 8 // int prevIndex
         7: .line 279
            iconst_0
            istore 9 /* index */
        start local 9 // int index
         8: goto 22
         9: .line 280
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top byte[] java.util.ArrayList int int int
      StackMap stack:
            iload 9 /* index */
            iload 2 /* count */
            if_icmpge 14
            aload 5 /* bvalues */
            iload 9 /* index */
            baload
            ifeq 14
        10: .line 281
            iload 7 /* inString */
            ifne 21
        11: .line 283
            iload 9 /* index */
            istore 8 /* prevIndex */
        12: .line 284
            iconst_1
            istore 7 /* inString */
        13: .line 286
            goto 21
        14: .line 287
      StackMap locals:
      StackMap stack:
            iload 7 /* inString */
            ifeq 21
        15: .line 289
            new java.lang.String
            dup
            aload 5 /* bvalues */
            iload 8 /* prevIndex */
        16: .line 290
            iload 9 /* index */
            iload 8 /* prevIndex */
            isub
        17: .line 291
            getstatic java.nio.charset.StandardCharsets.US_ASCII:Ljava/nio/charset/Charset;
        18: .line 289
            invokespecial java.lang.String.<init>:([BIILjava/nio/charset/Charset;)V
            astore 10 /* s */
        start local 10 // java.lang.String s
        19: .line 292
            aload 6 /* v */
            aload 10 /* s */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        20: .line 293
            iconst_0
            istore 7 /* inString */
        end local 10 // java.lang.String s
        21: .line 279
      StackMap locals:
      StackMap stack:
            iinc 9 /* index */ 1
      StackMap locals:
      StackMap stack:
        22: iload 9 /* index */
            iload 2 /* count */
            if_icmple 9
        end local 9 // int index
        23: .line 298
            aload 6 /* v */
            invokevirtual java.util.ArrayList.size:()I
            istore 2 /* count */
        24: .line 300
            iload 2 /* count */
            ifeq 32
        25: .line 301
            iload 2 /* count */
            anewarray java.lang.String
            astore 9 /* strings */
        start local 9 // java.lang.String[] strings
        26: .line 302
            iconst_0
            istore 10 /* c */
        start local 10 // int c
        27: goto 30
        28: .line 303
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top byte[] java.util.ArrayList int int java.lang.String[] int
      StackMap stack:
            aload 9 /* strings */
            iload 10 /* c */
            aload 6 /* v */
            iload 10 /* c */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            aastore
        29: .line 302
            iinc 10 /* c */ 1
      StackMap locals:
      StackMap stack:
        30: iload 10 /* c */
            iload 2 /* count */
            if_icmplt 28
        end local 10 // int c
        31: .line 305
            goto 34
        end local 9 // java.lang.String[] strings
        32: .line 309
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 2 /* count */
        33: .line 310
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc ""
            aastore
            astore 9 /* strings */
        start local 9 // java.lang.String[] strings
        34: .line 313
      StackMap locals: java.lang.String[]
      StackMap stack:
            aload 9 /* strings */
            astore 4 /* obj */
        end local 9 // java.lang.String[] strings
        end local 8 // int prevIndex
        end local 7 // boolean inString
        end local 6 // java.util.ArrayList v
        end local 5 // byte[] bvalues
        start local 4 // java.lang.Object obj
        35: .line 314
            goto 334
        end local 4 // java.lang.Object obj
        36: .line 315
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[]
      StackMap stack:
            iload 2 /* count */
            ldc 1024000
            if_icmpge 41
        37: .line 316
            iload 2 /* count */
            newarray 8
            astore 5 /* bvalues */
        start local 5 // byte[] bvalues
        38: .line 317
            aload 0 /* stream */
            aload 5 /* bvalues */
            iconst_0
            iload 2 /* count */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([BII)V
        39: .line 318
            aload 5 /* bvalues */
            astore 4 /* obj */
        end local 5 // byte[] bvalues
        start local 4 // java.lang.Object obj
        40: .line 319
            goto 334
        end local 4 // java.lang.Object obj
        41: .line 320
      StackMap locals:
      StackMap stack:
            iload 2 /* count */
            istore 5 /* bytesToRead */
        start local 5 // int bytesToRead
        42: .line 321
            iconst_0
            istore 6 /* bytesRead */
        start local 6 // int bytesRead
        43: .line 322
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 7 /* bufs */
        start local 7 // java.util.List bufs
        44: .line 323
            goto 51
        45: .line 324
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top int int java.util.List
      StackMap stack:
            iload 5 /* bytesToRead */
            ldc 1024000
            invokestatic java.lang.Math.min:(II)I
            istore 8 /* sz */
        start local 8 // int sz
        46: .line 325
            iload 8 /* sz */
            newarray 8
            astore 9 /* unit */
        start local 9 // byte[] unit
        47: .line 326
            aload 0 /* stream */
            aload 9 /* unit */
            iload 6 /* bytesRead */
            iload 8 /* sz */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([BII)V
        48: .line 327
            aload 7 /* bufs */
            aload 9 /* unit */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        49: .line 328
            iload 6 /* bytesRead */
            iload 8 /* sz */
            iadd
            istore 6 /* bytesRead */
        50: .line 329
            iload 5 /* bytesToRead */
            iload 8 /* sz */
            isub
            istore 5 /* bytesToRead */
        end local 9 // byte[] unit
        end local 8 // int sz
        51: .line 323
      StackMap locals:
      StackMap stack:
            iload 5 /* bytesToRead */
            ifne 45
        52: .line 331
            iload 6 /* bytesRead */
            newarray 8
            astore 8 /* tagData */
        start local 8 // byte[] tagData
        53: .line 332
            iconst_0
            istore 9 /* copiedBytes */
        start local 9 // int copiedBytes
        54: .line 333
            aload 7 /* bufs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 11
            goto 58
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top int int java.util.List byte[] int top java.util.Iterator
      StackMap stack:
        55: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast byte[]
            astore 10 /* ba */
        start local 10 // byte[] ba
        56: .line 334
            aload 10 /* ba */
            iconst_0
            aload 8 /* tagData */
            iload 9 /* copiedBytes */
            aload 10 /* ba */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        57: .line 335
            iload 9 /* copiedBytes */
            aload 10 /* ba */
            arraylength
            iadd
            istore 9 /* copiedBytes */
        end local 10 // byte[] ba
        58: .line 333
      StackMap locals:
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 55
        59: .line 337
            aload 8 /* tagData */
            astore 4 /* obj */
        end local 9 // int copiedBytes
        end local 8 // byte[] tagData
        end local 7 // java.util.List bufs
        end local 6 // int bytesRead
        end local 5 // int bytesToRead
        start local 4 // java.lang.Object obj
        60: .line 340
            goto 334
        end local 4 // java.lang.Object obj
        61: .line 344
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[]
      StackMap stack:
            ldc 1024000
            iconst_3
            invokestatic javax.imageio.plugins.tiff.TIFFTag.getSizeOfType:(I)I
            idiv
        62: .line 343
            istore 5 /* SHORT_TILE_SIZE */
        start local 5 // int SHORT_TILE_SIZE
        63: .line 345
            iload 2 /* count */
            iload 5 /* SHORT_TILE_SIZE */
            if_icmpge 72
        64: .line 346
            iload 2 /* count */
            newarray 5
            astore 6 /* cvalues */
        start local 6 // char[] cvalues
        65: .line 347
            iconst_0
            istore 7 /* j */
        start local 7 // int j
        66: goto 69
        67: .line 348
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top int char[] int
      StackMap stack:
            aload 6 /* cvalues */
            iload 7 /* j */
            aload 0 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
            i2c
            castore
        68: .line 347
            iinc 7 /* j */ 1
      StackMap locals:
      StackMap stack:
        69: iload 7 /* j */
            iload 2 /* count */
            if_icmplt 67
        end local 7 // int j
        70: .line 350
            aload 6 /* cvalues */
            astore 4 /* obj */
        end local 6 // char[] cvalues
        start local 4 // java.lang.Object obj
        71: .line 351
            goto 334
        end local 4 // java.lang.Object obj
        72: .line 352
      StackMap locals:
      StackMap stack:
            iload 2 /* count */
            istore 6 /* charsToRead */
        start local 6 // int charsToRead
        73: .line 353
            iconst_0
            istore 7 /* charsRead */
        start local 7 // int charsRead
        74: .line 354
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* bufs */
        start local 8 // java.util.List bufs
        75: .line 355
            goto 86
        76: .line 356
      StackMap locals: int int java.util.List
      StackMap stack:
            iload 6 /* charsToRead */
            iload 5 /* SHORT_TILE_SIZE */
            invokestatic java.lang.Math.min:(II)I
            istore 9 /* sz */
        start local 9 // int sz
        77: .line 357
            iload 9 /* sz */
            newarray 5
            astore 10 /* unit */
        start local 10 // char[] unit
        78: .line 358
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        79: goto 82
        80: .line 359
      StackMap locals: int char[] int
      StackMap stack:
            aload 10 /* unit */
            iload 11 /* i */
            aload 0 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
            i2c
            castore
        81: .line 358
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        82: iload 11 /* i */
            iload 9 /* sz */
            if_icmplt 80
        end local 11 // int i
        83: .line 361
            aload 8 /* bufs */
            aload 10 /* unit */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        84: .line 362
            iload 7 /* charsRead */
            iload 9 /* sz */
            iadd
            istore 7 /* charsRead */
        85: .line 363
            iload 6 /* charsToRead */
            iload 9 /* sz */
            isub
            istore 6 /* charsToRead */
        end local 10 // char[] unit
        end local 9 // int sz
        86: .line 355
      StackMap locals:
      StackMap stack:
            iload 6 /* charsToRead */
            ifne 76
        87: .line 365
            iload 7 /* charsRead */
            newarray 5
            astore 9 /* tagData */
        start local 9 // char[] tagData
        88: .line 366
            iconst_0
            istore 10 /* copiedChars */
        start local 10 // int copiedChars
        89: .line 367
            aload 8 /* bufs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 12
            goto 93
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top int int int java.util.List char[] int top java.util.Iterator
      StackMap stack:
        90: aload 12
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast char[]
            astore 11 /* ca */
        start local 11 // char[] ca
        91: .line 368
            aload 11 /* ca */
            iconst_0
            aload 9 /* tagData */
            iload 10 /* copiedChars */
            aload 11 /* ca */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        92: .line 369
            iload 10 /* copiedChars */
            aload 11 /* ca */
            arraylength
            iadd
            istore 10 /* copiedChars */
        end local 11 // char[] ca
        93: .line 367
      StackMap locals:
      StackMap stack:
            aload 12
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 90
        94: .line 371
            aload 9 /* tagData */
            astore 4 /* obj */
        end local 10 // int copiedChars
        end local 9 // char[] tagData
        end local 8 // java.util.List bufs
        end local 7 // int charsRead
        end local 6 // int charsToRead
        start local 4 // java.lang.Object obj
        95: .line 373
            goto 334
        end local 5 // int SHORT_TILE_SIZE
        end local 4 // java.lang.Object obj
        96: .line 378
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[]
      StackMap stack:
            ldc 1024000
            iconst_4
            invokestatic javax.imageio.plugins.tiff.TIFFTag.getSizeOfType:(I)I
            idiv
        97: .line 377
            istore 6 /* LONG_TILE_SIZE */
        start local 6 // int LONG_TILE_SIZE
        98: .line 379
            iload 2 /* count */
            iload 6 /* LONG_TILE_SIZE */
            if_icmpge 107
        99: .line 380
            iload 2 /* count */
            newarray 11
            astore 7 /* lvalues */
        start local 7 // long[] lvalues
       100: .line 381
            iconst_0
            istore 8 /* j */
        start local 8 // int j
       101: goto 104
       102: .line 382
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top int long[] int
      StackMap stack:
            aload 7 /* lvalues */
            iload 8 /* j */
            aload 0 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            lastore
       103: .line 381
            iinc 8 /* j */ 1
      StackMap locals:
      StackMap stack:
       104: iload 8 /* j */
            iload 2 /* count */
            if_icmplt 102
        end local 8 // int j
       105: .line 384
            aload 7 /* lvalues */
            astore 4 /* obj */
        end local 7 // long[] lvalues
        start local 4 // java.lang.Object obj
       106: .line 385
            goto 334
        end local 4 // java.lang.Object obj
       107: .line 386
      StackMap locals:
      StackMap stack:
            iload 2 /* count */
            istore 7 /* longsToRead */
        start local 7 // int longsToRead
       108: .line 387
            iconst_0
            istore 8 /* longsRead */
        start local 8 // int longsRead
       109: .line 388
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 9 /* bufs */
        start local 9 // java.util.List bufs
       110: .line 389
            goto 121
       111: .line 390
      StackMap locals: int int java.util.List
      StackMap stack:
            iload 7 /* longsToRead */
            iload 6 /* LONG_TILE_SIZE */
            invokestatic java.lang.Math.min:(II)I
            istore 10 /* sz */
        start local 10 // int sz
       112: .line 391
            iload 10 /* sz */
            newarray 11
            astore 11 /* unit */
        start local 11 // long[] unit
       113: .line 392
            iconst_0
            istore 12 /* i */
        start local 12 // int i
       114: goto 117
       115: .line 393
      StackMap locals: int long[] int
      StackMap stack:
            aload 11 /* unit */
            iload 12 /* i */
            aload 0 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            lastore
       116: .line 392
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
       117: iload 12 /* i */
            iload 10 /* sz */
            if_icmplt 115
        end local 12 // int i
       118: .line 395
            aload 9 /* bufs */
            aload 11 /* unit */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       119: .line 396
            iload 8 /* longsRead */
            iload 10 /* sz */
            iadd
            istore 8 /* longsRead */
       120: .line 397
            iload 7 /* longsToRead */
            iload 10 /* sz */
            isub
            istore 7 /* longsToRead */
        end local 11 // long[] unit
        end local 10 // int sz
       121: .line 389
      StackMap locals:
      StackMap stack:
            iload 7 /* longsToRead */
            ifne 111
       122: .line 399
            iload 8 /* longsRead */
            newarray 11
            astore 10 /* tagData */
        start local 10 // long[] tagData
       123: .line 400
            iconst_0
            istore 11 /* copiedLongs */
        start local 11 // int copiedLongs
       124: .line 401
            aload 9 /* bufs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 13
            goto 128
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top int int int java.util.List long[] int top java.util.Iterator
      StackMap stack:
       125: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast long[]
            astore 12 /* la */
        start local 12 // long[] la
       126: .line 402
            aload 12 /* la */
            iconst_0
            aload 10 /* tagData */
            iload 11 /* copiedLongs */
            aload 12 /* la */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
       127: .line 403
            iload 11 /* copiedLongs */
            aload 12 /* la */
            arraylength
            iadd
            istore 11 /* copiedLongs */
        end local 12 // long[] la
       128: .line 401
      StackMap locals:
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 125
       129: .line 405
            aload 10 /* tagData */
            astore 4 /* obj */
        end local 11 // int copiedLongs
        end local 10 // long[] tagData
        end local 9 // java.util.List bufs
        end local 8 // int longsRead
        end local 7 // int longsToRead
        start local 4 // java.lang.Object obj
       130: .line 407
            goto 334
        end local 6 // int LONG_TILE_SIZE
        end local 4 // java.lang.Object obj
       131: .line 411
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[]
      StackMap stack:
            ldc 1024000
            iconst_5
            invokestatic javax.imageio.plugins.tiff.TIFFTag.getSizeOfType:(I)I
            idiv
       132: .line 410
            istore 7 /* RATIONAL_TILE_SIZE */
        start local 7 // int RATIONAL_TILE_SIZE
       133: .line 412
            iload 2 /* count */
            iload 7 /* RATIONAL_TILE_SIZE */
            if_icmpge 143
       134: .line 413
            iload 2 /* count */
            iconst_2
            multianewarray [[J 2
            astore 8 /* llvalues */
        start local 8 // long[][] llvalues
       135: .line 414
            iconst_0
            istore 9 /* j */
        start local 9 // int j
       136: goto 140
       137: .line 415
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top top int long[][] int
      StackMap stack:
            aload 8 /* llvalues */
            iload 9 /* j */
            aaload
            iconst_0
            aload 0 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            lastore
       138: .line 416
            aload 8 /* llvalues */
            iload 9 /* j */
            aaload
            iconst_1
            aload 0 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            lastore
       139: .line 414
            iinc 9 /* j */ 1
      StackMap locals:
      StackMap stack:
       140: iload 9 /* j */
            iload 2 /* count */
            if_icmplt 137
        end local 9 // int j
       141: .line 418
            aload 8 /* llvalues */
            astore 4 /* obj */
        end local 8 // long[][] llvalues
        start local 4 // java.lang.Object obj
       142: .line 419
            goto 334
        end local 4 // java.lang.Object obj
       143: .line 420
      StackMap locals:
      StackMap stack:
            iload 2 /* count */
            istore 8 /* rationalsToRead */
        start local 8 // int rationalsToRead
       144: .line 421
            iconst_0
            istore 9 /* rationalsRead */
        start local 9 // int rationalsRead
       145: .line 422
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 10 /* bufs */
        start local 10 // java.util.List bufs
       146: .line 423
            goto 157
       147: .line 424
      StackMap locals: int int java.util.List
      StackMap stack:
            iload 8 /* rationalsToRead */
            iload 7 /* RATIONAL_TILE_SIZE */
            invokestatic java.lang.Math.min:(II)I
            istore 11 /* sz */
        start local 11 // int sz
       148: .line 425
            iload 11 /* sz */
            iconst_2
            imul
            newarray 11
            astore 12 /* unit */
        start local 12 // long[] unit
       149: .line 426
            iconst_0
            istore 13 /* i */
        start local 13 // int i
       150: goto 153
       151: .line 427
      StackMap locals: int long[] int
      StackMap stack:
            aload 12 /* unit */
            iload 13 /* i */
            aload 0 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            lastore
       152: .line 426
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
       153: iload 13 /* i */
            iload 11 /* sz */
            iconst_2
            imul
            if_icmplt 151
        end local 13 // int i
       154: .line 429
            aload 10 /* bufs */
            aload 12 /* unit */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       155: .line 430
            iload 9 /* rationalsRead */
            iload 11 /* sz */
            iadd
            istore 9 /* rationalsRead */
       156: .line 431
            iload 8 /* rationalsToRead */
            iload 11 /* sz */
            isub
            istore 8 /* rationalsToRead */
        end local 12 // long[] unit
        end local 11 // int sz
       157: .line 423
      StackMap locals:
      StackMap stack:
            iload 8 /* rationalsToRead */
            ifne 147
       158: .line 433
            iload 9 /* rationalsRead */
            iconst_2
            multianewarray [[J 2
            astore 11 /* tagData */
        start local 11 // long[][] tagData
       159: .line 434
            iconst_0
            istore 12 /* copiedRationals */
        start local 12 // int copiedRationals
       160: .line 435
            aload 10 /* bufs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 14
            goto 169
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top top int int int java.util.List long[][] int top java.util.Iterator
      StackMap stack:
       161: aload 14
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast long[]
            astore 13 /* la */
        start local 13 // long[] la
       162: .line 436
            iconst_0
            istore 15 /* i */
        start local 15 // int i
       163: goto 167
       164: .line 437
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top top int int int java.util.List long[][] int long[] java.util.Iterator int
      StackMap stack:
            aload 11 /* tagData */
            iload 12 /* copiedRationals */
            iload 15 /* i */
            iadd
            aaload
            iconst_0
            aload 13 /* la */
            iload 15 /* i */
            laload
            lastore
       165: .line 438
            aload 11 /* tagData */
            iload 12 /* copiedRationals */
            iload 15 /* i */
            iadd
            aaload
            iconst_1
            aload 13 /* la */
            iload 15 /* i */
            iconst_1
            iadd
            laload
            lastore
       166: .line 436
            iinc 15 /* i */ 2
      StackMap locals:
      StackMap stack:
       167: iload 15 /* i */
            aload 13 /* la */
            arraylength
            if_icmplt 164
        end local 15 // int i
       168: .line 440
            iload 12 /* copiedRationals */
            aload 13 /* la */
            arraylength
            iconst_2
            idiv
            iadd
            istore 12 /* copiedRationals */
        end local 13 // long[] la
       169: .line 435
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top top int int int java.util.List long[][] int top java.util.Iterator
      StackMap stack:
            aload 14
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 161
       170: .line 442
            aload 11 /* tagData */
            astore 4 /* obj */
        end local 12 // int copiedRationals
        end local 11 // long[][] tagData
        end local 10 // java.util.List bufs
        end local 9 // int rationalsRead
        end local 8 // int rationalsToRead
        start local 4 // java.lang.Object obj
       171: .line 444
            goto 334
        end local 7 // int RATIONAL_TILE_SIZE
        end local 4 // java.lang.Object obj
       172: .line 448
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[]
      StackMap stack:
            ldc 1024000
            bipush 8
            invokestatic javax.imageio.plugins.tiff.TIFFTag.getSizeOfType:(I)I
            idiv
       173: .line 447
            istore 8 /* SSHORT_TILE_SIZE */
        start local 8 // int SSHORT_TILE_SIZE
       174: .line 449
            iload 2 /* count */
            iload 8 /* SSHORT_TILE_SIZE */
            if_icmpge 183
       175: .line 450
            iload 2 /* count */
            newarray 9
            astore 9 /* svalues */
        start local 9 // short[] svalues
       176: .line 451
            iconst_0
            istore 10 /* j */
        start local 10 // int j
       177: goto 180
       178: .line 452
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top top top int short[] int
      StackMap stack:
            aload 9 /* svalues */
            iload 10 /* j */
            aload 0 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readShort:()S
            sastore
       179: .line 451
            iinc 10 /* j */ 1
      StackMap locals:
      StackMap stack:
       180: iload 10 /* j */
            iload 2 /* count */
            if_icmplt 178
        end local 10 // int j
       181: .line 454
            aload 9 /* svalues */
            astore 4 /* obj */
        end local 9 // short[] svalues
        start local 4 // java.lang.Object obj
       182: .line 455
            goto 334
        end local 4 // java.lang.Object obj
       183: .line 456
      StackMap locals:
      StackMap stack:
            iload 2 /* count */
            istore 9 /* shortsToRead */
        start local 9 // int shortsToRead
       184: .line 457
            iconst_0
            istore 10 /* shortsRead */
        start local 10 // int shortsRead
       185: .line 458
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 11 /* bufs */
        start local 11 // java.util.List bufs
       186: .line 459
            goto 193
       187: .line 460
      StackMap locals: int int java.util.List
      StackMap stack:
            iload 9 /* shortsToRead */
            iload 8 /* SSHORT_TILE_SIZE */
            invokestatic java.lang.Math.min:(II)I
            istore 12 /* sz */
        start local 12 // int sz
       188: .line 461
            iload 12 /* sz */
            newarray 9
            astore 13 /* unit */
        start local 13 // short[] unit
       189: .line 462
            aload 0 /* stream */
            aload 13 /* unit */
            iload 10 /* shortsRead */
            iload 12 /* sz */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([SII)V
       190: .line 463
            aload 11 /* bufs */
            aload 13 /* unit */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       191: .line 464
            iload 10 /* shortsRead */
            iload 12 /* sz */
            iadd
            istore 10 /* shortsRead */
       192: .line 465
            iload 9 /* shortsToRead */
            iload 12 /* sz */
            isub
            istore 9 /* shortsToRead */
        end local 13 // short[] unit
        end local 12 // int sz
       193: .line 459
      StackMap locals:
      StackMap stack:
            iload 9 /* shortsToRead */
            ifne 187
       194: .line 467
            iload 10 /* shortsRead */
            newarray 9
            astore 12 /* tagData */
        start local 12 // short[] tagData
       195: .line 468
            iconst_0
            istore 13 /* copiedShorts */
        start local 13 // int copiedShorts
       196: .line 469
            aload 11 /* bufs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 15
            goto 200
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top top top int int int java.util.List short[] int top java.util.Iterator
      StackMap stack:
       197: aload 15
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast short[]
            astore 14 /* sa */
        start local 14 // short[] sa
       198: .line 470
            aload 14 /* sa */
            iconst_0
            aload 12 /* tagData */
            iload 13 /* copiedShorts */
            aload 14 /* sa */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
       199: .line 471
            iload 13 /* copiedShorts */
            aload 14 /* sa */
            arraylength
            iadd
            istore 13 /* copiedShorts */
        end local 14 // short[] sa
       200: .line 469
      StackMap locals:
      StackMap stack:
            aload 15
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 197
       201: .line 473
            aload 12 /* tagData */
            astore 4 /* obj */
        end local 13 // int copiedShorts
        end local 12 // short[] tagData
        end local 11 // java.util.List bufs
        end local 10 // int shortsRead
        end local 9 // int shortsToRead
        start local 4 // java.lang.Object obj
       202: .line 475
            goto 334
        end local 8 // int SSHORT_TILE_SIZE
        end local 4 // java.lang.Object obj
       203: .line 479
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[]
      StackMap stack:
            ldc 1024000
            bipush 9
            invokestatic javax.imageio.plugins.tiff.TIFFTag.getSizeOfType:(I)I
            idiv
       204: .line 478
            istore 9 /* INT_TILE_SIZE */
        start local 9 // int INT_TILE_SIZE
       205: .line 480
            iload 2 /* count */
            iload 9 /* INT_TILE_SIZE */
            if_icmpge 214
       206: .line 481
            iload 2 /* count */
            newarray 10
            astore 10 /* ivalues */
        start local 10 // int[] ivalues
       207: .line 482
            iconst_0
            istore 11 /* j */
        start local 11 // int j
       208: goto 211
       209: .line 483
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top top top top int int[] int
      StackMap stack:
            aload 10 /* ivalues */
            iload 11 /* j */
            aload 0 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            iastore
       210: .line 482
            iinc 11 /* j */ 1
      StackMap locals:
      StackMap stack:
       211: iload 11 /* j */
            iload 2 /* count */
            if_icmplt 209
        end local 11 // int j
       212: .line 485
            aload 10 /* ivalues */
            astore 4 /* obj */
        end local 10 // int[] ivalues
        start local 4 // java.lang.Object obj
       213: .line 486
            goto 334
        end local 4 // java.lang.Object obj
       214: .line 487
      StackMap locals:
      StackMap stack:
            iload 2 /* count */
            istore 10 /* intsToRead */
        start local 10 // int intsToRead
       215: .line 488
            iconst_0
            istore 11 /* intsRead */
        start local 11 // int intsRead
       216: .line 489
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 12 /* bufs */
        start local 12 // java.util.List bufs
       217: .line 490
            goto 224
       218: .line 491
      StackMap locals: int int java.util.List
      StackMap stack:
            iload 10 /* intsToRead */
            iload 9 /* INT_TILE_SIZE */
            invokestatic java.lang.Math.min:(II)I
            istore 13 /* sz */
        start local 13 // int sz
       219: .line 492
            iload 13 /* sz */
            newarray 10
            astore 14 /* unit */
        start local 14 // int[] unit
       220: .line 493
            aload 0 /* stream */
            aload 14 /* unit */
            iload 10 /* intsToRead */
            iload 13 /* sz */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([III)V
       221: .line 494
            aload 12 /* bufs */
            aload 14 /* unit */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       222: .line 495
            iload 11 /* intsRead */
            iload 13 /* sz */
            iadd
            istore 11 /* intsRead */
       223: .line 496
            iload 10 /* intsToRead */
            iload 13 /* sz */
            isub
            istore 10 /* intsToRead */
        end local 14 // int[] unit
        end local 13 // int sz
       224: .line 490
      StackMap locals:
      StackMap stack:
            iload 10 /* intsToRead */
            ifne 218
       225: .line 498
            iload 11 /* intsRead */
            newarray 10
            astore 13 /* tagData */
        start local 13 // int[] tagData
       226: .line 499
            iconst_0
            istore 14 /* copiedInts */
        start local 14 // int copiedInts
       227: .line 500
            aload 12 /* bufs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 16
            goto 231
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top top top top int int int java.util.List int[] int top java.util.Iterator
      StackMap stack:
       228: aload 16
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast int[]
            astore 15 /* ia */
        start local 15 // int[] ia
       229: .line 501
            aload 15 /* ia */
            iconst_0
            aload 13 /* tagData */
            iload 14 /* copiedInts */
            aload 15 /* ia */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
       230: .line 502
            iload 14 /* copiedInts */
            aload 15 /* ia */
            arraylength
            iadd
            istore 14 /* copiedInts */
        end local 15 // int[] ia
       231: .line 500
      StackMap locals:
      StackMap stack:
            aload 16
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 228
       232: .line 504
            aload 13 /* tagData */
            astore 4 /* obj */
        end local 14 // int copiedInts
        end local 13 // int[] tagData
        end local 12 // java.util.List bufs
        end local 11 // int intsRead
        end local 10 // int intsToRead
        start local 4 // java.lang.Object obj
       233: .line 506
            goto 334
        end local 9 // int INT_TILE_SIZE
        end local 4 // java.lang.Object obj
       234: .line 510
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[]
      StackMap stack:
            ldc 1024000
            bipush 10
            invokestatic javax.imageio.plugins.tiff.TIFFTag.getSizeOfType:(I)I
            idiv
       235: .line 509
            istore 10 /* SRATIONAL_TILE_SIZE */
        start local 10 // int SRATIONAL_TILE_SIZE
       236: .line 511
            iload 2 /* count */
            iload 10 /* SRATIONAL_TILE_SIZE */
            if_icmpge 246
       237: .line 512
            iload 2 /* count */
            iconst_2
            multianewarray [[I 2
            astore 11 /* iivalues */
        start local 11 // int[][] iivalues
       238: .line 513
            iconst_0
            istore 12 /* j */
        start local 12 // int j
       239: goto 243
       240: .line 514
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top top top top top int int[][] int
      StackMap stack:
            aload 11 /* iivalues */
            iload 12 /* j */
            aaload
            iconst_0
            aload 0 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            iastore
       241: .line 515
            aload 11 /* iivalues */
            iload 12 /* j */
            aaload
            iconst_1
            aload 0 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            iastore
       242: .line 513
            iinc 12 /* j */ 1
      StackMap locals:
      StackMap stack:
       243: iload 12 /* j */
            iload 2 /* count */
            if_icmplt 240
        end local 12 // int j
       244: .line 517
            aload 11 /* iivalues */
            astore 4 /* obj */
        end local 11 // int[][] iivalues
        start local 4 // java.lang.Object obj
       245: .line 518
            goto 334
        end local 4 // java.lang.Object obj
       246: .line 519
      StackMap locals:
      StackMap stack:
            iload 2 /* count */
            istore 11 /* srationalsToRead */
        start local 11 // int srationalsToRead
       247: .line 520
            iconst_0
            istore 12 /* srationalsRead */
        start local 12 // int srationalsRead
       248: .line 521
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 13 /* bufs */
        start local 13 // java.util.List bufs
       249: .line 522
            goto 256
       250: .line 523
      StackMap locals: int int java.util.List
      StackMap stack:
            iload 11 /* srationalsToRead */
            iload 10 /* SRATIONAL_TILE_SIZE */
            invokestatic java.lang.Math.min:(II)I
            istore 14 /* sz */
        start local 14 // int sz
       251: .line 524
            iload 14 /* sz */
            iconst_2
            imul
            newarray 10
            astore 15 /* unit */
        start local 15 // int[] unit
       252: .line 525
            aload 0 /* stream */
            aload 15 /* unit */
            iload 11 /* srationalsToRead */
            iconst_2
            imul
            iload 14 /* sz */
            iconst_2
            imul
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([III)V
       253: .line 526
            aload 13 /* bufs */
            aload 15 /* unit */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       254: .line 527
            iload 12 /* srationalsRead */
            iload 14 /* sz */
            iadd
            istore 12 /* srationalsRead */
       255: .line 528
            iload 11 /* srationalsToRead */
            iload 14 /* sz */
            isub
            istore 11 /* srationalsToRead */
        end local 15 // int[] unit
        end local 14 // int sz
       256: .line 522
      StackMap locals:
      StackMap stack:
            iload 11 /* srationalsToRead */
            ifne 250
       257: .line 530
            iload 12 /* srationalsRead */
            iconst_2
            multianewarray [[I 2
            astore 14 /* tagData */
        start local 14 // int[][] tagData
       258: .line 531
            iconst_0
            istore 15 /* copiedSrationals */
        start local 15 // int copiedSrationals
       259: .line 532
            aload 13 /* bufs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 17
            goto 268
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top top top top top int int int java.util.List int[][] int top java.util.Iterator
      StackMap stack:
       260: aload 17
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast int[]
            astore 16 /* ia */
        start local 16 // int[] ia
       261: .line 533
            iconst_0
            istore 18 /* i */
        start local 18 // int i
       262: goto 266
       263: .line 534
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top top top top top int int int java.util.List int[][] int int[] java.util.Iterator int
      StackMap stack:
            aload 14 /* tagData */
            iload 15 /* copiedSrationals */
            iload 18 /* i */
            iadd
            aaload
            iconst_0
            aload 16 /* ia */
            iload 18 /* i */
            iaload
            iastore
       264: .line 535
            aload 14 /* tagData */
            iload 15 /* copiedSrationals */
            iload 18 /* i */
            iadd
            aaload
            iconst_1
            aload 16 /* ia */
            iload 18 /* i */
            iconst_1
            iadd
            iaload
            iastore
       265: .line 533
            iinc 18 /* i */ 2
      StackMap locals:
      StackMap stack:
       266: iload 18 /* i */
            aload 16 /* ia */
            arraylength
            if_icmplt 263
        end local 18 // int i
       267: .line 537
            iload 15 /* copiedSrationals */
            aload 16 /* ia */
            arraylength
            iconst_2
            idiv
            iadd
            istore 15 /* copiedSrationals */
        end local 16 // int[] ia
       268: .line 532
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top top top top top int int int java.util.List int[][] int top java.util.Iterator
      StackMap stack:
            aload 17
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 260
       269: .line 539
            aload 14 /* tagData */
            astore 4 /* obj */
        end local 15 // int copiedSrationals
        end local 14 // int[][] tagData
        end local 13 // java.util.List bufs
        end local 12 // int srationalsRead
        end local 11 // int srationalsToRead
        start local 4 // java.lang.Object obj
       270: .line 541
            goto 334
        end local 10 // int SRATIONAL_TILE_SIZE
        end local 4 // java.lang.Object obj
       271: .line 545
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[]
      StackMap stack:
            ldc 1024000
            bipush 11
            invokestatic javax.imageio.plugins.tiff.TIFFTag.getSizeOfType:(I)I
            idiv
       272: .line 544
            istore 11 /* FLOAT_TILE_SIZE */
        start local 11 // int FLOAT_TILE_SIZE
       273: .line 546
            iload 2 /* count */
            iload 11 /* FLOAT_TILE_SIZE */
            if_icmpge 282
       274: .line 547
            iload 2 /* count */
            newarray 6
            astore 12 /* fvalues */
        start local 12 // float[] fvalues
       275: .line 548
            iconst_0
            istore 13 /* j */
        start local 13 // int j
       276: goto 279
       277: .line 549
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top top top top top top int float[] int
      StackMap stack:
            aload 12 /* fvalues */
            iload 13 /* j */
            aload 0 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readFloat:()F
            fastore
       278: .line 548
            iinc 13 /* j */ 1
      StackMap locals:
      StackMap stack:
       279: iload 13 /* j */
            iload 2 /* count */
            if_icmplt 277
        end local 13 // int j
       280: .line 551
            aload 12 /* fvalues */
            astore 4 /* obj */
        end local 12 // float[] fvalues
        start local 4 // java.lang.Object obj
       281: .line 552
            goto 334
        end local 4 // java.lang.Object obj
       282: .line 553
      StackMap locals:
      StackMap stack:
            iload 2 /* count */
            istore 12 /* floatsToRead */
        start local 12 // int floatsToRead
       283: .line 554
            iconst_0
            istore 13 /* floatsRead */
        start local 13 // int floatsRead
       284: .line 555
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 14 /* bufs */
        start local 14 // java.util.List bufs
       285: .line 556
            goto 292
       286: .line 557
      StackMap locals: int int java.util.List
      StackMap stack:
            iload 12 /* floatsToRead */
            iload 11 /* FLOAT_TILE_SIZE */
            invokestatic java.lang.Math.min:(II)I
            istore 15 /* sz */
        start local 15 // int sz
       287: .line 558
            iload 15 /* sz */
            newarray 6
            astore 16 /* unit */
        start local 16 // float[] unit
       288: .line 559
            aload 0 /* stream */
            aload 16 /* unit */
            iload 12 /* floatsToRead */
            iload 15 /* sz */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([FII)V
       289: .line 560
            aload 14 /* bufs */
            aload 16 /* unit */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       290: .line 561
            iload 13 /* floatsRead */
            iload 15 /* sz */
            iadd
            istore 13 /* floatsRead */
       291: .line 562
            iload 12 /* floatsToRead */
            iload 15 /* sz */
            isub
            istore 12 /* floatsToRead */
        end local 16 // float[] unit
        end local 15 // int sz
       292: .line 556
      StackMap locals:
      StackMap stack:
            iload 12 /* floatsToRead */
            ifne 286
       293: .line 564
            iload 13 /* floatsRead */
            newarray 6
            astore 15 /* tagData */
        start local 15 // float[] tagData
       294: .line 565
            iconst_0
            istore 16 /* copiedFloats */
        start local 16 // int copiedFloats
       295: .line 566
            aload 14 /* bufs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 18
            goto 299
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top top top top top top int int int java.util.List float[] int top java.util.Iterator
      StackMap stack:
       296: aload 18
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast float[]
            astore 17 /* fa */
        start local 17 // float[] fa
       297: .line 567
            aload 17 /* fa */
            iconst_0
            aload 15 /* tagData */
            iload 16 /* copiedFloats */
            aload 17 /* fa */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
       298: .line 568
            iload 16 /* copiedFloats */
            aload 17 /* fa */
            arraylength
            iadd
            istore 16 /* copiedFloats */
        end local 17 // float[] fa
       299: .line 566
      StackMap locals:
      StackMap stack:
            aload 18
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 296
       300: .line 570
            aload 15 /* tagData */
            astore 4 /* obj */
        end local 16 // int copiedFloats
        end local 15 // float[] tagData
        end local 14 // java.util.List bufs
        end local 13 // int floatsRead
        end local 12 // int floatsToRead
        start local 4 // java.lang.Object obj
       301: .line 572
            goto 334
        end local 11 // int FLOAT_TILE_SIZE
        end local 4 // java.lang.Object obj
       302: .line 576
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[]
      StackMap stack:
            ldc 1024000
            bipush 12
            invokestatic javax.imageio.plugins.tiff.TIFFTag.getSizeOfType:(I)I
            idiv
       303: .line 575
            istore 12 /* DOUBLE_TILE_SIZE */
        start local 12 // int DOUBLE_TILE_SIZE
       304: .line 577
            iload 2 /* count */
            iload 12 /* DOUBLE_TILE_SIZE */
            if_icmpge 313
       305: .line 578
            iload 2 /* count */
            newarray 7
            astore 13 /* dvalues */
        start local 13 // double[] dvalues
       306: .line 579
            iconst_0
            istore 14 /* j */
        start local 14 // int j
       307: goto 310
       308: .line 580
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top top top top top top top int double[] int
      StackMap stack:
            aload 13 /* dvalues */
            iload 14 /* j */
            aload 0 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readDouble:()D
            dastore
       309: .line 579
            iinc 14 /* j */ 1
      StackMap locals:
      StackMap stack:
       310: iload 14 /* j */
            iload 2 /* count */
            if_icmplt 308
        end local 14 // int j
       311: .line 582
            aload 13 /* dvalues */
            astore 4 /* obj */
        end local 13 // double[] dvalues
        start local 4 // java.lang.Object obj
       312: .line 583
            goto 334
        end local 4 // java.lang.Object obj
       313: .line 584
      StackMap locals:
      StackMap stack:
            iload 2 /* count */
            istore 13 /* doublesToRead */
        start local 13 // int doublesToRead
       314: .line 585
            iconst_0
            istore 14 /* doublesRead */
        start local 14 // int doublesRead
       315: .line 586
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 15 /* bufs */
        start local 15 // java.util.List bufs
       316: .line 587
            goto 323
       317: .line 588
      StackMap locals: int int java.util.List
      StackMap stack:
            iload 13 /* doublesToRead */
            iload 12 /* DOUBLE_TILE_SIZE */
            invokestatic java.lang.Math.min:(II)I
            istore 16 /* sz */
        start local 16 // int sz
       318: .line 589
            iload 16 /* sz */
            newarray 7
            astore 17 /* unit */
        start local 17 // double[] unit
       319: .line 590
            aload 0 /* stream */
            aload 17 /* unit */
            iload 13 /* doublesToRead */
            iload 16 /* sz */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([DII)V
       320: .line 591
            aload 15 /* bufs */
            aload 17 /* unit */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       321: .line 592
            iload 14 /* doublesRead */
            iload 16 /* sz */
            iadd
            istore 14 /* doublesRead */
       322: .line 593
            iload 13 /* doublesToRead */
            iload 16 /* sz */
            isub
            istore 13 /* doublesToRead */
        end local 17 // double[] unit
        end local 16 // int sz
       323: .line 587
      StackMap locals:
      StackMap stack:
            iload 13 /* doublesToRead */
            ifne 317
       324: .line 595
            iload 14 /* doublesRead */
            newarray 7
            astore 16 /* tagData */
        start local 16 // double[] tagData
       325: .line 596
            iconst_0
            istore 17 /* copiedDoubles */
        start local 17 // int copiedDoubles
       326: .line 597
            aload 15 /* bufs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 19
            goto 330
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[] top top top top top top top top int int int java.util.List double[] int top java.util.Iterator
      StackMap stack:
       327: aload 19
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast double[]
            astore 18 /* da */
        start local 18 // double[] da
       328: .line 598
            aload 18 /* da */
            iconst_0
            aload 16 /* tagData */
            iload 17 /* copiedDoubles */
            aload 18 /* da */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
       329: .line 599
            iload 17 /* copiedDoubles */
            aload 18 /* da */
            arraylength
            iadd
            istore 17 /* copiedDoubles */
        end local 18 // double[] da
       330: .line 597
      StackMap locals:
      StackMap stack:
            aload 19
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 327
       331: .line 601
            aload 16 /* tagData */
            astore 4 /* obj */
        end local 17 // int copiedDoubles
        end local 16 // double[] tagData
        end local 15 // java.util.List bufs
        end local 14 // int doublesRead
        end local 13 // int doublesToRead
        start local 4 // java.lang.Object obj
       332: .line 603
            goto 334
        end local 12 // int DOUBLE_TILE_SIZE
        end local 4 // java.lang.Object obj
       333: .line 605
      StackMap locals: javax.imageio.stream.ImageInputStream int int java.lang.Object[]
      StackMap stack:
            aconst_null
            astore 4 /* obj */
        start local 4 // java.lang.Object obj
       334: .line 609
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 3 /* data */
            iconst_0
            aload 4 /* obj */
            aastore
       335: .line 611
            iload 2 /* count */
            ireturn
        end local 4 // java.lang.Object obj
        end local 3 // java.lang.Object[] data
        end local 2 // int count
        end local 1 // int type
        end local 0 // javax.imageio.stream.ImageInputStream stream
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0  336     0               stream  Ljavax/imageio/stream/ImageInputStream;
            0  336     1                 type  I
            0  336     2                count  I
            0  336     3                 data  [Ljava/lang/Object;
           35   36     4                  obj  Ljava/lang/Object;
           40   41     4                  obj  Ljava/lang/Object;
           60   61     4                  obj  Ljava/lang/Object;
           71   72     4                  obj  Ljava/lang/Object;
           95   96     4                  obj  Ljava/lang/Object;
          106  107     4                  obj  Ljava/lang/Object;
          130  131     4                  obj  Ljava/lang/Object;
          142  143     4                  obj  Ljava/lang/Object;
          171  172     4                  obj  Ljava/lang/Object;
          182  183     4                  obj  Ljava/lang/Object;
          202  203     4                  obj  Ljava/lang/Object;
          213  214     4                  obj  Ljava/lang/Object;
          233  234     4                  obj  Ljava/lang/Object;
          245  246     4                  obj  Ljava/lang/Object;
          270  271     4                  obj  Ljava/lang/Object;
          281  282     4                  obj  Ljava/lang/Object;
          301  302     4                  obj  Ljava/lang/Object;
          312  313     4                  obj  Ljava/lang/Object;
          332  333     4                  obj  Ljava/lang/Object;
          334  336     4                  obj  Ljava/lang/Object;
            3   35     5              bvalues  [B
            5   35     6                    v  Ljava/util/ArrayList<Ljava/lang/String;>;
            6   35     7             inString  Z
            7   35     8            prevIndex  I
            8   23     9                index  I
           19   21    10                    s  Ljava/lang/String;
           26   32     9              strings  [Ljava/lang/String;
           34   35     9              strings  [Ljava/lang/String;
           27   31    10                    c  I
           38   40     5              bvalues  [B
           42   60     5          bytesToRead  I
           43   60     6            bytesRead  I
           44   60     7                 bufs  Ljava/util/List<[B>;
           46   51     8                   sz  I
           47   51     9                 unit  [B
           53   60     8              tagData  [B
           54   60     9          copiedBytes  I
           56   58    10                   ba  [B
           63   96     5      SHORT_TILE_SIZE  I
           65   71     6              cvalues  [C
           66   70     7                    j  I
           73   95     6          charsToRead  I
           74   95     7            charsRead  I
           75   95     8                 bufs  Ljava/util/List<[C>;
           77   86     9                   sz  I
           78   86    10                 unit  [C
           79   83    11                    i  I
           88   95     9              tagData  [C
           89   95    10          copiedChars  I
           91   93    11                   ca  [C
           98  131     6       LONG_TILE_SIZE  I
          100  106     7              lvalues  [J
          101  105     8                    j  I
          108  130     7          longsToRead  I
          109  130     8            longsRead  I
          110  130     9                 bufs  Ljava/util/List<[J>;
          112  121    10                   sz  I
          113  121    11                 unit  [J
          114  118    12                    i  I
          123  130    10              tagData  [J
          124  130    11          copiedLongs  I
          126  128    12                   la  [J
          133  172     7   RATIONAL_TILE_SIZE  I
          135  142     8             llvalues  [[J
          136  141     9                    j  I
          144  171     8      rationalsToRead  I
          145  171     9        rationalsRead  I
          146  171    10                 bufs  Ljava/util/List<[J>;
          148  157    11                   sz  I
          149  157    12                 unit  [J
          150  154    13                    i  I
          159  171    11              tagData  [[J
          160  171    12      copiedRationals  I
          162  169    13                   la  [J
          163  168    15                    i  I
          174  203     8     SSHORT_TILE_SIZE  I
          176  182     9              svalues  [S
          177  181    10                    j  I
          184  202     9         shortsToRead  I
          185  202    10           shortsRead  I
          186  202    11                 bufs  Ljava/util/List<[S>;
          188  193    12                   sz  I
          189  193    13                 unit  [S
          195  202    12              tagData  [S
          196  202    13         copiedShorts  I
          198  200    14                   sa  [S
          205  234     9        INT_TILE_SIZE  I
          207  213    10              ivalues  [I
          208  212    11                    j  I
          215  233    10           intsToRead  I
          216  233    11             intsRead  I
          217  233    12                 bufs  Ljava/util/List<[I>;
          219  224    13                   sz  I
          220  224    14                 unit  [I
          226  233    13              tagData  [I
          227  233    14           copiedInts  I
          229  231    15                   ia  [I
          236  271    10  SRATIONAL_TILE_SIZE  I
          238  245    11             iivalues  [[I
          239  244    12                    j  I
          247  270    11     srationalsToRead  I
          248  270    12       srationalsRead  I
          249  270    13                 bufs  Ljava/util/List<[I>;
          251  256    14                   sz  I
          252  256    15                 unit  [I
          258  270    14              tagData  [[I
          259  270    15     copiedSrationals  I
          261  268    16                   ia  [I
          262  267    18                    i  I
          273  302    11      FLOAT_TILE_SIZE  I
          275  281    12              fvalues  [F
          276  280    13                    j  I
          283  301    12         floatsToRead  I
          284  301    13           floatsRead  I
          285  301    14                 bufs  Ljava/util/List<[F>;
          287  292    15                   sz  I
          288  292    16                 unit  [F
          294  301    15              tagData  [F
          295  301    16         copiedFloats  I
          297  299    17                   fa  [F
          304  333    12     DOUBLE_TILE_SIZE  I
          306  312    13              dvalues  [D
          307  311    14                    j  I
          314  332    13        doublesToRead  I
          315  332    14          doublesRead  I
          316  332    15                 bufs  Ljava/util/List<[D>;
          318  323    16                   sz  I
          319  323    17                 unit  [D
          325  332    16              tagData  [D
          326  332    17        copiedDoubles  I
          328  330    18                   da  [D
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      stream  
      type    
      count   
      data    

  private long getFieldAsLong(int);
    descriptor: (I)J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
        start local 1 // int tagNumber
         0: .line 638
            aload 0 /* this */
            iload 1 /* tagNumber */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTIFFField:(I)Ljavax/imageio/plugins/tiff/TIFFField;
            astore 2 /* f */
        start local 2 // javax.imageio.plugins.tiff.TIFFField f
         1: .line 639
            aload 2 /* f */
            ifnonnull 2
            ldc -1
            goto 3
      StackMap locals: javax.imageio.plugins.tiff.TIFFField
      StackMap stack:
         2: aload 2 /* f */
            iconst_0
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getAsLong:(I)J
      StackMap locals:
      StackMap stack: long
         3: lreturn
        end local 2 // javax.imageio.plugins.tiff.TIFFField f
        end local 1 // int tagNumber
        end local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lcom/sun/imageio/plugins/tiff/TIFFIFD;
            0    4     1  tagNumber  I
            1    4     2          f  Ljavax/imageio/plugins/tiff/TIFFField;
    MethodParameters:
           Name  Flags
      tagNumber  

  private int getFieldAsInt(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
        start local 1 // int tagNumber
         0: .line 646
            aload 0 /* this */
            iload 1 /* tagNumber */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTIFFField:(I)Ljavax/imageio/plugins/tiff/TIFFField;
            astore 2 /* f */
        start local 2 // javax.imageio.plugins.tiff.TIFFField f
         1: .line 647
            aload 2 /* f */
            ifnonnull 2
            iconst_m1
            goto 3
      StackMap locals: javax.imageio.plugins.tiff.TIFFField
      StackMap stack:
         2: aload 2 /* f */
            iconst_0
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getAsInt:(I)I
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 2 // javax.imageio.plugins.tiff.TIFFField f
        end local 1 // int tagNumber
        end local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lcom/sun/imageio/plugins/tiff/TIFFIFD;
            0    4     1  tagNumber  I
            1    4     2          f  Ljavax/imageio/plugins/tiff/TIFFField;
    MethodParameters:
           Name  Flags
      tagNumber  

  private boolean calculateByteCounts(int, java.util.List<javax.imageio.plugins.tiff.TIFFField>);
    descriptor: (ILjava/util/List;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=26, args_size=3
        start local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
        start local 1 // int expectedSize
        start local 2 // java.util.List byteCounts
         0: .line 658
            aload 2 /* byteCounts */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 2
         1: .line 659
            new java.lang.IllegalArgumentException
            dup
            ldc "byteCounts is not empty"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 663
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 284
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getFieldAsInt:(I)I
         3: .line 664
            iconst_2
         4: .line 663
            if_icmpne 6
         5: .line 665
            iconst_0
            ireturn
         6: .line 669
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 259
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getFieldAsInt:(I)I
         7: .line 670
            iconst_1
         8: .line 669
            if_icmpeq 10
         9: .line 671
            iconst_0
            ireturn
        10: .line 675
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 256
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getFieldAsLong:(I)J
            lstore 3 /* w */
        start local 3 // long w
        11: .line 676
            lload 3 /* w */
            lconst_0
            lcmp
            ifge 13
        12: .line 677
            iconst_0
            ireturn
        13: .line 679
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            sipush 257
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getFieldAsLong:(I)J
            lstore 5 /* h */
        start local 5 // long h
        14: .line 680
            lload 5 /* h */
            lconst_0
            lcmp
            ifge 16
        15: .line 681
            iconst_0
            ireturn
        16: .line 684
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            sipush 322
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getFieldAsLong:(I)J
            lstore 7 /* tw */
        start local 7 // long tw
        17: .line 685
            lload 7 /* tw */
            lconst_0
            lcmp
            ifge 19
        18: .line 686
            lload 3 /* w */
            lstore 7 /* tw */
        19: .line 688
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            sipush 323
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getFieldAsLong:(I)J
            lstore 9 /* th */
        start local 9 // long th
        20: .line 689
            lload 9 /* th */
            lconst_0
            lcmp
            ifge 24
        21: .line 690
            aload 0 /* this */
            sipush 278
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getFieldAsLong:(I)J
            lstore 9 /* th */
        22: .line 691
            lload 9 /* th */
            lconst_0
            lcmp
            ifge 24
        23: .line 692
            lload 5 /* h */
            lstore 9 /* th */
        24: .line 696
      StackMap locals: long
      StackMap stack:
            aconst_null
            astore 11 /* bitsPerSample */
        start local 11 // int[] bitsPerSample
        25: .line 697
            aload 0 /* this */
            sipush 258
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTIFFField:(I)Ljavax/imageio/plugins/tiff/TIFFField;
            astore 12 /* f */
        start local 12 // javax.imageio.plugins.tiff.TIFFField f
        26: .line 698
            aload 12 /* f */
            ifnull 29
        27: .line 699
            aload 12 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getAsInts:()[I
            astore 11 /* bitsPerSample */
        28: .line 700
            goto 35
        29: .line 702
      StackMap locals: int[] javax.imageio.plugins.tiff.TIFFField
      StackMap stack:
            aload 0 /* this */
            sipush 277
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getFieldAsInt:(I)I
        30: .line 701
            istore 13 /* samplesPerPixel */
        start local 13 // int samplesPerPixel
        31: .line 703
            iload 13 /* samplesPerPixel */
            ifge 33
        32: .line 704
            iconst_1
            istore 13 /* samplesPerPixel */
        33: .line 706
      StackMap locals: int
      StackMap stack:
            iload 13 /* samplesPerPixel */
            newarray 10
            astore 11 /* bitsPerSample */
        34: .line 707
            aload 11 /* bitsPerSample */
            bipush 8
            invokestatic java.util.Arrays.fill:([II)V
        end local 13 // int samplesPerPixel
        35: .line 710
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 13 /* bitsPerPixel */
        start local 13 // int bitsPerPixel
        36: .line 711
            aload 11 /* bitsPerSample */
            dup
            astore 17
            arraylength
            istore 16
            iconst_0
            istore 15
            goto 40
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD int java.util.List long long long long int[] javax.imageio.plugins.tiff.TIFFField int top int int int[]
      StackMap stack:
        37: aload 17
            iload 15
            iaload
            istore 14 /* bps */
        start local 14 // int bps
        38: .line 712
            iload 13 /* bitsPerPixel */
            iload 14 /* bps */
            iadd
            istore 13 /* bitsPerPixel */
        end local 14 // int bps
        39: .line 711
            iinc 15 1
      StackMap locals:
      StackMap stack:
        40: iload 15
            iload 16
            if_icmplt 37
        41: .line 715
            lload 7 /* tw */
            iload 13 /* bitsPerPixel */
            i2l
            lmul
            ldc 7
            ladd
            l2i
            bipush 8
            idiv
            istore 14 /* bytesPerRow */
        start local 14 // int bytesPerRow
        42: .line 716
            lload 9 /* th */
            l2i
            iload 14 /* bytesPerRow */
            imul
            istore 15 /* bytesPerPacket */
        start local 15 // int bytesPerPacket
        43: .line 718
            lload 3 /* w */
            lload 7 /* tw */
            ladd
            lconst_1
            lsub
            lload 7 /* tw */
            ldiv
            lstore 16 /* nx */
        start local 16 // long nx
        44: .line 719
            lload 5 /* h */
            lload 9 /* th */
            ladd
            lconst_1
            lsub
            lload 9 /* th */
            ldiv
            lstore 18 /* ny */
        start local 18 // long ny
        45: .line 721
            lload 16 /* nx */
            lload 18 /* ny */
            lmul
            iload 1 /* expectedSize */
            i2l
            lcmp
            ifeq 47
        46: .line 722
            iconst_0
            ireturn
        47: .line 726
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD int java.util.List long long long long int[] javax.imageio.plugins.tiff.TIFFField int int int long long
      StackMap stack:
            aload 0 /* this */
            sipush 325
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTIFFField:(I)Ljavax/imageio/plugins/tiff/TIFFField;
            ifnull 48
            iconst_1
            goto 49
      StackMap locals:
      StackMap stack:
        48: iconst_0
        49: .line 725
      StackMap locals:
      StackMap stack: int
            istore 20 /* isTiled */
        start local 20 // boolean isTiled
        50: .line 729
            iload 20 /* isTiled */
            ifeq 53
        51: .line 730
            sipush 325
            istore 21 /* tagNumber */
        start local 21 // int tagNumber
        52: .line 731
            goto 54
        end local 21 // int tagNumber
        53: .line 732
      StackMap locals: int
      StackMap stack:
            sipush 279
            istore 21 /* tagNumber */
        start local 21 // int tagNumber
        54: .line 735
      StackMap locals: int
      StackMap stack:
            invokestatic javax.imageio.plugins.tiff.BaselineTIFFTagSet.getInstance:()Ljavax/imageio/plugins/tiff/BaselineTIFFTagSet;
            iload 21 /* tagNumber */
            invokevirtual javax.imageio.plugins.tiff.BaselineTIFFTagSet.getTag:(I)Ljavax/imageio/plugins/tiff/TIFFTag;
            astore 22 /* t */
        start local 22 // javax.imageio.plugins.tiff.TIFFTag t
        55: .line 736
            aload 0 /* this */
            iload 21 /* tagNumber */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTIFFField:(I)Ljavax/imageio/plugins/tiff/TIFFField;
            astore 12 /* f */
        56: .line 737
            aload 12 /* f */
            ifnull 58
        57: .line 738
            aload 0 /* this */
            iload 21 /* tagNumber */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.removeTIFFField:(I)V
        58: .line 741
      StackMap locals: javax.imageio.plugins.tiff.TIFFTag
      StackMap stack:
            lload 16 /* nx */
            lload 18 /* ny */
            lmul
            l2i
            istore 23 /* numPackets */
        start local 23 // int numPackets
        59: .line 742
            iload 23 /* numPackets */
            newarray 11
            astore 24 /* packetByteCounts */
        start local 24 // long[] packetByteCounts
        60: .line 743
            aload 24 /* packetByteCounts */
            iload 15 /* bytesPerPacket */
            i2l
            invokestatic java.util.Arrays.fill:([JJ)V
        61: .line 749
            lload 7 /* tw */
            lload 3 /* w */
            lcmp
            ifgt 64
            lload 5 /* h */
            lload 9 /* th */
            lrem
            lconst_0
            lcmp
            ifeq 64
        62: .line 750
            lload 5 /* h */
            lload 18 /* ny */
            lconst_1
            lsub
            lload 9 /* th */
            lmul
            lsub
            l2i
            istore 25 /* numRowsInLastStrip */
        start local 25 // int numRowsInLastStrip
        63: .line 751
            aload 24 /* packetByteCounts */
            iload 23 /* numPackets */
            iconst_1
            isub
            iload 25 /* numRowsInLastStrip */
            iload 14 /* bytesPerRow */
            imul
            i2l
            lastore
        end local 25 // int numRowsInLastStrip
        64: .line 754
      StackMap locals: int long[]
      StackMap stack:
            new javax.imageio.plugins.tiff.TIFFField
            dup
            aload 22 /* t */
            iconst_4
            iload 23 /* numPackets */
            aload 24 /* packetByteCounts */
            invokespecial javax.imageio.plugins.tiff.TIFFField.<init>:(Ljavax/imageio/plugins/tiff/TIFFTag;IILjava/lang/Object;)V
            astore 12 /* f */
        65: .line 755
            aload 0 /* this */
            aload 12 /* f */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.addTIFFField:(Ljavax/imageio/plugins/tiff/TIFFField;)V
        66: .line 756
            aload 2 /* byteCounts */
            aload 12 /* f */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        67: .line 758
            iconst_1
            ireturn
        end local 24 // long[] packetByteCounts
        end local 23 // int numPackets
        end local 22 // javax.imageio.plugins.tiff.TIFFTag t
        end local 21 // int tagNumber
        end local 20 // boolean isTiled
        end local 18 // long ny
        end local 16 // long nx
        end local 15 // int bytesPerPacket
        end local 14 // int bytesPerRow
        end local 13 // int bitsPerPixel
        end local 12 // javax.imageio.plugins.tiff.TIFFField f
        end local 11 // int[] bitsPerSample
        end local 9 // long th
        end local 7 // long tw
        end local 5 // long h
        end local 3 // long w
        end local 2 // java.util.List byteCounts
        end local 1 // int expectedSize
        end local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   68     0                this  Lcom/sun/imageio/plugins/tiff/TIFFIFD;
            0   68     1        expectedSize  I
            0   68     2          byteCounts  Ljava/util/List<Ljavax/imageio/plugins/tiff/TIFFField;>;
           11   68     3                   w  J
           14   68     5                   h  J
           17   68     7                  tw  J
           20   68     9                  th  J
           25   68    11       bitsPerSample  [I
           26   68    12                   f  Ljavax/imageio/plugins/tiff/TIFFField;
           31   35    13     samplesPerPixel  I
           36   68    13        bitsPerPixel  I
           38   39    14                 bps  I
           42   68    14         bytesPerRow  I
           43   68    15      bytesPerPacket  I
           44   68    16                  nx  J
           45   68    18                  ny  J
           50   68    20             isTiled  Z
           52   53    21           tagNumber  I
           54   68    21           tagNumber  I
           55   68    22                   t  Ljavax/imageio/plugins/tiff/TIFFTag;
           59   68    23          numPackets  I
           60   68    24    packetByteCounts  [J
           63   64    25  numRowsInLastStrip  I
    Signature: (ILjava/util/List<Ljavax/imageio/plugins/tiff/TIFFField;>;)Z
    MethodParameters:
              Name  Flags
      expectedSize  
      byteCounts    

  private void checkFieldOffsets(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=16, args_size=2
        start local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
        start local 1 // long streamLength
         0: .line 766
            lload 1 /* streamLength */
            lconst_0
            lcmp
            ifge 2
         1: .line 767
            return
         2: .line 771
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* offsets */
        start local 3 // java.util.List offsets
         3: .line 772
            aload 0 /* this */
            sipush 273
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTIFFField:(I)Ljavax/imageio/plugins/tiff/TIFFField;
            astore 4 /* f */
        start local 4 // javax.imageio.plugins.tiff.TIFFField f
         4: .line 773
            iconst_0
            istore 5 /* count */
        start local 5 // int count
         5: .line 774
            aload 4 /* f */
            ifnull 8
         6: .line 775
            aload 4 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getCount:()I
            istore 5 /* count */
         7: .line 776
            aload 3 /* offsets */
            aload 4 /* f */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         8: .line 780
      StackMap locals: java.util.List javax.imageio.plugins.tiff.TIFFField int
      StackMap stack:
            aload 0 /* this */
            sipush 324
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTIFFField:(I)Ljavax/imageio/plugins/tiff/TIFFField;
            astore 4 /* f */
         9: .line 781
            aload 4 /* f */
            ifnull 19
        10: .line 782
            aload 3 /* offsets */
            invokeinterface java.util.List.size:()I
            istore 6 /* sz */
        start local 6 // int sz
        11: .line 783
            aload 4 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getCount:()I
            istore 7 /* newCount */
        start local 7 // int newCount
        12: .line 784
            iload 6 /* sz */
            ifle 16
            iload 7 /* newCount */
            iload 5 /* count */
            if_icmpeq 16
        13: .line 785
            new javax.imageio.IIOException
            dup
        14: .line 786
            ldc "StripOffsets count != TileOffsets count"
        15: .line 785
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 789
      StackMap locals: int int
      StackMap stack:
            iload 6 /* sz */
            ifne 18
        17: .line 790
            iload 7 /* newCount */
            istore 5 /* count */
        18: .line 792
      StackMap locals:
      StackMap stack:
            aload 3 /* offsets */
            aload 4 /* f */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // int newCount
        end local 6 // int sz
        19: .line 795
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* byteCounts */
        start local 6 // java.util.List byteCounts
        20: .line 796
            aload 3 /* offsets */
            invokeinterface java.util.List.size:()I
            ifle 52
        21: .line 798
            aload 0 /* this */
            sipush 279
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTIFFField:(I)Ljavax/imageio/plugins/tiff/TIFFField;
            astore 4 /* f */
        22: .line 799
            aload 4 /* f */
            ifnull 28
        23: .line 800
            aload 4 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getCount:()I
            iload 5 /* count */
            if_icmpeq 27
        24: .line 801
            new javax.imageio.IIOException
            dup
        25: .line 802
            ldc "StripByteCounts count != number of offsets"
        26: .line 801
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        27: .line 804
      StackMap locals: java.util.List
      StackMap stack:
            aload 6 /* byteCounts */
            aload 4 /* f */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        28: .line 808
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 325
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTIFFField:(I)Ljavax/imageio/plugins/tiff/TIFFField;
            astore 4 /* f */
        29: .line 809
            aload 4 /* f */
            ifnull 35
        30: .line 810
            aload 4 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getCount:()I
            iload 5 /* count */
            if_icmpeq 34
        31: .line 811
            new javax.imageio.IIOException
            dup
        32: .line 812
            ldc "TileByteCounts count != number of offsets"
        33: .line 811
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        34: .line 814
      StackMap locals:
      StackMap stack:
            aload 6 /* byteCounts */
            aload 4 /* f */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        35: .line 817
      StackMap locals:
      StackMap stack:
            aload 6 /* byteCounts */
            invokeinterface java.util.List.size:()I
            ifle 52
        36: .line 818
            aload 3 /* offsets */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 8
            goto 51
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD long java.util.List javax.imageio.plugins.tiff.TIFFField int java.util.List top java.util.Iterator
      StackMap stack:
        37: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.imageio.plugins.tiff.TIFFField
            astore 7 /* offset */
        start local 7 // javax.imageio.plugins.tiff.TIFFField offset
        38: .line 819
            aload 6 /* byteCounts */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 10
            goto 50
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD long java.util.List javax.imageio.plugins.tiff.TIFFField int java.util.List javax.imageio.plugins.tiff.TIFFField java.util.Iterator top java.util.Iterator
      StackMap stack:
        39: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.imageio.plugins.tiff.TIFFField
            astore 9 /* byteCount */
        start local 9 // javax.imageio.plugins.tiff.TIFFField byteCount
        40: .line 820
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        41: goto 49
        42: .line 821
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD long java.util.List javax.imageio.plugins.tiff.TIFFField int java.util.List javax.imageio.plugins.tiff.TIFFField java.util.Iterator javax.imageio.plugins.tiff.TIFFField java.util.Iterator int
      StackMap stack:
            aload 7 /* offset */
            iload 11 /* i */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getAsLong:(I)J
            lstore 12 /* dataOffset */
        start local 12 // long dataOffset
        43: .line 822
            aload 9 /* byteCount */
            iload 11 /* i */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getAsLong:(I)J
            lstore 14 /* dataByteCount */
        start local 14 // long dataByteCount
        44: .line 823
            lload 12 /* dataOffset */
            lload 14 /* dataByteCount */
            ladd
            lload 1 /* streamLength */
            lcmp
            ifle 48
        45: .line 824
            new javax.imageio.IIOException
            dup
        46: .line 825
            ldc "Data segment out of stream"
        47: .line 824
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        end local 14 // long dataByteCount
        end local 12 // long dataOffset
        48: .line 820
      StackMap locals:
      StackMap stack:
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        49: iload 11 /* i */
            iload 5 /* count */
            if_icmplt 42
        end local 11 // int i
        end local 9 // javax.imageio.plugins.tiff.TIFFField byteCount
        50: .line 819
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD long java.util.List javax.imageio.plugins.tiff.TIFFField int java.util.List javax.imageio.plugins.tiff.TIFFField java.util.Iterator top java.util.Iterator
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 39
        end local 7 // javax.imageio.plugins.tiff.TIFFField offset
        51: .line 818
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD long java.util.List javax.imageio.plugins.tiff.TIFFField int java.util.List top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 37
        52: .line 835
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD long java.util.List javax.imageio.plugins.tiff.TIFFField int java.util.List
      StackMap stack:
            aload 0 /* this */
            sipush 513
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTIFFField:(I)Ljavax/imageio/plugins/tiff/TIFFField;
        53: .line 834
            astore 7 /* jpegOffset */
        start local 7 // javax.imageio.plugins.tiff.TIFFField jpegOffset
        54: .line 836
            aload 7 /* jpegOffset */
            ifnull 63
        55: .line 838
            aload 0 /* this */
            sipush 514
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTIFFField:(I)Ljavax/imageio/plugins/tiff/TIFFField;
        56: .line 837
            astore 8 /* jpegLength */
        start local 8 // javax.imageio.plugins.tiff.TIFFField jpegLength
        57: .line 839
            aload 8 /* jpegLength */
            ifnull 63
        58: .line 840
            aload 7 /* jpegOffset */
            iconst_0
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getAsLong:(I)J
            aload 8 /* jpegLength */
            iconst_0
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getAsLong:(I)J
            ladd
        59: .line 841
            lload 1 /* streamLength */
            lcmp
            ifle 63
        60: .line 842
            new javax.imageio.IIOException
            dup
        61: .line 843
            ldc "JPEGInterchangeFormat data out of stream"
        62: .line 842
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        end local 8 // javax.imageio.plugins.tiff.TIFFField jpegLength
        63: .line 850
      StackMap locals: javax.imageio.plugins.tiff.TIFFField
      StackMap stack:
            aload 7 /* jpegOffset */
            ifnonnull 75
        64: .line 851
            aload 3 /* offsets */
            invokeinterface java.util.List.size:()I
            ifeq 65
            aload 6 /* byteCounts */
            invokeinterface java.util.List.size:()I
            ifne 75
        65: .line 852
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 8 /* throwException */
        start local 8 // boolean throwException
        66: .line 853
            aload 3 /* offsets */
            invokeinterface java.util.List.size:()I
            ifeq 71
            aload 6 /* byteCounts */
            invokeinterface java.util.List.size:()I
            ifne 71
        67: .line 855
            aload 3 /* offsets */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javax.imageio.plugins.tiff.TIFFField
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getCount:()I
            istore 9 /* expectedSize */
        start local 9 // int expectedSize
        68: .line 857
            aload 0 /* this */
            iload 9 /* expectedSize */
            aload 6 /* byteCounts */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.calculateByteCounts:(ILjava/util/List;)Z
            ifeq 69
            iconst_0
            goto 70
      StackMap locals: int int
      StackMap stack:
        69: iconst_1
        70: .line 856
      StackMap locals:
      StackMap stack: int
            istore 8 /* throwException */
        end local 9 // int expectedSize
        71: .line 859
      StackMap locals:
      StackMap stack:
            iload 8 /* throwException */
            ifeq 75
        72: .line 860
            new javax.imageio.IIOException
            dup
        73: .line 861
            ldc "Insufficient data offsets or byte counts"
        74: .line 860
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        end local 8 // boolean throwException
        75: .line 866
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 519
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTIFFField:(I)Ljavax/imageio/plugins/tiff/TIFFField;
            astore 4 /* f */
        76: .line 867
            aload 4 /* f */
            ifnull 84
        77: .line 868
            aload 4 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getAsLongs:()[J
            astore 8 /* tableOffsets */
        start local 8 // long[] tableOffsets
        78: .line 869
            aload 8 /* tableOffsets */
            dup
            astore 13
            arraylength
            istore 12
            iconst_0
            istore 11
            goto 83
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD long java.util.List javax.imageio.plugins.tiff.TIFFField int java.util.List javax.imageio.plugins.tiff.TIFFField long[] top top int int long[]
      StackMap stack:
        79: aload 13
            iload 11
            laload
            lstore 9 /* off */
        start local 9 // long off
        80: .line 870
            lload 9 /* off */
            ldc 64
            ladd
            lload 1 /* streamLength */
            lcmp
            ifle 82
        81: .line 871
            new javax.imageio.IIOException
            dup
            ldc "JPEGQTables data out of stream"
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        end local 9 // long off
        82: .line 869
      StackMap locals:
      StackMap stack:
            iinc 11 1
      StackMap locals:
      StackMap stack:
        83: iload 11
            iload 12
            if_icmplt 79
        end local 8 // long[] tableOffsets
        84: .line 877
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD long java.util.List javax.imageio.plugins.tiff.TIFFField int java.util.List javax.imageio.plugins.tiff.TIFFField
      StackMap stack:
            aload 0 /* this */
            sipush 520
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTIFFField:(I)Ljavax/imageio/plugins/tiff/TIFFField;
            astore 4 /* f */
        85: .line 878
            aload 4 /* f */
            ifnull 93
        86: .line 879
            aload 4 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getAsLongs:()[J
            astore 8 /* tableOffsets */
        start local 8 // long[] tableOffsets
        87: .line 880
            aload 8 /* tableOffsets */
            dup
            astore 13
            arraylength
            istore 12
            iconst_0
            istore 11
            goto 92
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD long java.util.List javax.imageio.plugins.tiff.TIFFField int java.util.List javax.imageio.plugins.tiff.TIFFField long[] top top int int long[]
      StackMap stack:
        88: aload 13
            iload 11
            laload
            lstore 9 /* off */
        start local 9 // long off
        89: .line 881
            lload 9 /* off */
            ldc 16
            ladd
            lload 1 /* streamLength */
            lcmp
            ifle 91
        90: .line 882
            new javax.imageio.IIOException
            dup
            ldc "JPEGDCTables data out of stream"
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        end local 9 // long off
        91: .line 880
      StackMap locals:
      StackMap stack:
            iinc 11 1
      StackMap locals:
      StackMap stack:
        92: iload 11
            iload 12
            if_icmplt 88
        end local 8 // long[] tableOffsets
        93: .line 888
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD long java.util.List javax.imageio.plugins.tiff.TIFFField int java.util.List javax.imageio.plugins.tiff.TIFFField
      StackMap stack:
            aload 0 /* this */
            sipush 521
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTIFFField:(I)Ljavax/imageio/plugins/tiff/TIFFField;
            astore 4 /* f */
        94: .line 889
            aload 4 /* f */
            ifnull 102
        95: .line 890
            aload 4 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getAsLongs:()[J
            astore 8 /* tableOffsets */
        start local 8 // long[] tableOffsets
        96: .line 891
            aload 8 /* tableOffsets */
            dup
            astore 13
            arraylength
            istore 12
            iconst_0
            istore 11
            goto 101
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD long java.util.List javax.imageio.plugins.tiff.TIFFField int java.util.List javax.imageio.plugins.tiff.TIFFField long[] top top int int long[]
      StackMap stack:
        97: aload 13
            iload 11
            laload
            lstore 9 /* off */
        start local 9 // long off
        98: .line 892
            lload 9 /* off */
            ldc 16
            ladd
            lload 1 /* streamLength */
            lcmp
            ifle 100
        99: .line 893
            new javax.imageio.IIOException
            dup
            ldc "JPEGACTables data out of stream"
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        end local 9 // long off
       100: .line 891
      StackMap locals:
      StackMap stack:
            iinc 11 1
      StackMap locals:
      StackMap stack:
       101: iload 11
            iload 12
            if_icmplt 97
        end local 8 // long[] tableOffsets
       102: .line 897
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD long java.util.List javax.imageio.plugins.tiff.TIFFField int java.util.List javax.imageio.plugins.tiff.TIFFField
      StackMap stack:
            return
        end local 7 // javax.imageio.plugins.tiff.TIFFField jpegOffset
        end local 6 // java.util.List byteCounts
        end local 5 // int count
        end local 4 // javax.imageio.plugins.tiff.TIFFField f
        end local 3 // java.util.List offsets
        end local 1 // long streamLength
        end local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0  103     0            this  Lcom/sun/imageio/plugins/tiff/TIFFIFD;
            0  103     1    streamLength  J
            3  103     3         offsets  Ljava/util/List<Ljavax/imageio/plugins/tiff/TIFFField;>;
            4  103     4               f  Ljavax/imageio/plugins/tiff/TIFFField;
            5  103     5           count  I
           11   19     6              sz  I
           12   19     7        newCount  I
           20  103     6      byteCounts  Ljava/util/List<Ljavax/imageio/plugins/tiff/TIFFField;>;
           38   51     7          offset  Ljavax/imageio/plugins/tiff/TIFFField;
           40   50     9       byteCount  Ljavax/imageio/plugins/tiff/TIFFField;
           41   50    11               i  I
           43   48    12      dataOffset  J
           44   48    14   dataByteCount  J
           54  103     7      jpegOffset  Ljavax/imageio/plugins/tiff/TIFFField;
           57   63     8      jpegLength  Ljavax/imageio/plugins/tiff/TIFFField;
           66   75     8  throwException  Z
           68   71     9    expectedSize  I
           78   84     8    tableOffsets  [J
           80   82     9             off  J
           87   93     8    tableOffsets  [J
           89   91     9             off  J
           96  102     8    tableOffsets  [J
           98  100     9             off  J
    Exceptions:
      throws javax.imageio.IIOException
    MethodParameters:
              Name  Flags
      streamLength  

  public void initialize(javax.imageio.stream.ImageInputStream, boolean, boolean, boolean);
    descriptor: (Ljavax/imageio/stream/ImageInputStream;ZZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=27, args_size=5
        start local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
        start local 1 // javax.imageio.stream.ImageInputStream stream
        start local 2 // boolean isPrimaryIFD
        start local 3 // boolean ignoreMetadata
        start local 4 // boolean readUnknownTags
         0: .line 905
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.removeTIFFFields:()V
         1: .line 907
            aload 1 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.length:()J
            lstore 5 /* streamLength */
        start local 5 // long streamLength
         2: .line 908
            lload 5 /* streamLength */
            ldc -1
            lcmp
            ifeq 3
            iconst_1
            goto 4
      StackMap locals: long
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 7 /* haveStreamLength */
        start local 7 // boolean haveStreamLength
         5: .line 910
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTagSetList:()Ljava/util/List;
            astore 8 /* tagSetList */
        start local 8 // java.util.List tagSetList
         6: .line 916
            iconst_0
            istore 9 /* ensureEssentialTags */
        start local 9 // boolean ensureEssentialTags
         7: .line 917
            aconst_null
            astore 10 /* baselineTagSet */
        start local 10 // javax.imageio.plugins.tiff.TIFFTagSet baselineTagSet
         8: .line 918
            iload 2 /* isPrimaryIFD */
            ifeq 15
         9: .line 919
            iload 3 /* ignoreMetadata */
            ifne 12
        10: .line 920
            iload 4 /* readUnknownTags */
            ifne 15
        11: .line 921
            aload 8 /* tagSetList */
            invokestatic javax.imageio.plugins.tiff.BaselineTIFFTagSet.getInstance:()Ljavax/imageio/plugins/tiff/BaselineTIFFTagSet;
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifne 15
        12: .line 922
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD javax.imageio.stream.ImageInputStream int int int long int java.util.List int javax.imageio.plugins.tiff.TIFFTagSet
      StackMap stack:
            iconst_1
            istore 9 /* ensureEssentialTags */
        13: .line 923
            invokestatic com.sun.imageio.plugins.tiff.TIFFIFD.initializeEssentialTags:()V
        14: .line 924
            invokestatic javax.imageio.plugins.tiff.BaselineTIFFTagSet.getInstance:()Ljavax/imageio/plugins/tiff/BaselineTIFFTagSet;
            astore 10 /* baselineTagSet */
        15: .line 927
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 11 /* entries */
        start local 11 // java.util.List entries
        16: .line 928
            iconst_1
            anewarray java.lang.Object
            astore 12 /* entryData */
        start local 12 // java.lang.Object[] entryData
        17: .line 932
            aload 1 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
            istore 13 /* numEntries */
        start local 13 // int numEntries
        18: .line 933
            iconst_0
            istore 14 /* i */
        start local 14 // int i
        19: goto 77
        20: .line 935
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD javax.imageio.stream.ImageInputStream int int int long int java.util.List int javax.imageio.plugins.tiff.TIFFTagSet java.util.List java.lang.Object[] int int
      StackMap stack:
            aload 1 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
            istore 15 /* tagNumber */
        start local 15 // int tagNumber
        21: .line 936
            aload 1 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
            istore 16 /* type */
        start local 16 // int type
        22: .line 939
            iload 16 /* type */
            invokestatic javax.imageio.plugins.tiff.TIFFTag.getSizeOfType:(I)I
            istore 17 /* sizeOfType */
        start local 17 // int sizeOfType
        23: .line 940
            goto 27
        end local 17 // int sizeOfType
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD javax.imageio.stream.ImageInputStream int int int long int java.util.List int javax.imageio.plugins.tiff.TIFFTagSet java.util.List java.lang.Object[] int int int int
      StackMap stack: java.lang.IllegalArgumentException
        24: pop
        25: .line 942
            aload 1 /* stream */
            iconst_4
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        26: .line 943
            goto 76
        start local 17 // int sizeOfType
        27: .line 945
      StackMap locals: int
      StackMap stack:
            aload 1 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            lstore 18 /* longCount */
        start local 18 // long longCount
        28: .line 948
            iload 15 /* tagNumber */
            aload 8 /* tagSetList */
            invokestatic com.sun.imageio.plugins.tiff.TIFFIFD.getTag:(ILjava/util/List;)Ljavax/imageio/plugins/tiff/TIFFTag;
            astore 20 /* tag */
        start local 20 // javax.imageio.plugins.tiff.TIFFTag tag
        29: .line 950
            aload 20 /* tag */
            ifnonnull 32
            iload 9 /* ensureEssentialTags */
            ifeq 32
        30: .line 951
            getstatic com.sun.imageio.plugins.tiff.TIFFIFD.essentialTags:Ljava/util/Set;
            iload 15 /* tagNumber */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 32
        31: .line 952
            aload 10 /* baselineTagSet */
            iload 15 /* tagNumber */
            invokevirtual javax.imageio.plugins.tiff.TIFFTagSet.getTag:(I)Ljavax/imageio/plugins/tiff/TIFFTag;
            astore 20 /* tag */
        32: .line 958
      StackMap locals: long javax.imageio.plugins.tiff.TIFFTag
      StackMap stack:
            iload 3 /* ignoreMetadata */
            ifeq 34
        33: .line 959
            iload 9 /* ensureEssentialTags */
            ifeq 37
            getstatic com.sun.imageio.plugins.tiff.TIFFIFD.essentialTags:Ljava/util/Set;
            iload 15 /* tagNumber */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 37
        34: .line 960
      StackMap locals:
      StackMap stack:
            aload 20 /* tag */
            ifnonnull 35
            iload 4 /* readUnknownTags */
            ifeq 37
        35: .line 961
      StackMap locals:
      StackMap stack:
            aload 20 /* tag */
            ifnull 36
            aload 20 /* tag */
            iload 16 /* type */
            invokevirtual javax.imageio.plugins.tiff.TIFFTag.isDataTypeOK:(I)Z
            ifeq 37
        36: .line 962
      StackMap locals:
      StackMap stack:
            lload 18 /* longCount */
            ldc 2147483647
            lcmp
            ifle 39
        37: .line 965
      StackMap locals:
      StackMap stack:
            aload 1 /* stream */
            iconst_4
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        38: .line 968
            goto 76
        39: .line 971
      StackMap locals:
      StackMap stack:
            lload 18 /* longCount */
            l2i
            istore 21 /* count */
        start local 21 // int count
        40: .line 973
            aload 20 /* tag */
            ifnonnull 45
        41: .line 974
            new javax.imageio.plugins.tiff.TIFFTag
            dup
            ldc "UnknownTag"
            iload 15 /* tagNumber */
        42: .line 975
            iconst_1
            iload 16 /* type */
            ishl
            iload 21 /* count */
        43: .line 974
            invokespecial javax.imageio.plugins.tiff.TIFFTag.<init>:(Ljava/lang/String;III)V
            astore 20 /* tag */
        44: .line 976
            goto 55
        45: .line 977
      StackMap locals: int
      StackMap stack:
            aload 20 /* tag */
            invokevirtual javax.imageio.plugins.tiff.TIFFTag.getCount:()I
            istore 22 /* expectedCount */
        start local 22 // int expectedCount
        46: .line 978
            iload 22 /* expectedCount */
            ifle 51
        47: .line 981
            iload 21 /* count */
            iload 22 /* expectedCount */
            if_icmpeq 55
        48: .line 982
            new javax.imageio.IIOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unexpected count "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        49: .line 983
            iload 21 /* count */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " for "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 20 /* tag */
            invokevirtual javax.imageio.plugins.tiff.TIFFTag.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " field"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        50: .line 982
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        51: .line 985
      StackMap locals: int
      StackMap stack:
            iload 16 /* type */
            iconst_2
            if_icmpne 55
        52: .line 988
            iconst_2
            invokestatic javax.imageio.plugins.tiff.TIFFTag.getSizeOfType:(I)I
            istore 23 /* asciiSize */
        start local 23 // int asciiSize
        53: .line 989
            iload 21 /* count */
            iload 23 /* asciiSize */
            imul
            i2l
            ldc 65535
            lcmp
            ifle 55
        54: .line 990
            ldc 65535
            iload 23 /* asciiSize */
            i2l
            ldiv
            l2i
            istore 21 /* count */
        end local 23 // int asciiSize
        end local 22 // int expectedCount
        55: .line 995
      StackMap locals:
      StackMap stack:
            lload 18 /* longCount */
            iload 17 /* sizeOfType */
            i2l
            lmul
            lstore 22 /* longSize */
        start local 22 // long longSize
        56: .line 996
            lload 22 /* longSize */
            ldc 2147483647
            lcmp
            ifle 59
        57: .line 998
            aload 1 /* stream */
            iconst_4
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        58: .line 999
            goto 76
        59: .line 1001
      StackMap locals: long
      StackMap stack:
            lload 22 /* longSize */
            l2i
            istore 24 /* size */
        start local 24 // int size
        60: .line 1003
            iload 24 /* size */
            iconst_4
            if_icmpgt 61
            aload 20 /* tag */
            invokevirtual javax.imageio.plugins.tiff.TIFFTag.isIFDPointer:()Z
            ifeq 66
        61: .line 1005
      StackMap locals: int
      StackMap stack:
            aload 1 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            lstore 25 /* offset */
        start local 25 // long offset
        62: .line 1008
            iload 7 /* haveStreamLength */
            ifeq 64
            lload 25 /* offset */
            iload 24 /* size */
            i2l
            ladd
            lload 5 /* streamLength */
            lcmp
            ifle 64
        63: .line 1009
            goto 76
        64: .line 1014
      StackMap locals: long
      StackMap stack:
            aload 11 /* entries */
            new com.sun.imageio.plugins.tiff.TIFFIFD$TIFFIFDEntry
            dup
            aload 20 /* tag */
            iload 16 /* type */
            iload 21 /* count */
            lload 25 /* offset */
            invokespecial com.sun.imageio.plugins.tiff.TIFFIFD$TIFFIFDEntry.<init>:(Ljavax/imageio/plugins/tiff/TIFFTag;IIJ)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 25 // long offset
        65: .line 1015
            goto 76
        66: .line 1018
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 25 /* obj */
        start local 25 // java.lang.Object obj
        67: .line 1021
            aload 1 /* stream */
            iload 16 /* type */
            iload 21 /* count */
            aload 12 /* entryData */
            invokestatic com.sun.imageio.plugins.tiff.TIFFIFD.readFieldValue:(Ljavax/imageio/stream/ImageInputStream;II[Ljava/lang/Object;)I
            istore 21 /* count */
        68: .line 1022
            aload 12 /* entryData */
            iconst_0
            aaload
            astore 25 /* obj */
        69: .line 1023
            goto 73
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD javax.imageio.stream.ImageInputStream int int int long int java.util.List int javax.imageio.plugins.tiff.TIFFTagSet java.util.List java.lang.Object[] int int int int int long javax.imageio.plugins.tiff.TIFFTag int long int java.lang.Object
      StackMap stack: java.io.EOFException
        70: astore 26 /* eofe */
        start local 26 // java.io.EOFException eofe
        71: .line 1029
            invokestatic javax.imageio.plugins.tiff.BaselineTIFFTagSet.getInstance:()Ljavax/imageio/plugins/tiff/BaselineTIFFTagSet;
            iload 15 /* tagNumber */
            invokevirtual javax.imageio.plugins.tiff.BaselineTIFFTagSet.getTag:(I)Ljavax/imageio/plugins/tiff/TIFFTag;
            ifnonnull 73
        72: .line 1030
            aload 26 /* eofe */
            athrow
        end local 26 // java.io.EOFException eofe
        73: .line 1036
      StackMap locals:
      StackMap stack:
            iload 24 /* size */
            iconst_4
            if_icmpge 75
        74: .line 1037
            aload 1 /* stream */
            iconst_4
            iload 24 /* size */
            isub
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        75: .line 1041
      StackMap locals:
      StackMap stack:
            aload 11 /* entries */
            new javax.imageio.plugins.tiff.TIFFField
            dup
            aload 20 /* tag */
            iload 16 /* type */
            iload 21 /* count */
            aload 25 /* obj */
            invokespecial javax.imageio.plugins.tiff.TIFFField.<init>:(Ljavax/imageio/plugins/tiff/TIFFTag;IILjava/lang/Object;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 25 // java.lang.Object obj
        end local 24 // int size
        end local 22 // long longSize
        end local 21 // int count
        end local 20 // javax.imageio.plugins.tiff.TIFFTag tag
        end local 18 // long longCount
        end local 17 // int sizeOfType
        end local 16 // int type
        end local 15 // int tagNumber
        76: .line 933
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD javax.imageio.stream.ImageInputStream int int int long int java.util.List int javax.imageio.plugins.tiff.TIFFTagSet java.util.List java.lang.Object[] int int
      StackMap stack:
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
        77: iload 14 /* i */
            iload 13 /* numEntries */
            if_icmplt 20
        end local 14 // int i
        78: .line 1048
            aload 1 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.getStreamPosition:()J
            lstore 14 /* nextIFDOffset */
        start local 14 // long nextIFDOffset
        79: .line 1050
            iconst_1
            anewarray java.lang.Object
            astore 16 /* fieldData */
        start local 16 // java.lang.Object[] fieldData
        80: .line 1051
            aload 11 /* entries */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 18
            goto 125
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD javax.imageio.stream.ImageInputStream int int int long int java.util.List int javax.imageio.plugins.tiff.TIFFTagSet java.util.List java.lang.Object[] int long java.lang.Object[] top java.util.Iterator
      StackMap stack:
        81: aload 18
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 17 /* entry */
        start local 17 // java.lang.Object entry
        82: .line 1052
            aload 17 /* entry */
            instanceof javax.imageio.plugins.tiff.TIFFField
            ifeq 85
        83: .line 1054
            aload 0 /* this */
            aload 17 /* entry */
            checkcast javax.imageio.plugins.tiff.TIFFField
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.addTIFFField:(Ljavax/imageio/plugins/tiff/TIFFField;)V
        84: .line 1055
            goto 125
        85: .line 1056
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD javax.imageio.stream.ImageInputStream int int int long int java.util.List int javax.imageio.plugins.tiff.TIFFTagSet java.util.List java.lang.Object[] int long java.lang.Object[] java.lang.Object java.util.Iterator
      StackMap stack:
            aload 17 /* entry */
            checkcast com.sun.imageio.plugins.tiff.TIFFIFD$TIFFIFDEntry
            astore 19 /* e */
        start local 19 // com.sun.imageio.plugins.tiff.TIFFIFD$TIFFIFDEntry e
        86: .line 1057
            aload 19 /* e */
            getfield com.sun.imageio.plugins.tiff.TIFFIFD$TIFFIFDEntry.tag:Ljavax/imageio/plugins/tiff/TIFFTag;
            astore 20 /* tag */
        start local 20 // javax.imageio.plugins.tiff.TIFFTag tag
        87: .line 1058
            aload 20 /* tag */
            invokevirtual javax.imageio.plugins.tiff.TIFFTag.getNumber:()I
            istore 21 /* tagNumber */
        start local 21 // int tagNumber
        88: .line 1059
            aload 19 /* e */
            getfield com.sun.imageio.plugins.tiff.TIFFIFD$TIFFIFDEntry.type:I
            istore 22 /* type */
        start local 22 // int type
        89: .line 1060
            aload 19 /* e */
            getfield com.sun.imageio.plugins.tiff.TIFFIFD$TIFFIFDEntry.count:I
            istore 23 /* count */
        start local 23 // int count
        90: .line 1062
            aload 1 /* stream */
            aload 19 /* e */
            getfield com.sun.imageio.plugins.tiff.TIFFIFD$TIFFIFDEntry.offset:J
            invokeinterface javax.imageio.stream.ImageInputStream.seek:(J)V
        91: .line 1064
            aload 20 /* tag */
            invokevirtual javax.imageio.plugins.tiff.TIFFTag.isIFDPointer:()Z
            ifeq 101
        92: .line 1065
            new java.util.ArrayList
            dup
            iconst_1
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 24 /* tagSets */
        start local 24 // java.util.List tagSets
        93: .line 1066
            aload 24 /* tagSets */
            aload 20 /* tag */
            invokevirtual javax.imageio.plugins.tiff.TIFFTag.getTagSet:()Ljavax/imageio/plugins/tiff/TIFFTagSet;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        94: .line 1067
            new com.sun.imageio.plugins.tiff.TIFFIFD
            dup
            aload 24 /* tagSets */
            invokespecial com.sun.imageio.plugins.tiff.TIFFIFD.<init>:(Ljava/util/List;)V
            astore 25 /* subIFD */
        start local 25 // com.sun.imageio.plugins.tiff.TIFFIFD subIFD
        95: .line 1069
            aload 25 /* subIFD */
            aload 1 /* stream */
            iconst_0
            iload 3 /* ignoreMetadata */
        96: .line 1070
            iload 4 /* readUnknownTags */
        97: .line 1069
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.initialize:(Ljavax/imageio/stream/ImageInputStream;ZZZ)V
        98: .line 1071
            new javax.imageio.plugins.tiff.TIFFField
            dup
            aload 20 /* tag */
            iload 22 /* type */
            aload 19 /* e */
            getfield com.sun.imageio.plugins.tiff.TIFFIFD$TIFFIFDEntry.offset:J
            aload 25 /* subIFD */
            invokespecial javax.imageio.plugins.tiff.TIFFField.<init>:(Ljavax/imageio/plugins/tiff/TIFFTag;IJLjavax/imageio/plugins/tiff/TIFFDirectory;)V
            astore 26 /* f */
        start local 26 // javax.imageio.plugins.tiff.TIFFField f
        99: .line 1072
            aload 0 /* this */
            aload 26 /* f */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.addTIFFField:(Ljavax/imageio/plugins/tiff/TIFFField;)V
        end local 26 // javax.imageio.plugins.tiff.TIFFField f
        end local 25 // com.sun.imageio.plugins.tiff.TIFFIFD subIFD
        end local 24 // java.util.List tagSets
       100: .line 1073
            goto 125
       101: .line 1074
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD javax.imageio.stream.ImageInputStream int int int long int java.util.List int javax.imageio.plugins.tiff.TIFFTagSet java.util.List java.lang.Object[] int long java.lang.Object[] java.lang.Object java.util.Iterator com.sun.imageio.plugins.tiff.TIFFIFD$TIFFIFDEntry javax.imageio.plugins.tiff.TIFFTag int int int
      StackMap stack:
            iload 21 /* tagNumber */
            sipush 279
            if_icmpeq 104
       102: .line 1075
            iload 21 /* tagNumber */
            sipush 325
            if_icmpeq 104
       103: .line 1076
            iload 21 /* tagNumber */
            sipush 514
            if_icmpne 108
       104: .line 1077
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
       105: .line 1078
            aload 1 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.getStreamPosition:()J
       106: .line 1077
            putfield com.sun.imageio.plugins.tiff.TIFFIFD.stripOrTileByteCountsPosition:J
       107: .line 1079
            goto 114
      StackMap locals:
      StackMap stack:
       108: iload 21 /* tagNumber */
            sipush 273
            if_icmpeq 111
       109: .line 1080
            iload 21 /* tagNumber */
            sipush 324
            if_icmpeq 111
       110: .line 1081
            iload 21 /* tagNumber */
            sipush 513
            if_icmpne 114
       111: .line 1082
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
       112: .line 1083
            aload 1 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.getStreamPosition:()J
       113: .line 1082
            putfield com.sun.imageio.plugins.tiff.TIFFIFD.stripOrTileOffsetsPosition:J
       114: .line 1086
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 24 /* obj */
        start local 24 // java.lang.Object obj
       115: .line 1088
            aload 1 /* stream */
            iload 22 /* type */
            iload 23 /* count */
            aload 16 /* fieldData */
            invokestatic com.sun.imageio.plugins.tiff.TIFFIFD.readFieldValue:(Ljavax/imageio/stream/ImageInputStream;II[Ljava/lang/Object;)I
            istore 23 /* count */
       116: .line 1089
            aload 16 /* fieldData */
            iconst_0
            aaload
            astore 24 /* obj */
       117: .line 1090
            goto 121
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD javax.imageio.stream.ImageInputStream int int int long int java.util.List int javax.imageio.plugins.tiff.TIFFTagSet java.util.List java.lang.Object[] int long java.lang.Object[] java.lang.Object java.util.Iterator com.sun.imageio.plugins.tiff.TIFFIFD$TIFFIFDEntry javax.imageio.plugins.tiff.TIFFTag int int int java.lang.Object
      StackMap stack: java.io.EOFException
       118: astore 25 /* eofe */
        start local 25 // java.io.EOFException eofe
       119: .line 1096
            invokestatic javax.imageio.plugins.tiff.BaselineTIFFTagSet.getInstance:()Ljavax/imageio/plugins/tiff/BaselineTIFFTagSet;
            iload 21 /* tagNumber */
            invokevirtual javax.imageio.plugins.tiff.BaselineTIFFTagSet.getTag:(I)Ljavax/imageio/plugins/tiff/TIFFTag;
            ifnull 121
       120: .line 1097
            aload 25 /* eofe */
            athrow
        end local 25 // java.io.EOFException eofe
       121: .line 1101
      StackMap locals:
      StackMap stack:
            aload 24 /* obj */
            ifnonnull 123
       122: .line 1102
            goto 125
       123: .line 1105
      StackMap locals:
      StackMap stack:
            new javax.imageio.plugins.tiff.TIFFField
            dup
            aload 20 /* tag */
            iload 22 /* type */
            iload 23 /* count */
            aload 24 /* obj */
            invokespecial javax.imageio.plugins.tiff.TIFFField.<init>:(Ljavax/imageio/plugins/tiff/TIFFTag;IILjava/lang/Object;)V
            astore 25 /* f */
        start local 25 // javax.imageio.plugins.tiff.TIFFField f
       124: .line 1106
            aload 0 /* this */
            aload 25 /* f */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.addTIFFField:(Ljavax/imageio/plugins/tiff/TIFFField;)V
        end local 25 // javax.imageio.plugins.tiff.TIFFField f
        end local 24 // java.lang.Object obj
        end local 23 // int count
        end local 22 // int type
        end local 21 // int tagNumber
        end local 20 // javax.imageio.plugins.tiff.TIFFTag tag
        end local 19 // com.sun.imageio.plugins.tiff.TIFFIFD$TIFFIFDEntry e
        end local 17 // java.lang.Object entry
       125: .line 1051
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD javax.imageio.stream.ImageInputStream int int int long int java.util.List int javax.imageio.plugins.tiff.TIFFTagSet java.util.List java.lang.Object[] int long java.lang.Object[] top java.util.Iterator
      StackMap stack:
            aload 18
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 81
       126: .line 1111
            iload 2 /* isPrimaryIFD */
            ifeq 128
            iload 7 /* haveStreamLength */
            ifeq 128
       127: .line 1112
            aload 0 /* this */
            lload 5 /* streamLength */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.checkFieldOffsets:(J)V
       128: .line 1115
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD javax.imageio.stream.ImageInputStream int int int long int java.util.List int javax.imageio.plugins.tiff.TIFFTagSet java.util.List java.lang.Object[] int long java.lang.Object[]
      StackMap stack:
            aload 1 /* stream */
            lload 14 /* nextIFDOffset */
            invokeinterface javax.imageio.stream.ImageInputStream.seek:(J)V
       129: .line 1116
            aload 0 /* this */
            aload 1 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.getStreamPosition:()J
            putfield com.sun.imageio.plugins.tiff.TIFFIFD.lastPosition:J
       130: .line 1117
            return
        end local 16 // java.lang.Object[] fieldData
        end local 14 // long nextIFDOffset
        end local 13 // int numEntries
        end local 12 // java.lang.Object[] entryData
        end local 11 // java.util.List entries
        end local 10 // javax.imageio.plugins.tiff.TIFFTagSet baselineTagSet
        end local 9 // boolean ensureEssentialTags
        end local 8 // java.util.List tagSetList
        end local 7 // boolean haveStreamLength
        end local 5 // long streamLength
        end local 4 // boolean readUnknownTags
        end local 3 // boolean ignoreMetadata
        end local 2 // boolean isPrimaryIFD
        end local 1 // javax.imageio.stream.ImageInputStream stream
        end local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0  131     0                 this  Lcom/sun/imageio/plugins/tiff/TIFFIFD;
            0  131     1               stream  Ljavax/imageio/stream/ImageInputStream;
            0  131     2         isPrimaryIFD  Z
            0  131     3       ignoreMetadata  Z
            0  131     4      readUnknownTags  Z
            2  131     5         streamLength  J
            5  131     7     haveStreamLength  Z
            6  131     8           tagSetList  Ljava/util/List<Ljavax/imageio/plugins/tiff/TIFFTagSet;>;
            7  131     9  ensureEssentialTags  Z
            8  131    10       baselineTagSet  Ljavax/imageio/plugins/tiff/TIFFTagSet;
           16  131    11              entries  Ljava/util/List<Ljava/lang/Object;>;
           17  131    12            entryData  [Ljava/lang/Object;
           18  131    13           numEntries  I
           19   78    14                    i  I
           21   76    15            tagNumber  I
           22   76    16                 type  I
           23   24    17           sizeOfType  I
           27   76    17           sizeOfType  I
           28   76    18            longCount  J
           29   76    20                  tag  Ljavax/imageio/plugins/tiff/TIFFTag;
           40   76    21                count  I
           46   55    22        expectedCount  I
           53   55    23            asciiSize  I
           56   76    22             longSize  J
           60   76    24                 size  I
           62   65    25               offset  J
           67   76    25                  obj  Ljava/lang/Object;
           71   73    26                 eofe  Ljava/io/EOFException;
           79  131    14        nextIFDOffset  J
           80  131    16            fieldData  [Ljava/lang/Object;
           82  125    17                entry  Ljava/lang/Object;
           86  125    19                    e  Lcom/sun/imageio/plugins/tiff/TIFFIFD$TIFFIFDEntry;
           87  125    20                  tag  Ljavax/imageio/plugins/tiff/TIFFTag;
           88  125    21            tagNumber  I
           89  125    22                 type  I
           90  125    23                count  I
           93  100    24              tagSets  Ljava/util/List<Ljavax/imageio/plugins/tiff/TIFFTagSet;>;
           95  100    25               subIFD  Lcom/sun/imageio/plugins/tiff/TIFFIFD;
           99  100    26                    f  Ljavax/imageio/plugins/tiff/TIFFField;
          115  125    24                  obj  Ljava/lang/Object;
          119  121    25                 eofe  Ljava/io/EOFException;
          124  125    25                    f  Ljavax/imageio/plugins/tiff/TIFFField;
      Exception table:
        from    to  target  type
          22    23      24  Class java.lang.IllegalArgumentException
          67    69      70  Class java.io.EOFException
         115   117     118  Class java.io.EOFException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                 Name  Flags
      stream           
      isPrimaryIFD     
      ignoreMetadata   
      readUnknownTags  

  public void writeToStream(javax.imageio.stream.ImageOutputStream);
    descriptor: (Ljavax/imageio/stream/ImageOutputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=15, args_size=2
        start local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
        start local 1 // javax.imageio.stream.ImageOutputStream stream
         0: .line 1122
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getNumTIFFFields:()I
            istore 2 /* numFields */
        start local 2 // int numFields
         1: .line 1123
            aload 1 /* stream */
            iload 2 /* numFields */
            invokeinterface javax.imageio.stream.ImageOutputStream.writeShort:(I)V
         2: .line 1125
            aload 1 /* stream */
            invokeinterface javax.imageio.stream.ImageOutputStream.getStreamPosition:()J
            bipush 12
            iload 2 /* numFields */
            imul
            i2l
            ladd
            ldc 4
            ladd
            lstore 3 /* nextSpace */
        start local 3 // long nextSpace
         3: .line 1127
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.iterator:()Ljava/util/Iterator;
            astore 5 /* iter */
        start local 5 // java.util.Iterator iter
         4: .line 1128
            goto 60
         5: .line 1129
      StackMap locals: int long java.util.Iterator
      StackMap stack:
            aload 5 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.imageio.plugins.tiff.TIFFField
            astore 6 /* f */
        start local 6 // javax.imageio.plugins.tiff.TIFFField f
         6: .line 1131
            aload 6 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getTag:()Ljavax/imageio/plugins/tiff/TIFFTag;
            astore 7 /* tag */
        start local 7 // javax.imageio.plugins.tiff.TIFFTag tag
         7: .line 1133
            aload 6 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getType:()I
            istore 8 /* type */
        start local 8 // int type
         8: .line 1134
            aload 6 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getCount:()I
            istore 9 /* count */
        start local 9 // int count
         9: .line 1137
            iload 8 /* type */
            ifne 11
        10: .line 1138
            bipush 7
            istore 8 /* type */
        11: .line 1140
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD javax.imageio.stream.ImageOutputStream int long java.util.Iterator javax.imageio.plugins.tiff.TIFFField javax.imageio.plugins.tiff.TIFFTag int int
      StackMap stack:
            iload 9 /* count */
            iload 8 /* type */
            invokestatic javax.imageio.plugins.tiff.TIFFTag.getSizeOfType:(I)I
            imul
            istore 10 /* size */
        start local 10 // int size
        12: .line 1142
            iload 8 /* type */
            iconst_2
            if_icmpne 21
        13: .line 1143
            iconst_0
            istore 11 /* chars */
        start local 11 // int chars
        14: .line 1144
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        15: goto 18
        16: .line 1145
      StackMap locals: int int int
      StackMap stack:
            iload 11 /* chars */
            aload 6 /* f */
            iload 12 /* i */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getAsString:(I)Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iconst_1
            iadd
            iadd
            istore 11 /* chars */
        17: .line 1144
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 12 /* i */
            iload 9 /* count */
            if_icmplt 16
        end local 12 // int i
        19: .line 1147
            iload 11 /* chars */
            istore 9 /* count */
        20: .line 1148
            iload 9 /* count */
            istore 10 /* size */
        end local 11 // int chars
        21: .line 1151
      StackMap locals:
      StackMap stack:
            aload 6 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getTagNumber:()I
            istore 11 /* tagNumber */
        start local 11 // int tagNumber
        22: .line 1152
            aload 1 /* stream */
            iload 11 /* tagNumber */
            invokeinterface javax.imageio.stream.ImageOutputStream.writeShort:(I)V
        23: .line 1153
            aload 1 /* stream */
            iload 8 /* type */
            invokeinterface javax.imageio.stream.ImageOutputStream.writeShort:(I)V
        24: .line 1154
            aload 1 /* stream */
            iload 9 /* count */
            invokeinterface javax.imageio.stream.ImageOutputStream.writeInt:(I)V
        25: .line 1157
            aload 1 /* stream */
            iconst_0
            invokeinterface javax.imageio.stream.ImageOutputStream.writeInt:(I)V
        26: .line 1158
            aload 1 /* stream */
            invokeinterface javax.imageio.stream.ImageOutputStream.mark:()V
        27: .line 1159
            aload 1 /* stream */
            bipush -4
            invokeinterface javax.imageio.stream.ImageOutputStream.skipBytes:(I)I
            pop
        28: .line 1163
            iload 10 /* size */
            iconst_4
            if_icmpgt 29
            aload 7 /* tag */
            invokevirtual javax.imageio.plugins.tiff.TIFFTag.isIFDPointer:()Z
            ifeq 41
        29: .line 1165
      StackMap locals: int
      StackMap stack:
            lload 3 /* nextSpace */
            ldc 3
            ladd
            ldc -4
            land
            lstore 3 /* nextSpace */
        30: .line 1167
            aload 1 /* stream */
            lload 3 /* nextSpace */
            l2i
            invokeinterface javax.imageio.stream.ImageOutputStream.writeInt:(I)V
        31: .line 1168
            aload 1 /* stream */
            lload 3 /* nextSpace */
            invokeinterface javax.imageio.stream.ImageOutputStream.seek:(J)V
        32: .line 1169
            lload 3 /* nextSpace */
            lstore 12 /* pos */
        start local 12 // long pos
        33: .line 1171
            aload 7 /* tag */
            invokevirtual javax.imageio.plugins.tiff.TIFFTag.isIFDPointer:()Z
            ifeq 38
            aload 6 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.hasDirectory:()Z
            ifeq 38
        34: .line 1172
            aload 6 /* f */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getDirectory:()Ljavax/imageio/plugins/tiff/TIFFDirectory;
            invokestatic com.sun.imageio.plugins.tiff.TIFFIFD.getDirectoryAsIFD:(Ljavax/imageio/plugins/tiff/TIFFDirectory;)Lcom/sun/imageio/plugins/tiff/TIFFIFD;
            astore 14 /* subIFD */
        start local 14 // com.sun.imageio.plugins.tiff.TIFFIFD subIFD
        35: .line 1173
            aload 14 /* subIFD */
            aload 1 /* stream */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.writeToStream:(Ljavax/imageio/stream/ImageOutputStream;)V
        36: .line 1174
            aload 14 /* subIFD */
            getfield com.sun.imageio.plugins.tiff.TIFFIFD.lastPosition:J
            lstore 3 /* nextSpace */
        end local 14 // com.sun.imageio.plugins.tiff.TIFFIFD subIFD
        37: .line 1175
            goto 43
        38: .line 1176
      StackMap locals: long
      StackMap stack:
            aload 6 /* f */
            aload 1 /* stream */
            invokestatic com.sun.imageio.plugins.tiff.TIFFIFD.writeTIFFFieldToStream:(Ljavax/imageio/plugins/tiff/TIFFField;Ljavax/imageio/stream/ImageOutputStream;)V
        39: .line 1177
            aload 1 /* stream */
            invokeinterface javax.imageio.stream.ImageOutputStream.getStreamPosition:()J
            lstore 3 /* nextSpace */
        40: .line 1179
            goto 43
        end local 12 // long pos
        41: .line 1180
      StackMap locals:
      StackMap stack:
            aload 1 /* stream */
            invokeinterface javax.imageio.stream.ImageOutputStream.getStreamPosition:()J
            lstore 12 /* pos */
        start local 12 // long pos
        42: .line 1181
            aload 6 /* f */
            aload 1 /* stream */
            invokestatic com.sun.imageio.plugins.tiff.TIFFIFD.writeTIFFFieldToStream:(Ljavax/imageio/plugins/tiff/TIFFField;Ljavax/imageio/stream/ImageOutputStream;)V
        43: .line 1189
      StackMap locals: long
      StackMap stack:
            iload 11 /* tagNumber */
        44: .line 1190
            sipush 279
        45: .line 1189
            if_icmpeq 48
        46: .line 1191
            iload 11 /* tagNumber */
            sipush 325
            if_icmpeq 48
        47: .line 1192
            iload 11 /* tagNumber */
            sipush 514
            if_icmpne 50
        48: .line 1193
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 12 /* pos */
            putfield com.sun.imageio.plugins.tiff.TIFFIFD.stripOrTileByteCountsPosition:J
        49: .line 1194
            goto 59
      StackMap locals:
      StackMap stack:
        50: iload 11 /* tagNumber */
        51: .line 1195
            sipush 273
            if_icmpeq 58
        52: .line 1196
            iload 11 /* tagNumber */
        53: .line 1197
            sipush 324
        54: .line 1196
            if_icmpeq 58
        55: .line 1198
            iload 11 /* tagNumber */
        56: .line 1199
            sipush 513
        57: .line 1198
            if_icmpne 59
        58: .line 1200
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 12 /* pos */
            putfield com.sun.imageio.plugins.tiff.TIFFIFD.stripOrTileOffsetsPosition:J
        59: .line 1203
      StackMap locals:
      StackMap stack:
            aload 1 /* stream */
            invokeinterface javax.imageio.stream.ImageOutputStream.reset:()V
        end local 12 // long pos
        end local 11 // int tagNumber
        end local 10 // int size
        end local 9 // int count
        end local 8 // int type
        end local 7 // javax.imageio.plugins.tiff.TIFFTag tag
        end local 6 // javax.imageio.plugins.tiff.TIFFField f
        60: .line 1128
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD javax.imageio.stream.ImageOutputStream int long java.util.Iterator
      StackMap stack:
            aload 5 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        61: .line 1206
            aload 0 /* this */
            lload 3 /* nextSpace */
            putfield com.sun.imageio.plugins.tiff.TIFFIFD.lastPosition:J
        62: .line 1207
            return
        end local 5 // java.util.Iterator iter
        end local 3 // long nextSpace
        end local 2 // int numFields
        end local 1 // javax.imageio.stream.ImageOutputStream stream
        end local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   63     0       this  Lcom/sun/imageio/plugins/tiff/TIFFIFD;
            0   63     1     stream  Ljavax/imageio/stream/ImageOutputStream;
            1   63     2  numFields  I
            3   63     3  nextSpace  J
            4   63     5       iter  Ljava/util/Iterator<Ljavax/imageio/plugins/tiff/TIFFField;>;
            6   60     6          f  Ljavax/imageio/plugins/tiff/TIFFField;
            7   60     7        tag  Ljavax/imageio/plugins/tiff/TIFFTag;
            8   60     8       type  I
            9   60     9      count  I
           12   60    10       size  I
           14   21    11      chars  I
           15   19    12          i  I
           22   60    11  tagNumber  I
           33   41    12        pos  J
           42   60    12        pos  J
           35   37    14     subIFD  Lcom/sun/imageio/plugins/tiff/TIFFIFD;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      stream  

  public long getStripOrTileByteCountsPosition();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
         0: .line 1210
            aload 0 /* this */
            getfield com.sun.imageio.plugins.tiff.TIFFIFD.stripOrTileByteCountsPosition:J
            lreturn
        end local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/imageio/plugins/tiff/TIFFIFD;

  public long getStripOrTileOffsetsPosition();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
         0: .line 1214
            aload 0 /* this */
            getfield com.sun.imageio.plugins.tiff.TIFFIFD.stripOrTileOffsetsPosition:J
            lreturn
        end local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/imageio/plugins/tiff/TIFFIFD;

  public long getLastPosition();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
         0: .line 1218
            aload 0 /* this */
            getfield com.sun.imageio.plugins.tiff.TIFFIFD.lastPosition:J
            lreturn
        end local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/imageio/plugins/tiff/TIFFIFD;

  void setPositions(long, long, long);
    descriptor: (JJJ)V
    flags: (0x0000) 
    Code:
      stack=3, locals=7, args_size=4
        start local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
        start local 1 // long stripOrTileOffsetsPosition
        start local 3 // long stripOrTileByteCountsPosition
        start local 5 // long lastPosition
         0: .line 1224
            aload 0 /* this */
            lload 1 /* stripOrTileOffsetsPosition */
            putfield com.sun.imageio.plugins.tiff.TIFFIFD.stripOrTileOffsetsPosition:J
         1: .line 1225
            aload 0 /* this */
            lload 3 /* stripOrTileByteCountsPosition */
            putfield com.sun.imageio.plugins.tiff.TIFFIFD.stripOrTileByteCountsPosition:J
         2: .line 1226
            aload 0 /* this */
            lload 5 /* lastPosition */
            putfield com.sun.imageio.plugins.tiff.TIFFIFD.lastPosition:J
         3: .line 1227
            return
        end local 5 // long lastPosition
        end local 3 // long stripOrTileByteCountsPosition
        end local 1 // long stripOrTileOffsetsPosition
        end local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
      LocalVariableTable:
        Start  End  Slot                           Name  Signature
            0    4     0                           this  Lcom/sun/imageio/plugins/tiff/TIFFIFD;
            0    4     1     stripOrTileOffsetsPosition  J
            0    4     3  stripOrTileByteCountsPosition  J
            0    4     5                   lastPosition  J
    MethodParameters:
                               Name  Flags
      stripOrTileOffsetsPosition     
      stripOrTileByteCountsPosition  
      lastPosition                   

  public com.sun.imageio.plugins.tiff.TIFFIFD getShallowClone();
    descriptor: ()Lcom/sun/imageio/plugins/tiff/TIFFIFD;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=11, args_size=1
        start local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
         0: .line 1236
            invokestatic javax.imageio.plugins.tiff.BaselineTIFFTagSet.getInstance:()Ljavax/imageio/plugins/tiff/BaselineTIFFTagSet;
            astore 1 /* baselineTagSet */
        start local 1 // javax.imageio.plugins.tiff.TIFFTagSet baselineTagSet
         1: .line 1239
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getTagSetList:()Ljava/util/List;
            astore 2 /* tagSetList */
        start local 2 // java.util.List tagSetList
         2: .line 1240
            aload 2 /* tagSetList */
            aload 1 /* baselineTagSet */
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifne 4
         3: .line 1241
            aload 0 /* this */
            areturn
         4: .line 1245
      StackMap locals: javax.imageio.plugins.tiff.TIFFTagSet java.util.List
      StackMap stack:
            new com.sun.imageio.plugins.tiff.TIFFIFD
            dup
            aload 2 /* tagSetList */
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.getParentTag:()Ljavax/imageio/plugins/tiff/TIFFTag;
            invokespecial com.sun.imageio.plugins.tiff.TIFFIFD.<init>:(Ljava/util/List;Ljavax/imageio/plugins/tiff/TIFFTag;)V
            astore 3 /* shallowClone */
        start local 3 // com.sun.imageio.plugins.tiff.TIFFIFD shallowClone
         5: .line 1248
            aload 1 /* baselineTagSet */
            invokevirtual javax.imageio.plugins.tiff.TIFFTagSet.getTagNumbers:()Ljava/util/SortedSet;
            astore 4 /* baselineTagNumbers */
        start local 4 // java.util.Set baselineTagNumbers
         6: .line 1251
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.iterator:()Ljava/util/Iterator;
            astore 5 /* fields */
        start local 5 // java.util.Iterator fields
         7: .line 1252
            goto 41
         8: .line 1254
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD java.util.Set java.util.Iterator
      StackMap stack:
            aload 5 /* fields */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.imageio.plugins.tiff.TIFFField
            astore 6 /* field */
        start local 6 // javax.imageio.plugins.tiff.TIFFField field
         9: .line 1257
            aload 6 /* field */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getTagNumber:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 7 /* tagNumber */
        start local 7 // java.lang.Integer tagNumber
        10: .line 1261
            aload 4 /* baselineTagNumbers */
            aload 7 /* tagNumber */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 39
        11: .line 1263
            aload 6 /* field */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getData:()Ljava/lang/Object;
            astore 9 /* fieldData */
        start local 9 // java.lang.Object fieldData
        12: .line 1265
            aload 6 /* field */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getType:()I
            istore 10 /* fieldType */
        start local 10 // int fieldType
        13: .line 1268
            iload 10 /* fieldType */
            tableswitch { // 1 - 13
                    1: 14
                    2: 16
                    3: 18
                    4: 20
                    5: 22
                    6: 14
                    7: 14
                    8: 24
                    9: 26
                   10: 28
                   11: 30
                   12: 32
                   13: 20
              default: 33
          }
        14: .line 1272
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD javax.imageio.plugins.tiff.TIFFTagSet java.util.List com.sun.imageio.plugins.tiff.TIFFIFD java.util.Set java.util.Iterator javax.imageio.plugins.tiff.TIFFField java.lang.Integer top java.lang.Object int
      StackMap stack:
            aload 9 /* fieldData */
            checkcast byte[]
            invokevirtual byte[].clone:()Ljava/lang/Object;
            astore 9 /* fieldData */
        15: .line 1273
            goto 35
        16: .line 1275
      StackMap locals:
      StackMap stack:
            aload 9 /* fieldData */
            checkcast java.lang.String[]
            invokevirtual java.lang.String[].clone:()Ljava/lang/Object;
            astore 9 /* fieldData */
        17: .line 1276
            goto 35
        18: .line 1278
      StackMap locals:
      StackMap stack:
            aload 9 /* fieldData */
            checkcast char[]
            invokevirtual char[].clone:()Ljava/lang/Object;
            astore 9 /* fieldData */
        19: .line 1279
            goto 35
        20: .line 1282
      StackMap locals:
      StackMap stack:
            aload 9 /* fieldData */
            checkcast long[]
            invokevirtual long[].clone:()Ljava/lang/Object;
            astore 9 /* fieldData */
        21: .line 1283
            goto 35
        22: .line 1285
      StackMap locals:
      StackMap stack:
            aload 9 /* fieldData */
            checkcast long[][]
            invokevirtual long[][].clone:()Ljava/lang/Object;
            astore 9 /* fieldData */
        23: .line 1286
            goto 35
        24: .line 1288
      StackMap locals:
      StackMap stack:
            aload 9 /* fieldData */
            checkcast short[]
            invokevirtual short[].clone:()Ljava/lang/Object;
            astore 9 /* fieldData */
        25: .line 1289
            goto 35
        26: .line 1291
      StackMap locals:
      StackMap stack:
            aload 9 /* fieldData */
            checkcast int[]
            invokevirtual int[].clone:()Ljava/lang/Object;
            astore 9 /* fieldData */
        27: .line 1292
            goto 35
        28: .line 1294
      StackMap locals:
      StackMap stack:
            aload 9 /* fieldData */
            checkcast int[][]
            invokevirtual int[][].clone:()Ljava/lang/Object;
            astore 9 /* fieldData */
        29: .line 1295
            goto 35
        30: .line 1297
      StackMap locals:
      StackMap stack:
            aload 9 /* fieldData */
            checkcast float[]
            invokevirtual float[].clone:()Ljava/lang/Object;
            astore 9 /* fieldData */
        31: .line 1298
            goto 35
        32: .line 1300
      StackMap locals:
      StackMap stack:
            aload 9 /* fieldData */
            checkcast double[]
            invokevirtual double[].clone:()Ljava/lang/Object;
            astore 9 /* fieldData */
        33: .line 1305
      StackMap locals:
      StackMap stack:
            goto 35
      StackMap locals:
      StackMap stack: java.lang.Exception
        34: pop
        35: .line 1309
      StackMap locals:
      StackMap stack:
            new javax.imageio.plugins.tiff.TIFFField
            dup
            aload 6 /* field */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getTag:()Ljavax/imageio/plugins/tiff/TIFFTag;
            iload 10 /* fieldType */
        36: .line 1310
            aload 6 /* field */
            invokevirtual javax.imageio.plugins.tiff.TIFFField.getCount:()I
            aload 9 /* fieldData */
        37: .line 1309
            invokespecial javax.imageio.plugins.tiff.TIFFField.<init>:(Ljavax/imageio/plugins/tiff/TIFFTag;IILjava/lang/Object;)V
            astore 8 /* fieldClone */
        end local 10 // int fieldType
        end local 9 // java.lang.Object fieldData
        start local 8 // javax.imageio.plugins.tiff.TIFFField fieldClone
        38: .line 1311
            goto 40
        end local 8 // javax.imageio.plugins.tiff.TIFFField fieldClone
        39: .line 1313
      StackMap locals: com.sun.imageio.plugins.tiff.TIFFIFD javax.imageio.plugins.tiff.TIFFTagSet java.util.List com.sun.imageio.plugins.tiff.TIFFIFD java.util.Set java.util.Iterator javax.imageio.plugins.tiff.TIFFField java.lang.Integer
      StackMap stack:
            aload 6 /* field */
            astore 8 /* fieldClone */
        start local 8 // javax.imageio.plugins.tiff.TIFFField fieldClone
        40: .line 1317
      StackMap locals: javax.imageio.plugins.tiff.TIFFField
      StackMap stack:
            aload 3 /* shallowClone */
            aload 8 /* fieldClone */
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.addTIFFField:(Ljavax/imageio/plugins/tiff/TIFFField;)V
        end local 8 // javax.imageio.plugins.tiff.TIFFField fieldClone
        end local 7 // java.lang.Integer tagNumber
        end local 6 // javax.imageio.plugins.tiff.TIFFField field
        41: .line 1252
      StackMap locals:
      StackMap stack:
            aload 5 /* fields */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        42: .line 1321
            aload 3 /* shallowClone */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.tiff.TIFFIFD.stripOrTileOffsetsPosition:J
        43: .line 1322
            aload 0 /* this */
            getfield com.sun.imageio.plugins.tiff.TIFFIFD.stripOrTileByteCountsPosition:J
        44: .line 1323
            aload 0 /* this */
            getfield com.sun.imageio.plugins.tiff.TIFFIFD.lastPosition:J
        45: .line 1321
            invokevirtual com.sun.imageio.plugins.tiff.TIFFIFD.setPositions:(JJJ)V
        46: .line 1325
            aload 3 /* shallowClone */
            areturn
        end local 5 // java.util.Iterator fields
        end local 4 // java.util.Set baselineTagNumbers
        end local 3 // com.sun.imageio.plugins.tiff.TIFFIFD shallowClone
        end local 2 // java.util.List tagSetList
        end local 1 // javax.imageio.plugins.tiff.TIFFTagSet baselineTagSet
        end local 0 // com.sun.imageio.plugins.tiff.TIFFIFD this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   47     0                this  Lcom/sun/imageio/plugins/tiff/TIFFIFD;
            1   47     1      baselineTagSet  Ljavax/imageio/plugins/tiff/TIFFTagSet;
            2   47     2          tagSetList  Ljava/util/List<Ljavax/imageio/plugins/tiff/TIFFTagSet;>;
            5   47     3        shallowClone  Lcom/sun/imageio/plugins/tiff/TIFFIFD;
            6   47     4  baselineTagNumbers  Ljava/util/Set<Ljava/lang/Integer;>;
            7   47     5              fields  Ljava/util/Iterator<Ljavax/imageio/plugins/tiff/TIFFField;>;
            9   41     6               field  Ljavax/imageio/plugins/tiff/TIFFField;
           10   41     7           tagNumber  Ljava/lang/Integer;
           38   39     8          fieldClone  Ljavax/imageio/plugins/tiff/TIFFField;
           40   41     8          fieldClone  Ljavax/imageio/plugins/tiff/TIFFField;
           12   38     9           fieldData  Ljava/lang/Object;
           13   38    10           fieldType  I
      Exception table:
        from    to  target  type
          13    33      34  Class java.lang.Exception
}
SourceFile: "TIFFIFD.java"
NestMembers:
  com.sun.imageio.plugins.tiff.TIFFIFD$TIFFIFDEntry
InnerClasses:
  private TIFFIFDEntry = com.sun.imageio.plugins.tiff.TIFFIFD$TIFFIFDEntry of com.sun.imageio.plugins.tiff.TIFFIFD