public final class javax.swing.text.StringContent implements javax.swing.text.AbstractDocument$Content, java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: javax.swing.text.StringContent
  super_class: java.lang.Object
{
  private static final char[] empty;
    descriptor: [C
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private char[] data;
    descriptor: [C
    flags: (0x0002) ACC_PRIVATE

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

  transient java.util.Vector<javax.swing.text.StringContent$PosRec> marks;
    descriptor: Ljava/util/Vector;
    flags: (0x0080) ACC_TRANSIENT
    Signature: Ljava/util/Vector<Ljavax/swing/text/StringContent$PosRec;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 315
            iconst_0
            newarray 5
            putstatic javax.swing.text.StringContent.empty:[C
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.swing.text.StringContent this
         0: .line 60
            aload 0 /* this */
            bipush 10
            invokespecial javax.swing.text.StringContent.<init>:(I)V
         1: .line 61
            return
        end local 0 // javax.swing.text.StringContent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/swing/text/StringContent;

  public void <init>(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javax.swing.text.StringContent this
        start local 1 // int initialLength
         0: .line 69
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 70
            iload 1 /* initialLength */
            iconst_1
            if_icmpge 3
         2: .line 71
            iconst_1
            istore 1 /* initialLength */
         3: .line 73
      StackMap locals: javax.swing.text.StringContent int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* initialLength */
            newarray 5
            putfield javax.swing.text.StringContent.data:[C
         4: .line 74
            aload 0 /* this */
            getfield javax.swing.text.StringContent.data:[C
            iconst_0
            bipush 10
            castore
         5: .line 75
            aload 0 /* this */
            iconst_1
            putfield javax.swing.text.StringContent.count:I
         6: .line 76
            return
        end local 1 // int initialLength
        end local 0 // javax.swing.text.StringContent this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0           this  Ljavax/swing/text/StringContent;
            0    7     1  initialLength  I
    MethodParameters:
               Name  Flags
      initialLength  

  public int length();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.text.StringContent this
         0: .line 85
            aload 0 /* this */
            getfield javax.swing.text.StringContent.count:I
            ireturn
        end local 0 // javax.swing.text.StringContent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/text/StringContent;

  public javax.swing.undo.UndoableEdit insertString(int, java.lang.String);
    descriptor: (ILjava/lang/String;)Ljavax/swing/undo/UndoableEdit;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // javax.swing.text.StringContent this
        start local 1 // int where
        start local 2 // java.lang.String str
         0: .line 98
            iload 1 /* where */
            aload 0 /* this */
            getfield javax.swing.text.StringContent.count:I
            if_icmpge 1
            iload 1 /* where */
            ifge 2
         1: .line 99
      StackMap locals:
      StackMap stack:
            new javax.swing.text.BadLocationException
            dup
            ldc "Invalid location"
            aload 0 /* this */
            getfield javax.swing.text.StringContent.count:I
            invokespecial javax.swing.text.BadLocationException.<init>:(Ljava/lang/String;I)V
            athrow
         2: .line 101
      StackMap locals:
      StackMap stack:
            aload 2 /* str */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 3 /* chars */
        start local 3 // char[] chars
         3: .line 102
            aload 0 /* this */
            iload 1 /* where */
            iconst_0
            aload 3 /* chars */
            iconst_0
            aload 3 /* chars */
            arraylength
            invokevirtual javax.swing.text.StringContent.replace:(II[CII)V
         4: .line 103
            aload 0 /* this */
            getfield javax.swing.text.StringContent.marks:Ljava/util/Vector;
            ifnull 6
         5: .line 104
            aload 0 /* this */
            iload 1 /* where */
            aload 2 /* str */
            invokevirtual java.lang.String.length:()I
            invokevirtual javax.swing.text.StringContent.updateMarksForInsert:(II)V
         6: .line 106
      StackMap locals: char[]
      StackMap stack:
            new javax.swing.text.StringContent$InsertUndo
            dup
            aload 0 /* this */
            iload 1 /* where */
            aload 2 /* str */
            invokevirtual java.lang.String.length:()I
            invokespecial javax.swing.text.StringContent$InsertUndo.<init>:(Ljavax/swing/text/StringContent;II)V
            areturn
        end local 3 // char[] chars
        end local 2 // java.lang.String str
        end local 1 // int where
        end local 0 // javax.swing.text.StringContent this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Ljavax/swing/text/StringContent;
            0    7     1  where  I
            0    7     2    str  Ljava/lang/String;
            3    7     3  chars  [C
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
       Name  Flags
      where  
      str    

  public javax.swing.undo.UndoableEdit remove(int, int);
    descriptor: (II)Ljavax/swing/undo/UndoableEdit;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // javax.swing.text.StringContent this
        start local 1 // int where
        start local 2 // int nitems
         0: .line 119
            iload 1 /* where */
            iload 2 /* nitems */
            iadd
            aload 0 /* this */
            getfield javax.swing.text.StringContent.count:I
            if_icmplt 2
         1: .line 120
            new javax.swing.text.BadLocationException
            dup
            ldc "Invalid range"
            aload 0 /* this */
            getfield javax.swing.text.StringContent.count:I
            invokespecial javax.swing.text.BadLocationException.<init>:(Ljava/lang/String;I)V
            athrow
         2: .line 122
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* where */
            iload 2 /* nitems */
            invokevirtual javax.swing.text.StringContent.getString:(II)Ljava/lang/String;
            astore 3 /* removedString */
        start local 3 // java.lang.String removedString
         3: .line 123
            new javax.swing.text.StringContent$RemoveUndo
            dup
            aload 0 /* this */
            iload 1 /* where */
            aload 3 /* removedString */
            invokespecial javax.swing.text.StringContent$RemoveUndo.<init>:(Ljavax/swing/text/StringContent;ILjava/lang/String;)V
            astore 4 /* edit */
        start local 4 // javax.swing.undo.UndoableEdit edit
         4: .line 124
            aload 0 /* this */
            iload 1 /* where */
            iload 2 /* nitems */
            getstatic javax.swing.text.StringContent.empty:[C
            iconst_0
            iconst_0
            invokevirtual javax.swing.text.StringContent.replace:(II[CII)V
         5: .line 125
            aload 0 /* this */
            getfield javax.swing.text.StringContent.marks:Ljava/util/Vector;
            ifnull 7
         6: .line 126
            aload 0 /* this */
            iload 1 /* where */
            iload 2 /* nitems */
            invokevirtual javax.swing.text.StringContent.updateMarksForRemove:(II)V
         7: .line 128
      StackMap locals: java.lang.String javax.swing.undo.UndoableEdit
      StackMap stack:
            aload 4 /* edit */
            areturn
        end local 4 // javax.swing.undo.UndoableEdit edit
        end local 3 // java.lang.String removedString
        end local 2 // int nitems
        end local 1 // int where
        end local 0 // javax.swing.text.StringContent this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    8     0           this  Ljavax/swing/text/StringContent;
            0    8     1          where  I
            0    8     2         nitems  I
            3    8     3  removedString  Ljava/lang/String;
            4    8     4           edit  Ljavax/swing/undo/UndoableEdit;
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
        Name  Flags
      where   
      nitems  

  public java.lang.String getString(int, int);
    descriptor: (II)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // javax.swing.text.StringContent this
        start local 1 // int where
        start local 2 // int len
         0: .line 142
            iload 1 /* where */
            iload 2 /* len */
            iadd
            aload 0 /* this */
            getfield javax.swing.text.StringContent.count:I
            if_icmple 2
         1: .line 143
            new javax.swing.text.BadLocationException
            dup
            ldc "Invalid range"
            aload 0 /* this */
            getfield javax.swing.text.StringContent.count:I
            invokespecial javax.swing.text.BadLocationException.<init>:(Ljava/lang/String;I)V
            athrow
         2: .line 145
      StackMap locals:
      StackMap stack:
            new java.lang.String
            dup
            aload 0 /* this */
            getfield javax.swing.text.StringContent.data:[C
            iload 1 /* where */
            iload 2 /* len */
            invokespecial java.lang.String.<init>:([CII)V
            areturn
        end local 2 // int len
        end local 1 // int where
        end local 0 // javax.swing.text.StringContent this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljavax/swing/text/StringContent;
            0    3     1  where  I
            0    3     2    len  I
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
       Name  Flags
      where  
      len    

  public void getChars(int, int, javax.swing.text.Segment);
    descriptor: (IILjavax/swing/text/Segment;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // javax.swing.text.StringContent this
        start local 1 // int where
        start local 2 // int len
        start local 3 // javax.swing.text.Segment chars
         0: .line 158
            iload 1 /* where */
            iload 2 /* len */
            iadd
            aload 0 /* this */
            getfield javax.swing.text.StringContent.count:I
            if_icmple 2
         1: .line 159
            new javax.swing.text.BadLocationException
            dup
            ldc "Invalid location"
            aload 0 /* this */
            getfield javax.swing.text.StringContent.count:I
            invokespecial javax.swing.text.BadLocationException.<init>:(Ljava/lang/String;I)V
            athrow
         2: .line 161
      StackMap locals:
      StackMap stack:
            aload 3 /* chars */
            aload 0 /* this */
            getfield javax.swing.text.StringContent.data:[C
            putfield javax.swing.text.Segment.array:[C
         3: .line 162
            aload 3 /* chars */
            iload 1 /* where */
            putfield javax.swing.text.Segment.offset:I
         4: .line 163
            aload 3 /* chars */
            iload 2 /* len */
            putfield javax.swing.text.Segment.count:I
         5: .line 164
            return
        end local 3 // javax.swing.text.Segment chars
        end local 2 // int len
        end local 1 // int where
        end local 0 // javax.swing.text.StringContent this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Ljavax/swing/text/StringContent;
            0    6     1  where  I
            0    6     2    len  I
            0    6     3  chars  Ljavax/swing/text/Segment;
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
       Name  Flags
      where  
      len    
      chars  

  public javax.swing.text.Position createPosition(int);
    descriptor: (I)Ljavax/swing/text/Position;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // javax.swing.text.StringContent this
        start local 1 // int offset
         0: .line 177
            aload 0 /* this */
            getfield javax.swing.text.StringContent.marks:Ljava/util/Vector;
            ifnonnull 2
         1: .line 178
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield javax.swing.text.StringContent.marks:Ljava/util/Vector;
         2: .line 180
      StackMap locals:
      StackMap stack:
            new javax.swing.text.StringContent$StickyPosition
            dup
            aload 0 /* this */
            iload 1 /* offset */
            invokespecial javax.swing.text.StringContent$StickyPosition.<init>:(Ljavax/swing/text/StringContent;I)V
            areturn
        end local 1 // int offset
        end local 0 // javax.swing.text.StringContent this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljavax/swing/text/StringContent;
            0    3     1  offset  I
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
        Name  Flags
      offset  

  void replace(int, int, char[], int, int);
    descriptor: (II[CII)V
    flags: (0x0000) 
    Code:
      stack=5, locals=12, args_size=6
        start local 0 // javax.swing.text.StringContent this
        start local 1 // int offset
        start local 2 // int length
        start local 3 // char[] replArray
        start local 4 // int replOffset
        start local 5 // int replLength
         0: .line 196
            iload 5 /* replLength */
            iload 2 /* length */
            isub
            istore 6 /* delta */
        start local 6 // int delta
         1: .line 197
            iload 1 /* offset */
            iload 2 /* length */
            iadd
            istore 7 /* src */
        start local 7 // int src
         2: .line 198
            aload 0 /* this */
            getfield javax.swing.text.StringContent.count:I
            iload 7 /* src */
            isub
            istore 8 /* nmove */
        start local 8 // int nmove
         3: .line 199
            iload 7 /* src */
            iload 6 /* delta */
            iadd
            istore 9 /* dest */
        start local 9 // int dest
         4: .line 200
            aload 0 /* this */
            getfield javax.swing.text.StringContent.count:I
            iload 6 /* delta */
            iadd
            aload 0 /* this */
            getfield javax.swing.text.StringContent.data:[C
            arraylength
            if_icmplt 12
         5: .line 202
            iconst_2
            aload 0 /* this */
            getfield javax.swing.text.StringContent.data:[C
            arraylength
            imul
            aload 0 /* this */
            getfield javax.swing.text.StringContent.count:I
            iload 6 /* delta */
            iadd
            invokestatic java.lang.Math.max:(II)I
            istore 10 /* newLength */
        start local 10 // int newLength
         6: .line 203
            iload 10 /* newLength */
            newarray 5
            astore 11 /* newData */
        start local 11 // char[] newData
         7: .line 204
            aload 0 /* this */
            getfield javax.swing.text.StringContent.data:[C
            iconst_0
            aload 11 /* newData */
            iconst_0
            iload 1 /* offset */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         8: .line 205
            aload 3 /* replArray */
            iload 4 /* replOffset */
            aload 11 /* newData */
            iload 1 /* offset */
            iload 5 /* replLength */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         9: .line 206
            aload 0 /* this */
            getfield javax.swing.text.StringContent.data:[C
            iload 7 /* src */
            aload 11 /* newData */
            iload 9 /* dest */
            iload 8 /* nmove */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        10: .line 207
            aload 0 /* this */
            aload 11 /* newData */
            putfield javax.swing.text.StringContent.data:[C
        end local 11 // char[] newData
        end local 10 // int newLength
        11: .line 208
            goto 14
        12: .line 210
      StackMap locals: javax.swing.text.StringContent int int char[] int int int int int int
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.text.StringContent.data:[C
            iload 7 /* src */
            aload 0 /* this */
            getfield javax.swing.text.StringContent.data:[C
            iload 9 /* dest */
            iload 8 /* nmove */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        13: .line 211
            aload 3 /* replArray */
            iload 4 /* replOffset */
            aload 0 /* this */
            getfield javax.swing.text.StringContent.data:[C
            iload 1 /* offset */
            iload 5 /* replLength */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        14: .line 213
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield javax.swing.text.StringContent.count:I
            iload 6 /* delta */
            iadd
            putfield javax.swing.text.StringContent.count:I
        15: .line 214
            return
        end local 9 // int dest
        end local 8 // int nmove
        end local 7 // int src
        end local 6 // int delta
        end local 5 // int replLength
        end local 4 // int replOffset
        end local 3 // char[] replArray
        end local 2 // int length
        end local 1 // int offset
        end local 0 // javax.swing.text.StringContent this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   16     0        this  Ljavax/swing/text/StringContent;
            0   16     1      offset  I
            0   16     2      length  I
            0   16     3   replArray  [C
            0   16     4  replOffset  I
            0   16     5  replLength  I
            1   16     6       delta  I
            2   16     7         src  I
            3   16     8       nmove  I
            4   16     9        dest  I
            6   11    10   newLength  I
            7   11    11     newData  [C
    MethodParameters:
            Name  Flags
      offset      
      length      
      replArray   
      replOffset  
      replLength  

  void resize(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // javax.swing.text.StringContent this
        start local 1 // int ncount
         0: .line 217
            iload 1 /* ncount */
            newarray 5
            astore 2 /* ndata */
        start local 2 // char[] ndata
         1: .line 218
            aload 0 /* this */
            getfield javax.swing.text.StringContent.data:[C
            iconst_0
            aload 2 /* ndata */
            iconst_0
            iload 1 /* ncount */
            aload 0 /* this */
            getfield javax.swing.text.StringContent.count:I
            invokestatic java.lang.Math.min:(II)I
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         2: .line 219
            aload 0 /* this */
            aload 2 /* ndata */
            putfield javax.swing.text.StringContent.data:[C
         3: .line 220
            return
        end local 2 // char[] ndata
        end local 1 // int ncount
        end local 0 // javax.swing.text.StringContent this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljavax/swing/text/StringContent;
            0    4     1  ncount  I
            1    4     2   ndata  [C
    MethodParameters:
        Name  Flags
      ncount  

  synchronized void updateMarksForInsert(int, int);
    descriptor: (II)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // javax.swing.text.StringContent this
        start local 1 // int offset
        start local 2 // int length
         0: .line 223
            iload 1 /* offset */
            ifne 2
         1: .line 226
            iconst_1
            istore 1 /* offset */
         2: .line 228
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.text.StringContent.marks:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            istore 3 /* n */
        start local 3 // int n
         3: .line 229
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 14
         5: .line 230
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.text.StringContent.marks:Ljava/util/Vector;
            iload 4 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast javax.swing.text.StringContent$PosRec
            astore 5 /* mark */
        start local 5 // javax.swing.text.StringContent$PosRec mark
         6: .line 231
            aload 5 /* mark */
            getfield javax.swing.text.StringContent$PosRec.unused:Z
            ifeq 11
         7: .line 233
            aload 0 /* this */
            getfield javax.swing.text.StringContent.marks:Ljava/util/Vector;
            iload 4 /* i */
            invokevirtual java.util.Vector.removeElementAt:(I)V
         8: .line 234
            iinc 4 /* i */ -1
         9: .line 235
            iinc 3 /* n */ -1
        10: .line 236
            goto 13
      StackMap locals: javax.swing.text.StringContent$PosRec
      StackMap stack:
        11: aload 5 /* mark */
            getfield javax.swing.text.StringContent$PosRec.offset:I
            iload 1 /* offset */
            if_icmplt 13
        12: .line 237
            aload 5 /* mark */
            dup
            getfield javax.swing.text.StringContent$PosRec.offset:I
            iload 2 /* length */
            iadd
            putfield javax.swing.text.StringContent$PosRec.offset:I
        end local 5 // javax.swing.text.StringContent$PosRec mark
        13: .line 229
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 4 /* i */
            iload 3 /* n */
            if_icmplt 5
        end local 4 // int i
        15: .line 240
            return
        end local 3 // int n
        end local 2 // int length
        end local 1 // int offset
        end local 0 // javax.swing.text.StringContent this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   16     0    this  Ljavax/swing/text/StringContent;
            0   16     1  offset  I
            0   16     2  length  I
            3   16     3       n  I
            4   15     4       i  I
            6   13     5    mark  Ljavax/swing/text/StringContent$PosRec;
    MethodParameters:
        Name  Flags
      offset  
      length  

  synchronized void updateMarksForRemove(int, int);
    descriptor: (II)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // javax.swing.text.StringContent this
        start local 1 // int offset
        start local 2 // int length
         0: .line 243
            aload 0 /* this */
            getfield javax.swing.text.StringContent.marks:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            istore 3 /* n */
        start local 3 // int n
         1: .line 244
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 15
         3: .line 245
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.text.StringContent.marks:Ljava/util/Vector;
            iload 4 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast javax.swing.text.StringContent$PosRec
            astore 5 /* mark */
        start local 5 // javax.swing.text.StringContent$PosRec mark
         4: .line 246
            aload 5 /* mark */
            getfield javax.swing.text.StringContent$PosRec.unused:Z
            ifeq 9
         5: .line 248
            aload 0 /* this */
            getfield javax.swing.text.StringContent.marks:Ljava/util/Vector;
            iload 4 /* i */
            invokevirtual java.util.Vector.removeElementAt:(I)V
         6: .line 249
            iinc 4 /* i */ -1
         7: .line 250
            iinc 3 /* n */ -1
         8: .line 251
            goto 14
      StackMap locals: javax.swing.text.StringContent$PosRec
      StackMap stack:
         9: aload 5 /* mark */
            getfield javax.swing.text.StringContent$PosRec.offset:I
            iload 1 /* offset */
            iload 2 /* length */
            iadd
            if_icmplt 12
        10: .line 252
            aload 5 /* mark */
            dup
            getfield javax.swing.text.StringContent$PosRec.offset:I
            iload 2 /* length */
            isub
            putfield javax.swing.text.StringContent$PosRec.offset:I
        11: .line 253
            goto 14
      StackMap locals:
      StackMap stack:
        12: aload 5 /* mark */
            getfield javax.swing.text.StringContent$PosRec.offset:I
            iload 1 /* offset */
            if_icmplt 14
        13: .line 254
            aload 5 /* mark */
            iload 1 /* offset */
            putfield javax.swing.text.StringContent$PosRec.offset:I
        end local 5 // javax.swing.text.StringContent$PosRec mark
        14: .line 244
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 4 /* i */
            iload 3 /* n */
            if_icmplt 3
        end local 4 // int i
        16: .line 257
            return
        end local 3 // int n
        end local 2 // int length
        end local 1 // int offset
        end local 0 // javax.swing.text.StringContent this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   17     0    this  Ljavax/swing/text/StringContent;
            0   17     1  offset  I
            0   17     2  length  I
            1   17     3       n  I
            2   16     4       i  I
            4   14     5    mark  Ljavax/swing/text/StringContent$PosRec;
    MethodParameters:
        Name  Flags
      offset  
      length  

  protected java.util.Vector getPositionsInRange(java.util.Vector, int, int);
    descriptor: (Ljava/util/Vector;II)Ljava/util/Vector;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=9, args_size=4
        start local 0 // javax.swing.text.StringContent this
        start local 1 // java.util.Vector v
        start local 2 // int offset
        start local 3 // int length
         0: .line 277
            aload 0 /* this */
            getfield javax.swing.text.StringContent.marks:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            istore 4 /* n */
        start local 4 // int n
         1: .line 278
            iload 2 /* offset */
            iload 3 /* length */
            iadd
            istore 5 /* end */
        start local 5 // int end
         2: .line 279
            aload 1 /* v */
            ifnonnull 3
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            goto 4
      StackMap locals: int int
      StackMap stack:
         3: aload 1 /* v */
      StackMap locals:
      StackMap stack: java.util.Vector
         4: astore 6 /* placeIn */
        start local 6 // java.util.Vector placeIn
         5: .line 280
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         6: goto 16
         7: .line 281
      StackMap locals: java.util.Vector int
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.text.StringContent.marks:Ljava/util/Vector;
            iload 7 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast javax.swing.text.StringContent$PosRec
            astore 8 /* mark */
        start local 8 // javax.swing.text.StringContent$PosRec mark
         8: .line 282
            aload 8 /* mark */
            getfield javax.swing.text.StringContent$PosRec.unused:Z
            ifeq 13
         9: .line 284
            aload 0 /* this */
            getfield javax.swing.text.StringContent.marks:Ljava/util/Vector;
            iload 7 /* i */
            invokevirtual java.util.Vector.removeElementAt:(I)V
        10: .line 285
            iinc 7 /* i */ -1
        11: .line 286
            iinc 4 /* n */ -1
        12: .line 287
            goto 15
      StackMap locals: javax.swing.text.StringContent$PosRec
      StackMap stack:
        13: aload 8 /* mark */
            getfield javax.swing.text.StringContent$PosRec.offset:I
            iload 2 /* offset */
            if_icmplt 15
            aload 8 /* mark */
            getfield javax.swing.text.StringContent$PosRec.offset:I
            iload 5 /* end */
            if_icmpgt 15
        14: .line 288
            aload 6 /* placeIn */
            new javax.swing.text.StringContent$UndoPosRef
            dup
            aload 0 /* this */
            aload 8 /* mark */
            invokespecial javax.swing.text.StringContent$UndoPosRef.<init>:(Ljavax/swing/text/StringContent;Ljavax/swing/text/StringContent$PosRec;)V
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        end local 8 // javax.swing.text.StringContent$PosRec mark
        15: .line 280
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 7 /* i */
            iload 4 /* n */
            if_icmplt 7
        end local 7 // int i
        17: .line 290
            aload 6 /* placeIn */
            areturn
        end local 6 // java.util.Vector placeIn
        end local 5 // int end
        end local 4 // int n
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.util.Vector v
        end local 0 // javax.swing.text.StringContent this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   18     0     this  Ljavax/swing/text/StringContent;
            0   18     1        v  Ljava/util/Vector;
            0   18     2   offset  I
            0   18     3   length  I
            1   18     4        n  I
            2   18     5      end  I
            5   18     6  placeIn  Ljava/util/Vector;
            6   17     7        i  I
            8   15     8     mark  Ljavax/swing/text/StringContent$PosRec;
    MethodParameters:
        Name  Flags
      v       
      offset  
      length  

  protected void updateUndoPositions(java.util.Vector);
    descriptor: (Ljava/util/Vector;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // javax.swing.text.StringContent this
        start local 1 // java.util.Vector positions
         0: .line 304
            aload 1 /* positions */
            invokevirtual java.util.Vector.size:()I
            iconst_1
            isub
            istore 2 /* counter */
        start local 2 // int counter
         1: goto 8
         2: .line 305
      StackMap locals: int
      StackMap stack:
            aload 1 /* positions */
            iload 2 /* counter */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast javax.swing.text.StringContent$UndoPosRef
            astore 3 /* ref */
        start local 3 // javax.swing.text.StringContent$UndoPosRef ref
         3: .line 307
            aload 3 /* ref */
            getfield javax.swing.text.StringContent$UndoPosRef.rec:Ljavax/swing/text/StringContent$PosRec;
            getfield javax.swing.text.StringContent$PosRec.unused:Z
            ifeq 6
         4: .line 308
            aload 1 /* positions */
            iload 2 /* counter */
            invokevirtual java.util.Vector.removeElementAt:(I)V
         5: .line 309
            goto 7
         6: .line 311
      StackMap locals: javax.swing.text.StringContent$UndoPosRef
      StackMap stack:
            aload 3 /* ref */
            invokevirtual javax.swing.text.StringContent$UndoPosRef.resetLocation:()V
        end local 3 // javax.swing.text.StringContent$UndoPosRef ref
         7: .line 304
      StackMap locals:
      StackMap stack:
            iinc 2 /* counter */ -1
      StackMap locals:
      StackMap stack:
         8: iload 2 /* counter */
            ifge 2
        end local 2 // int counter
         9: .line 313
            return
        end local 1 // java.util.Vector positions
        end local 0 // javax.swing.text.StringContent this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Ljavax/swing/text/StringContent;
            0   10     1  positions  Ljava/util/Vector;
            1    9     2    counter  I
            3    7     3        ref  Ljavax/swing/text/StringContent$UndoPosRef;
    MethodParameters:
           Name  Flags
      positions  
}
SourceFile: "StringContent.java"
NestMembers:
  javax.swing.text.StringContent$InsertUndo  javax.swing.text.StringContent$PosRec  javax.swing.text.StringContent$RemoveUndo  javax.swing.text.StringContent$StickyPosition  javax.swing.text.StringContent$UndoPosRef
InnerClasses:
  public abstract Content = javax.swing.text.AbstractDocument$Content of javax.swing.text.AbstractDocument
  InsertUndo = javax.swing.text.StringContent$InsertUndo of javax.swing.text.StringContent
  final PosRec = javax.swing.text.StringContent$PosRec of javax.swing.text.StringContent
  RemoveUndo = javax.swing.text.StringContent$RemoveUndo of javax.swing.text.StringContent
  final StickyPosition = javax.swing.text.StringContent$StickyPosition of javax.swing.text.StringContent
  final UndoPosRef = javax.swing.text.StringContent$UndoPosRef of javax.swing.text.StringContent