public class javax.swing.text.Utilities
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.swing.text.Utilities
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.text.Utilities this
         0: .line 52
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // javax.swing.text.Utilities this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/text/Utilities;

  static javax.swing.JComponent getJComponent(javax.swing.text.View);
    descriptor: (Ljavax/swing/text/View;)Ljavax/swing/JComponent;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // javax.swing.text.View view
         0: .line 58
            aload 0 /* view */
            ifnull 4
         1: .line 59
            aload 0 /* view */
            invokevirtual javax.swing.text.View.getContainer:()Ljava/awt/Container;
            astore 1 /* component */
        start local 1 // java.awt.Component component
         2: .line 60
            aload 1 /* component */
            instanceof javax.swing.JComponent
            ifeq 4
         3: .line 61
            aload 1 /* component */
            checkcast javax.swing.JComponent
            areturn
        end local 1 // java.awt.Component component
         4: .line 64
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // javax.swing.text.View view
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       view  Ljavax/swing/text/View;
            2    4     1  component  Ljava/awt/Component;
    MethodParameters:
      Name  Flags
      view  

  public static final int drawTabbedText(javax.swing.text.Segment, int, int, java.awt.Graphics, javax.swing.text.TabExpander, int);
    descriptor: (Ljavax/swing/text/Segment;IILjava/awt/Graphics;Ljavax/swing/text/TabExpander;I)I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // javax.swing.text.Segment s
        start local 1 // int x
        start local 2 // int y
        start local 3 // java.awt.Graphics g
        start local 4 // javax.swing.text.TabExpander e
        start local 5 // int startOffset
         0: .line 84
            aconst_null
            aload 0 /* s */
            iload 1 /* x */
            iload 2 /* y */
            aload 3 /* g */
            aload 4 /* e */
            iload 5 /* startOffset */
            invokestatic javax.swing.text.Utilities.drawTabbedText:(Ljavax/swing/text/View;Ljavax/swing/text/Segment;IILjava/awt/Graphics;Ljavax/swing/text/TabExpander;I)I
            ireturn
        end local 5 // int startOffset
        end local 4 // javax.swing.text.TabExpander e
        end local 3 // java.awt.Graphics g
        end local 2 // int y
        end local 1 // int x
        end local 0 // javax.swing.text.Segment s
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0            s  Ljavax/swing/text/Segment;
            0    1     1            x  I
            0    1     2            y  I
            0    1     3            g  Ljava/awt/Graphics;
            0    1     4            e  Ljavax/swing/text/TabExpander;
            0    1     5  startOffset  I
    MethodParameters:
             Name  Flags
      s            
      x            
      y            
      g            
      e            
      startOffset  

  static final int drawTabbedText(javax.swing.text.View, javax.swing.text.Segment, int, int, java.awt.Graphics, javax.swing.text.TabExpander, int);
    descriptor: (Ljavax/swing/text/View;Ljavax/swing/text/Segment;IILjava/awt/Graphics;Ljavax/swing/text/TabExpander;I)I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // javax.swing.text.View view
        start local 1 // javax.swing.text.Segment s
        start local 2 // int x
        start local 3 // int y
        start local 4 // java.awt.Graphics g
        start local 5 // javax.swing.text.TabExpander e
        start local 6 // int startOffset
         0: .line 106
            aload 0 /* view */
            aload 1 /* s */
            iload 2 /* x */
            iload 3 /* y */
            aload 4 /* g */
            aload 5 /* e */
            iload 6 /* startOffset */
            aconst_null
            invokestatic javax.swing.text.Utilities.drawTabbedText:(Ljavax/swing/text/View;Ljavax/swing/text/Segment;IILjava/awt/Graphics;Ljavax/swing/text/TabExpander;I[I)I
            ireturn
        end local 6 // int startOffset
        end local 5 // javax.swing.text.TabExpander e
        end local 4 // java.awt.Graphics g
        end local 3 // int y
        end local 2 // int x
        end local 1 // javax.swing.text.Segment s
        end local 0 // javax.swing.text.View view
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         view  Ljavax/swing/text/View;
            0    1     1            s  Ljavax/swing/text/Segment;
            0    1     2            x  I
            0    1     3            y  I
            0    1     4            g  Ljava/awt/Graphics;
            0    1     5            e  Ljavax/swing/text/TabExpander;
            0    1     6  startOffset  I
    MethodParameters:
             Name  Flags
      view         
      s            
      x            
      y            
      g            
      e            
      startOffset  

  static final int drawTabbedText(javax.swing.text.View, javax.swing.text.Segment, int, int, java.awt.Graphics, javax.swing.text.TabExpander, int, int[]);
    descriptor: (Ljavax/swing/text/View;Ljavax/swing/text/Segment;IILjava/awt/Graphics;Ljavax/swing/text/TabExpander;I[I)I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Code:
      stack=7, locals=21, args_size=8
        start local 0 // javax.swing.text.View view
        start local 1 // javax.swing.text.Segment s
        start local 2 // int x
        start local 3 // int y
        start local 4 // java.awt.Graphics g
        start local 5 // javax.swing.text.TabExpander e
        start local 6 // int startOffset
        start local 7 // int[] justificationData
         0: .line 120
            aload 0 /* view */
            invokestatic javax.swing.text.Utilities.getJComponent:(Ljavax/swing/text/View;)Ljavax/swing/JComponent;
            astore 8 /* component */
        start local 8 // javax.swing.JComponent component
         1: .line 121
            aload 8 /* component */
            aload 4 /* g */
            invokestatic sun.swing.SwingUtilities2.getFontMetrics:(Ljavax/swing/JComponent;Ljava/awt/Graphics;)Ljava/awt/FontMetrics;
            astore 9 /* metrics */
        start local 9 // java.awt.FontMetrics metrics
         2: .line 122
            iload 2 /* x */
            istore 10 /* nextX */
        start local 10 // int nextX
         3: .line 123
            aload 1 /* s */
            getfield javax.swing.text.Segment.array:[C
            astore 11 /* txt */
        start local 11 // char[] txt
         4: .line 124
            aload 1 /* s */
            getfield javax.swing.text.Segment.offset:I
            istore 12 /* txtOffset */
        start local 12 // int txtOffset
         5: .line 125
            iconst_0
            istore 13 /* flushLen */
        start local 13 // int flushLen
         6: .line 126
            aload 1 /* s */
            getfield javax.swing.text.Segment.offset:I
            istore 14 /* flushIndex */
        start local 14 // int flushIndex
         7: .line 127
            iconst_0
            istore 15 /* spaceAddon */
        start local 15 // int spaceAddon
         8: .line 128
            iconst_m1
            istore 16 /* spaceAddonLeftoverEnd */
        start local 16 // int spaceAddonLeftoverEnd
         9: .line 129
            iconst_0
            istore 17 /* startJustifiableContent */
        start local 17 // int startJustifiableContent
        10: .line 130
            iconst_0
            istore 18 /* endJustifiableContent */
        start local 18 // int endJustifiableContent
        11: .line 131
            aload 7 /* justificationData */
            ifnull 25
        12: .line 132
            iload 6 /* startOffset */
            ineg
            iload 12 /* txtOffset */
            iadd
            istore 19 /* offset */
        start local 19 // int offset
        13: .line 133
            aconst_null
            astore 20 /* parent */
        start local 20 // javax.swing.text.View parent
        14: .line 134
            aload 0 /* view */
            ifnull 17
        15: .line 135
            aload 0 /* view */
            invokevirtual javax.swing.text.View.getParent:()Ljavax/swing/text/View;
            dup
            astore 20 /* parent */
            ifnull 17
        16: .line 136
            iload 19 /* offset */
            aload 20 /* parent */
            invokevirtual javax.swing.text.View.getStartOffset:()I
            iadd
            istore 19 /* offset */
        17: .line 139
      StackMap locals: javax.swing.text.View javax.swing.text.Segment int int java.awt.Graphics javax.swing.text.TabExpander int int[] javax.swing.JComponent java.awt.FontMetrics int char[] int int int int int int int int javax.swing.text.View
      StackMap stack:
            aload 7 /* justificationData */
            iconst_0
            iaload
        18: .line 138
            istore 15 /* spaceAddon */
        19: .line 141
            aload 7 /* justificationData */
            iconst_1
            iaload
            iload 19 /* offset */
            iadd
        20: .line 140
            istore 16 /* spaceAddonLeftoverEnd */
        21: .line 143
            aload 7 /* justificationData */
            iconst_2
            iaload
            iload 19 /* offset */
            iadd
        22: .line 142
            istore 17 /* startJustifiableContent */
        23: .line 145
            aload 7 /* justificationData */
            iconst_3
            iaload
            iload 19 /* offset */
            iadd
        24: .line 144
            istore 18 /* endJustifiableContent */
        end local 20 // javax.swing.text.View parent
        end local 19 // int offset
        25: .line 147
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            getfield javax.swing.text.Segment.offset:I
            aload 1 /* s */
            getfield javax.swing.text.Segment.count:I
            iadd
            istore 19 /* n */
        start local 19 // int n
        26: .line 148
            iload 12 /* txtOffset */
            istore 20 /* i */
        start local 20 // int i
        27: goto 62
        28: .line 149
      StackMap locals: int int
      StackMap stack:
            aload 11 /* txt */
            iload 20 /* i */
            caload
            bipush 9
            if_icmpeq 33
        29: .line 150
            iload 15 /* spaceAddon */
            ifne 30
            iload 20 /* i */
            iload 16 /* spaceAddonLeftoverEnd */
            if_icmpgt 51
        30: .line 151
      StackMap locals:
      StackMap stack:
            aload 11 /* txt */
            iload 20 /* i */
            caload
            bipush 32
            if_icmpne 51
        31: .line 152
            iload 17 /* startJustifiableContent */
            iload 20 /* i */
            if_icmpgt 51
        32: .line 153
            iload 20 /* i */
            iload 18 /* endJustifiableContent */
            if_icmpgt 51
        33: .line 155
      StackMap locals:
      StackMap stack:
            iload 13 /* flushLen */
            ifle 38
        34: .line 156
            aload 8 /* component */
            aload 4 /* g */
            aload 11 /* txt */
        35: .line 157
            iload 14 /* flushIndex */
            iload 13 /* flushLen */
            iload 2 /* x */
            iload 3 /* y */
        36: .line 156
            invokestatic sun.swing.SwingUtilities2.drawChars:(Ljavax/swing/JComponent;Ljava/awt/Graphics;[CIIII)I
            istore 10 /* nextX */
        37: .line 158
            iconst_0
            istore 13 /* flushLen */
        38: .line 160
      StackMap locals:
      StackMap stack:
            iload 20 /* i */
            iconst_1
            iadd
            istore 14 /* flushIndex */
        39: .line 161
            aload 11 /* txt */
            iload 20 /* i */
            caload
            bipush 9
            if_icmpne 45
        40: .line 162
            aload 5 /* e */
            ifnull 43
        41: .line 163
            aload 5 /* e */
            iload 10 /* nextX */
            i2f
            iload 6 /* startOffset */
            iload 20 /* i */
            iadd
            iload 12 /* txtOffset */
            isub
            invokeinterface javax.swing.text.TabExpander.nextTabStop:(FI)F
            f2i
            istore 10 /* nextX */
        42: .line 164
            goto 49
        43: .line 165
      StackMap locals:
      StackMap stack:
            iload 10 /* nextX */
            aload 9 /* metrics */
            bipush 32
            invokevirtual java.awt.FontMetrics.charWidth:(C)I
            iadd
            istore 10 /* nextX */
        44: .line 167
            goto 49
      StackMap locals:
      StackMap stack:
        45: aload 11 /* txt */
            iload 20 /* i */
            caload
            bipush 32
            if_icmpne 49
        46: .line 168
            iload 10 /* nextX */
            aload 9 /* metrics */
            bipush 32
            invokevirtual java.awt.FontMetrics.charWidth:(C)I
            iload 15 /* spaceAddon */
            iadd
            iadd
            istore 10 /* nextX */
        47: .line 169
            iload 20 /* i */
            iload 16 /* spaceAddonLeftoverEnd */
            if_icmpgt 49
        48: .line 170
            iinc 10 /* nextX */ 1
        49: .line 173
      StackMap locals:
      StackMap stack:
            iload 10 /* nextX */
            istore 2 /* x */
        50: .line 174
            goto 61
      StackMap locals:
      StackMap stack:
        51: aload 11 /* txt */
            iload 20 /* i */
            caload
            bipush 10
            if_icmpeq 52
            aload 11 /* txt */
            iload 20 /* i */
            caload
            bipush 13
            if_icmpne 60
        52: .line 175
      StackMap locals:
      StackMap stack:
            iload 13 /* flushLen */
            ifle 57
        53: .line 176
            aload 8 /* component */
            aload 4 /* g */
            aload 11 /* txt */
        54: .line 177
            iload 14 /* flushIndex */
            iload 13 /* flushLen */
            iload 2 /* x */
            iload 3 /* y */
        55: .line 176
            invokestatic sun.swing.SwingUtilities2.drawChars:(Ljavax/swing/JComponent;Ljava/awt/Graphics;[CIIII)I
            istore 10 /* nextX */
        56: .line 178
            iconst_0
            istore 13 /* flushLen */
        57: .line 180
      StackMap locals:
      StackMap stack:
            iload 20 /* i */
            iconst_1
            iadd
            istore 14 /* flushIndex */
        58: .line 181
            iload 10 /* nextX */
            istore 2 /* x */
        59: .line 182
            goto 61
        60: .line 183
      StackMap locals:
      StackMap stack:
            iinc 13 /* flushLen */ 1
        61: .line 148
      StackMap locals:
      StackMap stack:
            iinc 20 /* i */ 1
      StackMap locals:
      StackMap stack:
        62: iload 20 /* i */
            iload 19 /* n */
            if_icmplt 28
        end local 20 // int i
        63: .line 186
            iload 13 /* flushLen */
            ifle 67
        64: .line 187
            aload 8 /* component */
            aload 4 /* g */
            aload 11 /* txt */
            iload 14 /* flushIndex */
        65: .line 188
            iload 13 /* flushLen */
            iload 2 /* x */
            iload 3 /* y */
        66: .line 187
            invokestatic sun.swing.SwingUtilities2.drawChars:(Ljavax/swing/JComponent;Ljava/awt/Graphics;[CIIII)I
            istore 10 /* nextX */
        67: .line 190
      StackMap locals:
      StackMap stack:
            iload 10 /* nextX */
            ireturn
        end local 19 // int n
        end local 18 // int endJustifiableContent
        end local 17 // int startJustifiableContent
        end local 16 // int spaceAddonLeftoverEnd
        end local 15 // int spaceAddon
        end local 14 // int flushIndex
        end local 13 // int flushLen
        end local 12 // int txtOffset
        end local 11 // char[] txt
        end local 10 // int nextX
        end local 9 // java.awt.FontMetrics metrics
        end local 8 // javax.swing.JComponent component
        end local 7 // int[] justificationData
        end local 6 // int startOffset
        end local 5 // javax.swing.text.TabExpander e
        end local 4 // java.awt.Graphics g
        end local 3 // int y
        end local 2 // int x
        end local 1 // javax.swing.text.Segment s
        end local 0 // javax.swing.text.View view
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   68     0                     view  Ljavax/swing/text/View;
            0   68     1                        s  Ljavax/swing/text/Segment;
            0   68     2                        x  I
            0   68     3                        y  I
            0   68     4                        g  Ljava/awt/Graphics;
            0   68     5                        e  Ljavax/swing/text/TabExpander;
            0   68     6              startOffset  I
            0   68     7        justificationData  [I
            1   68     8                component  Ljavax/swing/JComponent;
            2   68     9                  metrics  Ljava/awt/FontMetrics;
            3   68    10                    nextX  I
            4   68    11                      txt  [C
            5   68    12                txtOffset  I
            6   68    13                 flushLen  I
            7   68    14               flushIndex  I
            8   68    15               spaceAddon  I
            9   68    16    spaceAddonLeftoverEnd  I
           10   68    17  startJustifiableContent  I
           11   68    18    endJustifiableContent  I
           13   25    19                   offset  I
           14   25    20                   parent  Ljavax/swing/text/View;
           26   68    19                        n  I
           27   63    20                        i  I
    MethodParameters:
                   Name  Flags
      view               
      s                  
      x                  
      y                  
      g                  
      e                  
      startOffset        
      justificationData  

  public static final int getTabbedTextWidth(javax.swing.text.Segment, java.awt.FontMetrics, int, javax.swing.text.TabExpander, int);
    descriptor: (Ljavax/swing/text/Segment;Ljava/awt/FontMetrics;ILjavax/swing/text/TabExpander;I)I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // javax.swing.text.Segment s
        start local 1 // java.awt.FontMetrics metrics
        start local 2 // int x
        start local 3 // javax.swing.text.TabExpander e
        start local 4 // int startOffset
         0: .line 208
            aconst_null
            aload 0 /* s */
            aload 1 /* metrics */
            iload 2 /* x */
            aload 3 /* e */
            iload 4 /* startOffset */
            aconst_null
            invokestatic javax.swing.text.Utilities.getTabbedTextWidth:(Ljavax/swing/text/View;Ljavax/swing/text/Segment;Ljava/awt/FontMetrics;ILjavax/swing/text/TabExpander;I[I)I
            ireturn
        end local 4 // int startOffset
        end local 3 // javax.swing.text.TabExpander e
        end local 2 // int x
        end local 1 // java.awt.FontMetrics metrics
        end local 0 // javax.swing.text.Segment s
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0            s  Ljavax/swing/text/Segment;
            0    1     1      metrics  Ljava/awt/FontMetrics;
            0    1     2            x  I
            0    1     3            e  Ljavax/swing/text/TabExpander;
            0    1     4  startOffset  I
    MethodParameters:
             Name  Flags
      s            
      metrics      
      x            
      e            
      startOffset  

  static final int getTabbedTextWidth(javax.swing.text.View, javax.swing.text.Segment, java.awt.FontMetrics, int, javax.swing.text.TabExpander, int, int[]);
    descriptor: (Ljavax/swing/text/View;Ljavax/swing/text/Segment;Ljava/awt/FontMetrics;ILjavax/swing/text/TabExpander;I[I)I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Code:
      stack=5, locals=18, args_size=7
        start local 0 // javax.swing.text.View view
        start local 1 // javax.swing.text.Segment s
        start local 2 // java.awt.FontMetrics metrics
        start local 3 // int x
        start local 4 // javax.swing.text.TabExpander e
        start local 5 // int startOffset
        start local 6 // int[] justificationData
         0: .line 222
            iload 3 /* x */
            istore 7 /* nextX */
        start local 7 // int nextX
         1: .line 223
            aload 1 /* s */
            getfield javax.swing.text.Segment.array:[C
            astore 8 /* txt */
        start local 8 // char[] txt
         2: .line 224
            aload 1 /* s */
            getfield javax.swing.text.Segment.offset:I
            istore 9 /* txtOffset */
        start local 9 // int txtOffset
         3: .line 225
            aload 1 /* s */
            getfield javax.swing.text.Segment.offset:I
            aload 1 /* s */
            getfield javax.swing.text.Segment.count:I
            iadd
            istore 10 /* n */
        start local 10 // int n
         4: .line 226
            iconst_0
            istore 11 /* charCount */
        start local 11 // int charCount
         5: .line 227
            iconst_0
            istore 12 /* spaceAddon */
        start local 12 // int spaceAddon
         6: .line 228
            iconst_m1
            istore 13 /* spaceAddonLeftoverEnd */
        start local 13 // int spaceAddonLeftoverEnd
         7: .line 229
            iconst_0
            istore 14 /* startJustifiableContent */
        start local 14 // int startJustifiableContent
         8: .line 230
            iconst_0
            istore 15 /* endJustifiableContent */
        start local 15 // int endJustifiableContent
         9: .line 231
            aload 6 /* justificationData */
            ifnull 23
        10: .line 232
            iload 5 /* startOffset */
            ineg
            iload 9 /* txtOffset */
            iadd
            istore 16 /* offset */
        start local 16 // int offset
        11: .line 233
            aconst_null
            astore 17 /* parent */
        start local 17 // javax.swing.text.View parent
        12: .line 234
            aload 0 /* view */
            ifnull 15
        13: .line 235
            aload 0 /* view */
            invokevirtual javax.swing.text.View.getParent:()Ljavax/swing/text/View;
            dup
            astore 17 /* parent */
            ifnull 15
        14: .line 236
            iload 16 /* offset */
            aload 17 /* parent */
            invokevirtual javax.swing.text.View.getStartOffset:()I
            iadd
            istore 16 /* offset */
        15: .line 239
      StackMap locals: javax.swing.text.View javax.swing.text.Segment java.awt.FontMetrics int javax.swing.text.TabExpander int int[] int char[] int int int int int int int int javax.swing.text.View
      StackMap stack:
            aload 6 /* justificationData */
            iconst_0
            iaload
        16: .line 238
            istore 12 /* spaceAddon */
        17: .line 241
            aload 6 /* justificationData */
            iconst_1
            iaload
            iload 16 /* offset */
            iadd
        18: .line 240
            istore 13 /* spaceAddonLeftoverEnd */
        19: .line 243
            aload 6 /* justificationData */
            iconst_2
            iaload
            iload 16 /* offset */
            iadd
        20: .line 242
            istore 14 /* startJustifiableContent */
        21: .line 245
            aload 6 /* justificationData */
            iconst_3
            iaload
            iload 16 /* offset */
            iadd
        22: .line 244
            istore 15 /* endJustifiableContent */
        end local 17 // javax.swing.text.View parent
        end local 16 // int offset
        23: .line 248
      StackMap locals:
      StackMap stack:
            iload 9 /* txtOffset */
            istore 16 /* i */
        start local 16 // int i
        24: goto 51
        25: .line 249
      StackMap locals: int
      StackMap stack:
            aload 8 /* txt */
            iload 16 /* i */
            caload
            bipush 9
            if_icmpeq 30
        26: .line 250
            iload 12 /* spaceAddon */
            ifne 27
            iload 16 /* i */
            iload 13 /* spaceAddonLeftoverEnd */
            if_icmpgt 45
        27: .line 251
      StackMap locals:
      StackMap stack:
            aload 8 /* txt */
            iload 16 /* i */
            caload
            bipush 32
            if_icmpne 45
        28: .line 252
            iload 14 /* startJustifiableContent */
            iload 16 /* i */
            if_icmpgt 45
        29: .line 253
            iload 16 /* i */
            iload 15 /* endJustifiableContent */
            if_icmpgt 45
        30: .line 255
      StackMap locals:
      StackMap stack:
            iload 7 /* nextX */
            aload 2 /* metrics */
            aload 8 /* txt */
            iload 16 /* i */
            iload 11 /* charCount */
            isub
            iload 11 /* charCount */
            invokevirtual java.awt.FontMetrics.charsWidth:([CII)I
            iadd
            istore 7 /* nextX */
        31: .line 256
            iconst_0
            istore 11 /* charCount */
        32: .line 257
            aload 8 /* txt */
            iload 16 /* i */
            caload
            bipush 9
            if_icmpne 40
        33: .line 258
            aload 4 /* e */
            ifnull 38
        34: .line 259
            aload 4 /* e */
            iload 7 /* nextX */
            i2f
        35: .line 260
            iload 5 /* startOffset */
            iload 16 /* i */
            iadd
            iload 9 /* txtOffset */
            isub
        36: .line 259
            invokeinterface javax.swing.text.TabExpander.nextTabStop:(FI)F
            f2i
            istore 7 /* nextX */
        37: .line 261
            goto 50
        38: .line 262
      StackMap locals:
      StackMap stack:
            iload 7 /* nextX */
            aload 2 /* metrics */
            bipush 32
            invokevirtual java.awt.FontMetrics.charWidth:(C)I
            iadd
            istore 7 /* nextX */
        39: .line 264
            goto 50
      StackMap locals:
      StackMap stack:
        40: aload 8 /* txt */
            iload 16 /* i */
            caload
            bipush 32
            if_icmpne 50
        41: .line 265
            iload 7 /* nextX */
            aload 2 /* metrics */
            bipush 32
            invokevirtual java.awt.FontMetrics.charWidth:(C)I
            iload 12 /* spaceAddon */
            iadd
            iadd
            istore 7 /* nextX */
        42: .line 266
            iload 16 /* i */
            iload 13 /* spaceAddonLeftoverEnd */
            if_icmpgt 50
        43: .line 267
            iinc 7 /* nextX */ 1
        44: .line 270
            goto 50
      StackMap locals:
      StackMap stack:
        45: aload 8 /* txt */
            iload 16 /* i */
            caload
            bipush 10
            if_icmpne 49
        46: .line 273
            iload 7 /* nextX */
            aload 2 /* metrics */
            aload 8 /* txt */
            iload 16 /* i */
            iload 11 /* charCount */
            isub
            iload 11 /* charCount */
            invokevirtual java.awt.FontMetrics.charsWidth:([CII)I
            iadd
            istore 7 /* nextX */
        47: .line 274
            iconst_0
            istore 11 /* charCount */
        48: .line 275
            goto 50
        49: .line 276
      StackMap locals:
      StackMap stack:
            iinc 11 /* charCount */ 1
        50: .line 248
      StackMap locals:
      StackMap stack:
            iinc 16 /* i */ 1
      StackMap locals:
      StackMap stack:
        51: iload 16 /* i */
            iload 10 /* n */
            if_icmplt 25
        end local 16 // int i
        52: .line 279
            iload 7 /* nextX */
            aload 2 /* metrics */
            aload 8 /* txt */
            iload 10 /* n */
            iload 11 /* charCount */
            isub
            iload 11 /* charCount */
            invokevirtual java.awt.FontMetrics.charsWidth:([CII)I
            iadd
            istore 7 /* nextX */
        53: .line 280
            iload 7 /* nextX */
            iload 3 /* x */
            isub
            ireturn
        end local 15 // int endJustifiableContent
        end local 14 // int startJustifiableContent
        end local 13 // int spaceAddonLeftoverEnd
        end local 12 // int spaceAddon
        end local 11 // int charCount
        end local 10 // int n
        end local 9 // int txtOffset
        end local 8 // char[] txt
        end local 7 // int nextX
        end local 6 // int[] justificationData
        end local 5 // int startOffset
        end local 4 // javax.swing.text.TabExpander e
        end local 3 // int x
        end local 2 // java.awt.FontMetrics metrics
        end local 1 // javax.swing.text.Segment s
        end local 0 // javax.swing.text.View view
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   54     0                     view  Ljavax/swing/text/View;
            0   54     1                        s  Ljavax/swing/text/Segment;
            0   54     2                  metrics  Ljava/awt/FontMetrics;
            0   54     3                        x  I
            0   54     4                        e  Ljavax/swing/text/TabExpander;
            0   54     5              startOffset  I
            0   54     6        justificationData  [I
            1   54     7                    nextX  I
            2   54     8                      txt  [C
            3   54     9                txtOffset  I
            4   54    10                        n  I
            5   54    11                charCount  I
            6   54    12               spaceAddon  I
            7   54    13    spaceAddonLeftoverEnd  I
            8   54    14  startJustifiableContent  I
            9   54    15    endJustifiableContent  I
           11   23    16                   offset  I
           12   23    17                   parent  Ljavax/swing/text/View;
           24   52    16                        i  I
    MethodParameters:
                   Name  Flags
      view               
      s                  
      metrics            
      x                  
      e                  
      startOffset        
      justificationData  

  public static final int getTabbedTextOffset(javax.swing.text.Segment, java.awt.FontMetrics, int, int, javax.swing.text.TabExpander, int);
    descriptor: (Ljavax/swing/text/Segment;Ljava/awt/FontMetrics;IILjavax/swing/text/TabExpander;I)I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // javax.swing.text.Segment s
        start local 1 // java.awt.FontMetrics metrics
        start local 2 // int x0
        start local 3 // int x
        start local 4 // javax.swing.text.TabExpander e
        start local 5 // int startOffset
         0: .line 303
            aload 0 /* s */
            aload 1 /* metrics */
            iload 2 /* x0 */
            iload 3 /* x */
            aload 4 /* e */
            iload 5 /* startOffset */
            iconst_1
            invokestatic javax.swing.text.Utilities.getTabbedTextOffset:(Ljavax/swing/text/Segment;Ljava/awt/FontMetrics;IILjavax/swing/text/TabExpander;IZ)I
            ireturn
        end local 5 // int startOffset
        end local 4 // javax.swing.text.TabExpander e
        end local 3 // int x
        end local 2 // int x0
        end local 1 // java.awt.FontMetrics metrics
        end local 0 // javax.swing.text.Segment s
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0            s  Ljavax/swing/text/Segment;
            0    1     1      metrics  Ljava/awt/FontMetrics;
            0    1     2           x0  I
            0    1     3            x  I
            0    1     4            e  Ljavax/swing/text/TabExpander;
            0    1     5  startOffset  I
    MethodParameters:
             Name  Flags
      s            
      metrics      
      x0           
      x            
      e            
      startOffset  

  static final int getTabbedTextOffset(javax.swing.text.View, javax.swing.text.Segment, java.awt.FontMetrics, int, int, javax.swing.text.TabExpander, int, int[]);
    descriptor: (Ljavax/swing/text/View;Ljavax/swing/text/Segment;Ljava/awt/FontMetrics;IILjavax/swing/text/TabExpander;I[I)I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Code:
      stack=9, locals=8, args_size=8
        start local 0 // javax.swing.text.View view
        start local 1 // javax.swing.text.Segment s
        start local 2 // java.awt.FontMetrics metrics
        start local 3 // int x0
        start local 4 // int x
        start local 5 // javax.swing.text.TabExpander e
        start local 6 // int startOffset
        start local 7 // int[] justificationData
         0: .line 310
            aload 0 /* view */
            aload 1 /* s */
            aload 2 /* metrics */
            iload 3 /* x0 */
            iload 4 /* x */
            aload 5 /* e */
            iload 6 /* startOffset */
            iconst_1
         1: .line 311
            aload 7 /* justificationData */
         2: .line 310
            invokestatic javax.swing.text.Utilities.getTabbedTextOffset:(Ljavax/swing/text/View;Ljavax/swing/text/Segment;Ljava/awt/FontMetrics;IILjavax/swing/text/TabExpander;IZ[I)I
            ireturn
        end local 7 // int[] justificationData
        end local 6 // int startOffset
        end local 5 // javax.swing.text.TabExpander e
        end local 4 // int x
        end local 3 // int x0
        end local 2 // java.awt.FontMetrics metrics
        end local 1 // javax.swing.text.Segment s
        end local 0 // javax.swing.text.View view
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0               view  Ljavax/swing/text/View;
            0    3     1                  s  Ljavax/swing/text/Segment;
            0    3     2            metrics  Ljava/awt/FontMetrics;
            0    3     3                 x0  I
            0    3     4                  x  I
            0    3     5                  e  Ljavax/swing/text/TabExpander;
            0    3     6        startOffset  I
            0    3     7  justificationData  [I
    MethodParameters:
                   Name  Flags
      view               
      s                  
      metrics            
      x0                 
      x                  
      e                  
      startOffset        
      justificationData  

  public static final int getTabbedTextOffset(javax.swing.text.Segment, java.awt.FontMetrics, int, int, javax.swing.text.TabExpander, int, boolean);
    descriptor: (Ljavax/swing/text/Segment;Ljava/awt/FontMetrics;IILjavax/swing/text/TabExpander;IZ)I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=9, locals=7, args_size=7
        start local 0 // javax.swing.text.Segment s
        start local 1 // java.awt.FontMetrics metrics
        start local 2 // int x0
        start local 3 // int x
        start local 4 // javax.swing.text.TabExpander e
        start local 5 // int startOffset
        start local 6 // boolean round
         0: .line 319
            aconst_null
            aload 0 /* s */
            aload 1 /* metrics */
            iload 2 /* x0 */
            iload 3 /* x */
            aload 4 /* e */
            iload 5 /* startOffset */
            iload 6 /* round */
            aconst_null
            invokestatic javax.swing.text.Utilities.getTabbedTextOffset:(Ljavax/swing/text/View;Ljavax/swing/text/Segment;Ljava/awt/FontMetrics;IILjavax/swing/text/TabExpander;IZ[I)I
            ireturn
        end local 6 // boolean round
        end local 5 // int startOffset
        end local 4 // javax.swing.text.TabExpander e
        end local 3 // int x
        end local 2 // int x0
        end local 1 // java.awt.FontMetrics metrics
        end local 0 // javax.swing.text.Segment s
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0            s  Ljavax/swing/text/Segment;
            0    1     1      metrics  Ljava/awt/FontMetrics;
            0    1     2           x0  I
            0    1     3            x  I
            0    1     4            e  Ljavax/swing/text/TabExpander;
            0    1     5  startOffset  I
            0    1     6        round  Z
    MethodParameters:
             Name  Flags
      s            
      metrics      
      x0           
      x            
      e            
      startOffset  
      round        

  static final int getTabbedTextOffset(javax.swing.text.View, javax.swing.text.Segment, java.awt.FontMetrics, int, int, javax.swing.text.TabExpander, int, boolean, int[]);
    descriptor: (Ljavax/swing/text/View;Ljavax/swing/text/Segment;Ljava/awt/FontMetrics;IILjavax/swing/text/TabExpander;IZ[I)I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Code:
      stack=5, locals=23, args_size=9
        start local 0 // javax.swing.text.View view
        start local 1 // javax.swing.text.Segment s
        start local 2 // java.awt.FontMetrics metrics
        start local 3 // int x0
        start local 4 // int x
        start local 5 // javax.swing.text.TabExpander e
        start local 6 // int startOffset
        start local 7 // boolean round
        start local 8 // int[] justificationData
         0: .line 336
            iload 3 /* x0 */
            iload 4 /* x */
            if_icmplt 2
         1: .line 338
            iconst_0
            ireturn
         2: .line 340
      StackMap locals:
      StackMap stack:
            iload 3 /* x0 */
            istore 9 /* nextX */
        start local 9 // int nextX
         3: .line 343
            aload 1 /* s */
            getfield javax.swing.text.Segment.array:[C
            astore 10 /* txt */
        start local 10 // char[] txt
         4: .line 344
            aload 1 /* s */
            getfield javax.swing.text.Segment.offset:I
            istore 11 /* txtOffset */
        start local 11 // int txtOffset
         5: .line 345
            aload 1 /* s */
            getfield javax.swing.text.Segment.count:I
            istore 12 /* txtCount */
        start local 12 // int txtCount
         6: .line 346
            iconst_0
            istore 13 /* spaceAddon */
        start local 13 // int spaceAddon
         7: .line 347
            iconst_m1
            istore 14 /* spaceAddonLeftoverEnd */
        start local 14 // int spaceAddonLeftoverEnd
         8: .line 348
            iconst_0
            istore 15 /* startJustifiableContent */
        start local 15 // int startJustifiableContent
         9: .line 349
            iconst_0
            istore 16 /* endJustifiableContent */
        start local 16 // int endJustifiableContent
        10: .line 350
            aload 8 /* justificationData */
            ifnull 24
        11: .line 351
            iload 6 /* startOffset */
            ineg
            iload 11 /* txtOffset */
            iadd
            istore 17 /* offset */
        start local 17 // int offset
        12: .line 352
            aconst_null
            astore 18 /* parent */
        start local 18 // javax.swing.text.View parent
        13: .line 353
            aload 0 /* view */
            ifnull 16
        14: .line 354
            aload 0 /* view */
            invokevirtual javax.swing.text.View.getParent:()Ljavax/swing/text/View;
            dup
            astore 18 /* parent */
            ifnull 16
        15: .line 355
            iload 17 /* offset */
            aload 18 /* parent */
            invokevirtual javax.swing.text.View.getStartOffset:()I
            iadd
            istore 17 /* offset */
        16: .line 358
      StackMap locals: javax.swing.text.View javax.swing.text.Segment java.awt.FontMetrics int int javax.swing.text.TabExpander int int int[] int char[] int int int int int int int javax.swing.text.View
      StackMap stack:
            aload 8 /* justificationData */
            iconst_0
            iaload
        17: .line 357
            istore 13 /* spaceAddon */
        18: .line 360
            aload 8 /* justificationData */
            iconst_1
            iaload
            iload 17 /* offset */
            iadd
        19: .line 359
            istore 14 /* spaceAddonLeftoverEnd */
        20: .line 362
            aload 8 /* justificationData */
            iconst_2
            iaload
            iload 17 /* offset */
            iadd
        21: .line 361
            istore 15 /* startJustifiableContent */
        22: .line 364
            aload 8 /* justificationData */
            iconst_3
            iaload
            iload 17 /* offset */
            iadd
        23: .line 363
            istore 16 /* endJustifiableContent */
        end local 18 // javax.swing.text.View parent
        end local 17 // int offset
        24: .line 366
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            getfield javax.swing.text.Segment.offset:I
            aload 1 /* s */
            getfield javax.swing.text.Segment.count:I
            iadd
            istore 17 /* n */
        start local 17 // int n
        25: .line 367
            aload 1 /* s */
            getfield javax.swing.text.Segment.offset:I
            istore 18 /* i */
        start local 18 // int i
        26: goto 70
        27: .line 368
      StackMap locals: int int
      StackMap stack:
            aload 10 /* txt */
            iload 18 /* i */
            caload
            bipush 9
            if_icmpeq 32
        28: .line 369
            iload 13 /* spaceAddon */
            ifne 29
            iload 18 /* i */
            iload 14 /* spaceAddonLeftoverEnd */
            if_icmpgt 45
        29: .line 370
      StackMap locals:
      StackMap stack:
            aload 10 /* txt */
            iload 18 /* i */
            caload
            bipush 32
            if_icmpne 45
        30: .line 371
            iload 15 /* startJustifiableContent */
            iload 18 /* i */
            if_icmpgt 45
        31: .line 372
            iload 18 /* i */
            iload 16 /* endJustifiableContent */
            if_icmpgt 45
        32: .line 374
      StackMap locals:
      StackMap stack:
            aload 10 /* txt */
            iload 18 /* i */
            caload
            bipush 9
            if_icmpne 40
        33: .line 375
            aload 5 /* e */
            ifnull 38
        34: .line 376
            aload 5 /* e */
            iload 9 /* nextX */
            i2f
        35: .line 377
            iload 6 /* startOffset */
            iload 18 /* i */
            iadd
            iload 11 /* txtOffset */
            isub
        36: .line 376
            invokeinterface javax.swing.text.TabExpander.nextTabStop:(FI)F
            f2i
            istore 9 /* nextX */
        37: .line 378
            goto 46
        38: .line 379
      StackMap locals:
      StackMap stack:
            iload 9 /* nextX */
            aload 2 /* metrics */
            bipush 32
            invokevirtual java.awt.FontMetrics.charWidth:(C)I
            iadd
            istore 9 /* nextX */
        39: .line 381
            goto 46
      StackMap locals:
      StackMap stack:
        40: aload 10 /* txt */
            iload 18 /* i */
            caload
            bipush 32
            if_icmpne 46
        41: .line 382
            iload 9 /* nextX */
            aload 2 /* metrics */
            bipush 32
            invokevirtual java.awt.FontMetrics.charWidth:(C)I
            iload 13 /* spaceAddon */
            iadd
            iadd
            istore 9 /* nextX */
        42: .line 383
            iload 18 /* i */
            iload 14 /* spaceAddonLeftoverEnd */
            if_icmpgt 46
        43: .line 384
            iinc 9 /* nextX */ 1
        44: .line 387
            goto 46
        45: .line 388
      StackMap locals:
      StackMap stack:
            iload 9 /* nextX */
            aload 2 /* metrics */
            aload 10 /* txt */
            iload 18 /* i */
            caload
            invokevirtual java.awt.FontMetrics.charWidth:(C)I
            iadd
            istore 9 /* nextX */
        46: .line 390
      StackMap locals:
      StackMap stack:
            iload 4 /* x */
            iload 9 /* nextX */
            if_icmpge 69
        47: .line 397
            iload 7 /* round */
            ifeq 64
        48: .line 398
            iload 18 /* i */
            iconst_1
            iadd
            iload 11 /* txtOffset */
            isub
            istore 19 /* offset */
        start local 19 // int offset
        49: .line 400
            aload 2 /* metrics */
            aload 10 /* txt */
            iload 11 /* txtOffset */
            iload 19 /* offset */
            invokevirtual java.awt.FontMetrics.charsWidth:([CII)I
            istore 20 /* width */
        start local 20 // int width
        50: .line 401
            iload 4 /* x */
            iload 3 /* x0 */
            isub
            istore 21 /* span */
        start local 21 // int span
        51: .line 403
            iload 21 /* span */
            iload 20 /* width */
            if_icmpge 68
        52: .line 404
            goto 62
        53: .line 405
      StackMap locals: int int int
      StackMap stack:
            iload 19 /* offset */
            iconst_1
            if_icmple 54
            aload 2 /* metrics */
            aload 10 /* txt */
            iload 11 /* txtOffset */
            iload 19 /* offset */
            iconst_1
            isub
            invokevirtual java.awt.FontMetrics.charsWidth:([CII)I
            goto 55
      StackMap locals:
      StackMap stack:
        54: iconst_0
      StackMap locals:
      StackMap stack: int
        55: istore 22 /* nextWidth */
        start local 22 // int nextWidth
        56: .line 407
            iload 21 /* span */
            iload 22 /* nextWidth */
            if_icmplt 60
        57: .line 408
            iload 21 /* span */
            iload 22 /* nextWidth */
            isub
            iload 20 /* width */
            iload 21 /* span */
            isub
            if_icmpge 68
        58: .line 409
            iinc 19 /* offset */ -1
        59: .line 412
            goto 68
        60: .line 415
      StackMap locals: int
      StackMap stack:
            iload 22 /* nextWidth */
            istore 20 /* width */
        61: .line 416
            iinc 19 /* offset */ -1
        end local 22 // int nextWidth
        62: .line 404
      StackMap locals:
      StackMap stack:
            iload 19 /* offset */
            ifgt 53
        end local 21 // int span
        end local 20 // int width
        63: .line 419
            goto 68
        end local 19 // int offset
        64: .line 420
      StackMap locals:
      StackMap stack:
            iload 18 /* i */
            iload 11 /* txtOffset */
            isub
            istore 19 /* offset */
        start local 19 // int offset
        65: .line 422
            goto 67
        66: .line 423
      StackMap locals: int
      StackMap stack:
            iinc 19 /* offset */ -1
        67: .line 422
      StackMap locals:
      StackMap stack:
            iload 19 /* offset */
            ifle 68
            aload 2 /* metrics */
            aload 10 /* txt */
            iload 11 /* txtOffset */
            iload 19 /* offset */
            invokevirtual java.awt.FontMetrics.charsWidth:([CII)I
            iload 4 /* x */
            iload 3 /* x0 */
            isub
            if_icmpgt 66
        68: .line 427
      StackMap locals:
      StackMap stack:
            iload 19 /* offset */
            ireturn
        end local 19 // int offset
        69: .line 367
      StackMap locals:
      StackMap stack:
            iinc 18 /* i */ 1
      StackMap locals:
      StackMap stack:
        70: iload 18 /* i */
            iload 17 /* n */
            if_icmplt 27
        end local 18 // int i
        71: .line 432
            iload 12 /* txtCount */
            ireturn
        end local 17 // int n
        end local 16 // int endJustifiableContent
        end local 15 // int startJustifiableContent
        end local 14 // int spaceAddonLeftoverEnd
        end local 13 // int spaceAddon
        end local 12 // int txtCount
        end local 11 // int txtOffset
        end local 10 // char[] txt
        end local 9 // int nextX
        end local 8 // int[] justificationData
        end local 7 // boolean round
        end local 6 // int startOffset
        end local 5 // javax.swing.text.TabExpander e
        end local 4 // int x
        end local 3 // int x0
        end local 2 // java.awt.FontMetrics metrics
        end local 1 // javax.swing.text.Segment s
        end local 0 // javax.swing.text.View view
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   72     0                     view  Ljavax/swing/text/View;
            0   72     1                        s  Ljavax/swing/text/Segment;
            0   72     2                  metrics  Ljava/awt/FontMetrics;
            0   72     3                       x0  I
            0   72     4                        x  I
            0   72     5                        e  Ljavax/swing/text/TabExpander;
            0   72     6              startOffset  I
            0   72     7                    round  Z
            0   72     8        justificationData  [I
            3   72     9                    nextX  I
            4   72    10                      txt  [C
            5   72    11                txtOffset  I
            6   72    12                 txtCount  I
            7   72    13               spaceAddon  I
            8   72    14    spaceAddonLeftoverEnd  I
            9   72    15  startJustifiableContent  I
           10   72    16    endJustifiableContent  I
           12   24    17                   offset  I
           13   24    18                   parent  Ljavax/swing/text/View;
           25   72    17                        n  I
           26   71    18                        i  I
           49   64    19                   offset  I
           65   69    19                   offset  I
           50   63    20                    width  I
           51   63    21                     span  I
           56   62    22                nextWidth  I
    MethodParameters:
                   Name  Flags
      view               
      s                  
      metrics            
      x0                 
      x                  
      e                  
      startOffset        
      round              
      justificationData  

  public static final int getBreakLocation(javax.swing.text.Segment, java.awt.FontMetrics, int, int, javax.swing.text.TabExpander, int);
    descriptor: (Ljavax/swing/text/Segment;Ljava/awt/FontMetrics;IILjavax/swing/text/TabExpander;I)I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=7, locals=14, args_size=6
        start local 0 // javax.swing.text.Segment s
        start local 1 // java.awt.FontMetrics metrics
        start local 2 // int x0
        start local 3 // int x
        start local 4 // javax.swing.text.TabExpander e
        start local 5 // int startOffset
         0: .line 452
            aload 0 /* s */
            getfield javax.swing.text.Segment.array:[C
            astore 6 /* txt */
        start local 6 // char[] txt
         1: .line 453
            aload 0 /* s */
            getfield javax.swing.text.Segment.offset:I
            istore 7 /* txtOffset */
        start local 7 // int txtOffset
         2: .line 454
            aload 0 /* s */
            getfield javax.swing.text.Segment.count:I
            istore 8 /* txtCount */
        start local 8 // int txtCount
         3: .line 455
            aload 0 /* s */
            aload 1 /* metrics */
            iload 2 /* x0 */
            iload 3 /* x */
         4: .line 456
            aload 4 /* e */
            iload 5 /* startOffset */
            iconst_0
         5: .line 455
            invokestatic javax.swing.text.Utilities.getTabbedTextOffset:(Ljavax/swing/text/Segment;Ljava/awt/FontMetrics;IILjavax/swing/text/TabExpander;IZ)I
            istore 9 /* index */
        start local 9 // int index
         6: .line 458
            iload 9 /* index */
            iload 8 /* txtCount */
            iconst_1
            isub
            if_icmplt 8
         7: .line 459
            iload 8 /* txtCount */
            ireturn
         8: .line 462
      StackMap locals: javax.swing.text.Segment java.awt.FontMetrics int int javax.swing.text.TabExpander int char[] int int int
      StackMap stack:
            iload 7 /* txtOffset */
            iload 9 /* index */
            iadd
            istore 10 /* i */
        start local 10 // int i
         9: goto 22
        10: .line 463
      StackMap locals: int
      StackMap stack:
            aload 6 /* txt */
            iload 10 /* i */
            caload
            istore 11 /* ch */
        start local 11 // char ch
        11: .line 464
            iload 11 /* ch */
            sipush 256
            if_icmpge 15
        12: .line 466
            iload 11 /* ch */
            invokestatic java.lang.Character.isWhitespace:(C)Z
            ifeq 21
        13: .line 467
            iload 10 /* i */
            iload 7 /* txtOffset */
            isub
            iconst_1
            iadd
            istore 9 /* index */
        14: .line 468
            goto 23
        15: .line 472
      StackMap locals: int
      StackMap stack:
            invokestatic java.text.BreakIterator.getLineInstance:()Ljava/text/BreakIterator;
            astore 12 /* bit */
        start local 12 // java.text.BreakIterator bit
        16: .line 473
            aload 12 /* bit */
            aload 0 /* s */
            invokevirtual java.text.BreakIterator.setText:(Ljava/text/CharacterIterator;)V
        17: .line 474
            aload 12 /* bit */
            iload 10 /* i */
            iconst_1
            iadd
            invokevirtual java.text.BreakIterator.preceding:(I)I
            istore 13 /* breakPos */
        start local 13 // int breakPos
        18: .line 475
            iload 13 /* breakPos */
            iload 7 /* txtOffset */
            if_icmple 23
        19: .line 476
            iload 13 /* breakPos */
            iload 7 /* txtOffset */
            isub
            istore 9 /* index */
        20: .line 478
            goto 23
        end local 13 // int breakPos
        end local 12 // java.text.BreakIterator bit
        end local 11 // char ch
        21: .line 462
      StackMap locals:
      StackMap stack:
            iinc 10 /* i */ -1
      StackMap locals:
      StackMap stack:
        22: iload 10 /* i */
            iload 7 /* txtOffset */
            if_icmpge 10
        end local 10 // int i
        23: .line 481
      StackMap locals:
      StackMap stack:
            iload 9 /* index */
            ireturn
        end local 9 // int index
        end local 8 // int txtCount
        end local 7 // int txtOffset
        end local 6 // char[] txt
        end local 5 // int startOffset
        end local 4 // javax.swing.text.TabExpander e
        end local 3 // int x
        end local 2 // int x0
        end local 1 // java.awt.FontMetrics metrics
        end local 0 // javax.swing.text.Segment s
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   24     0            s  Ljavax/swing/text/Segment;
            0   24     1      metrics  Ljava/awt/FontMetrics;
            0   24     2           x0  I
            0   24     3            x  I
            0   24     4            e  Ljavax/swing/text/TabExpander;
            0   24     5  startOffset  I
            1   24     6          txt  [C
            2   24     7    txtOffset  I
            3   24     8     txtCount  I
            6   24     9        index  I
            9   23    10            i  I
           11   21    11           ch  C
           16   21    12          bit  Ljava/text/BreakIterator;
           18   21    13     breakPos  I
    MethodParameters:
             Name  Flags
      s            
      metrics      
      x0           
      x            
      e            
      startOffset  

  public static final int getRowStart(javax.swing.text.JTextComponent, int);
    descriptor: (Ljavax/swing/text/JTextComponent;I)I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // javax.swing.text.JTextComponent c
        start local 1 // int offs
         0: .line 497
            aload 0 /* c */
            iload 1 /* offs */
            invokevirtual javax.swing.text.JTextComponent.modelToView:(I)Ljava/awt/Rectangle;
            astore 2 /* r */
        start local 2 // java.awt.Rectangle r
         1: .line 498
            aload 2 /* r */
            ifnonnull 3
         2: .line 499
            iconst_m1
            ireturn
         3: .line 501
      StackMap locals: java.awt.Rectangle
      StackMap stack:
            iload 1 /* offs */
            istore 3 /* lastOffs */
        start local 3 // int lastOffs
         4: .line 502
            aload 2 /* r */
            getfield java.awt.Rectangle.y:I
            istore 4 /* y */
        start local 4 // int y
         5: .line 503
            goto 12
         6: .line 505
      StackMap locals: int int
      StackMap stack:
            aload 2 /* r */
            getfield java.awt.Rectangle.height:I
            ifeq 8
         7: .line 506
            iload 3 /* lastOffs */
            istore 1 /* offs */
         8: .line 508
      StackMap locals:
      StackMap stack:
            iinc 3 /* lastOffs */ -1
         9: .line 509
            iload 3 /* lastOffs */
            iflt 10
            aload 0 /* c */
            iload 3 /* lastOffs */
            invokevirtual javax.swing.text.JTextComponent.modelToView:(I)Ljava/awt/Rectangle;
            goto 11
      StackMap locals:
      StackMap stack:
        10: aconst_null
      StackMap locals:
      StackMap stack: java.awt.Rectangle
        11: astore 2 /* r */
        12: .line 503
      StackMap locals:
      StackMap stack:
            aload 2 /* r */
            ifnull 13
            iload 4 /* y */
            aload 2 /* r */
            getfield java.awt.Rectangle.y:I
            if_icmpeq 6
        13: .line 511
      StackMap locals:
      StackMap stack:
            iload 1 /* offs */
            ireturn
        end local 4 // int y
        end local 3 // int lastOffs
        end local 2 // java.awt.Rectangle r
        end local 1 // int offs
        end local 0 // javax.swing.text.JTextComponent c
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   14     0         c  Ljavax/swing/text/JTextComponent;
            0   14     1      offs  I
            1   14     2         r  Ljava/awt/Rectangle;
            4   14     3  lastOffs  I
            5   14     4         y  I
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
      Name  Flags
      c     
      offs  

  public static final int getRowEnd(javax.swing.text.JTextComponent, int);
    descriptor: (Ljavax/swing/text/JTextComponent;I)I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // javax.swing.text.JTextComponent c
        start local 1 // int offs
         0: .line 527
            aload 0 /* c */
            iload 1 /* offs */
            invokevirtual javax.swing.text.JTextComponent.modelToView:(I)Ljava/awt/Rectangle;
            astore 2 /* r */
        start local 2 // java.awt.Rectangle r
         1: .line 528
            aload 2 /* r */
            ifnonnull 3
         2: .line 529
            iconst_m1
            ireturn
         3: .line 531
      StackMap locals: java.awt.Rectangle
      StackMap stack:
            aload 0 /* c */
            invokevirtual javax.swing.text.JTextComponent.getDocument:()Ljavax/swing/text/Document;
            invokeinterface javax.swing.text.Document.getLength:()I
            istore 3 /* n */
        start local 3 // int n
         4: .line 532
            iload 1 /* offs */
            istore 4 /* lastOffs */
        start local 4 // int lastOffs
         5: .line 533
            aload 2 /* r */
            getfield java.awt.Rectangle.y:I
            istore 5 /* y */
        start local 5 // int y
         6: .line 534
            goto 13
         7: .line 536
      StackMap locals: int int int
      StackMap stack:
            aload 2 /* r */
            getfield java.awt.Rectangle.height:I
            ifeq 9
         8: .line 537
            iload 4 /* lastOffs */
            istore 1 /* offs */
         9: .line 539
      StackMap locals:
      StackMap stack:
            iinc 4 /* lastOffs */ 1
        10: .line 540
            iload 4 /* lastOffs */
            iload 3 /* n */
            if_icmpgt 11
            aload 0 /* c */
            iload 4 /* lastOffs */
            invokevirtual javax.swing.text.JTextComponent.modelToView:(I)Ljava/awt/Rectangle;
            goto 12
      StackMap locals:
      StackMap stack:
        11: aconst_null
      StackMap locals:
      StackMap stack: java.awt.Rectangle
        12: astore 2 /* r */
        13: .line 534
      StackMap locals:
      StackMap stack:
            aload 2 /* r */
            ifnull 14
            iload 5 /* y */
            aload 2 /* r */
            getfield java.awt.Rectangle.y:I
            if_icmpeq 7
        14: .line 542
      StackMap locals:
      StackMap stack:
            iload 1 /* offs */
            ireturn
        end local 5 // int y
        end local 4 // int lastOffs
        end local 3 // int n
        end local 2 // java.awt.Rectangle r
        end local 1 // int offs
        end local 0 // javax.swing.text.JTextComponent c
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0         c  Ljavax/swing/text/JTextComponent;
            0   15     1      offs  I
            1   15     2         r  Ljava/awt/Rectangle;
            4   15     3         n  I
            5   15     4  lastOffs  I
            6   15     5         y  I
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
      Name  Flags
      c     
      offs  

  public static final int getPositionAbove(javax.swing.text.JTextComponent, int, int);
    descriptor: (Ljavax/swing/text/JTextComponent;II)I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=2, locals=8, args_size=3
        start local 0 // javax.swing.text.JTextComponent c
        start local 1 // int offs
        start local 2 // int x
         0: .line 559
            aload 0 /* c */
            iload 1 /* offs */
            invokestatic javax.swing.text.Utilities.getRowStart:(Ljavax/swing/text/JTextComponent;I)I
            iconst_1
            isub
            istore 3 /* lastOffs */
        start local 3 // int lastOffs
         1: .line 560
            iload 3 /* lastOffs */
            ifge 3
         2: .line 561
            iconst_m1
            ireturn
         3: .line 563
      StackMap locals: int
      StackMap stack:
            ldc 2147483647
            istore 4 /* bestSpan */
        start local 4 // int bestSpan
         4: .line 564
            iconst_0
            istore 5 /* y */
        start local 5 // int y
         5: .line 565
            aconst_null
            astore 6 /* r */
        start local 6 // java.awt.Rectangle r
         6: .line 566
            iload 3 /* lastOffs */
            iflt 18
         7: .line 567
            aload 0 /* c */
            iload 3 /* lastOffs */
            invokevirtual javax.swing.text.JTextComponent.modelToView:(I)Ljava/awt/Rectangle;
            astore 6 /* r */
         8: .line 568
            aload 6 /* r */
            getfield java.awt.Rectangle.y:I
            istore 5 /* y */
         9: .line 570
            goto 18
        10: .line 571
      StackMap locals: int int java.awt.Rectangle
      StackMap stack:
            aload 6 /* r */
            getfield java.awt.Rectangle.x:I
            iload 2 /* x */
            isub
            invokestatic java.lang.Math.abs:(I)I
            istore 7 /* span */
        start local 7 // int span
        11: .line 572
            iload 7 /* span */
            iload 4 /* bestSpan */
            if_icmpge 14
        12: .line 573
            iload 3 /* lastOffs */
            istore 1 /* offs */
        13: .line 574
            iload 7 /* span */
            istore 4 /* bestSpan */
        14: .line 576
      StackMap locals: int
      StackMap stack:
            iinc 3 /* lastOffs */ -1
        15: .line 577
            iload 3 /* lastOffs */
            iflt 16
            aload 0 /* c */
            iload 3 /* lastOffs */
            invokevirtual javax.swing.text.JTextComponent.modelToView:(I)Ljava/awt/Rectangle;
            goto 17
      StackMap locals:
      StackMap stack:
        16: aconst_null
      StackMap locals:
      StackMap stack: java.awt.Rectangle
        17: astore 6 /* r */
        end local 7 // int span
        18: .line 570
      StackMap locals:
      StackMap stack:
            aload 6 /* r */
            ifnull 19
            iload 5 /* y */
            aload 6 /* r */
            getfield java.awt.Rectangle.y:I
            if_icmpeq 10
        19: .line 579
      StackMap locals:
      StackMap stack:
            iload 1 /* offs */
            ireturn
        end local 6 // java.awt.Rectangle r
        end local 5 // int y
        end local 4 // int bestSpan
        end local 3 // int lastOffs
        end local 2 // int x
        end local 1 // int offs
        end local 0 // javax.swing.text.JTextComponent c
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   20     0         c  Ljavax/swing/text/JTextComponent;
            0   20     1      offs  I
            0   20     2         x  I
            1   20     3  lastOffs  I
            4   20     4  bestSpan  I
            5   20     5         y  I
            6   20     6         r  Ljava/awt/Rectangle;
           11   18     7      span  I
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
      Name  Flags
      c     
      offs  
      x     

  public static final int getPositionBelow(javax.swing.text.JTextComponent, int, int);
    descriptor: (Ljavax/swing/text/JTextComponent;II)I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=2, locals=9, args_size=3
        start local 0 // javax.swing.text.JTextComponent c
        start local 1 // int offs
        start local 2 // int x
         0: .line 596
            aload 0 /* c */
            iload 1 /* offs */
            invokestatic javax.swing.text.Utilities.getRowEnd:(Ljavax/swing/text/JTextComponent;I)I
            iconst_1
            iadd
            istore 3 /* lastOffs */
        start local 3 // int lastOffs
         1: .line 597
            iload 3 /* lastOffs */
            ifgt 3
         2: .line 598
            iconst_m1
            ireturn
         3: .line 600
      StackMap locals: int
      StackMap stack:
            ldc 2147483647
            istore 4 /* bestSpan */
        start local 4 // int bestSpan
         4: .line 601
            aload 0 /* c */
            invokevirtual javax.swing.text.JTextComponent.getDocument:()Ljavax/swing/text/Document;
            invokeinterface javax.swing.text.Document.getLength:()I
            istore 5 /* n */
        start local 5 // int n
         5: .line 602
            iconst_0
            istore 6 /* y */
        start local 6 // int y
         6: .line 603
            aconst_null
            astore 7 /* r */
        start local 7 // java.awt.Rectangle r
         7: .line 604
            iload 3 /* lastOffs */
            iload 5 /* n */
            if_icmpgt 19
         8: .line 605
            aload 0 /* c */
            iload 3 /* lastOffs */
            invokevirtual javax.swing.text.JTextComponent.modelToView:(I)Ljava/awt/Rectangle;
            astore 7 /* r */
         9: .line 606
            aload 7 /* r */
            getfield java.awt.Rectangle.y:I
            istore 6 /* y */
        10: .line 608
            goto 19
        11: .line 609
      StackMap locals: javax.swing.text.JTextComponent int int int int int int java.awt.Rectangle
      StackMap stack:
            iload 2 /* x */
            aload 7 /* r */
            getfield java.awt.Rectangle.x:I
            isub
            invokestatic java.lang.Math.abs:(I)I
            istore 8 /* span */
        start local 8 // int span
        12: .line 610
            iload 8 /* span */
            iload 4 /* bestSpan */
            if_icmpge 15
        13: .line 611
            iload 3 /* lastOffs */
            istore 1 /* offs */
        14: .line 612
            iload 8 /* span */
            istore 4 /* bestSpan */
        15: .line 614
      StackMap locals: int
      StackMap stack:
            iinc 3 /* lastOffs */ 1
        16: .line 615
            iload 3 /* lastOffs */
            iload 5 /* n */
            if_icmpgt 17
            aload 0 /* c */
            iload 3 /* lastOffs */
            invokevirtual javax.swing.text.JTextComponent.modelToView:(I)Ljava/awt/Rectangle;
            goto 18
      StackMap locals:
      StackMap stack:
        17: aconst_null
      StackMap locals:
      StackMap stack: java.awt.Rectangle
        18: astore 7 /* r */
        end local 8 // int span
        19: .line 608
      StackMap locals:
      StackMap stack:
            aload 7 /* r */
            ifnull 20
            iload 6 /* y */
            aload 7 /* r */
            getfield java.awt.Rectangle.y:I
            if_icmpeq 11
        20: .line 617
      StackMap locals:
      StackMap stack:
            iload 1 /* offs */
            ireturn
        end local 7 // java.awt.Rectangle r
        end local 6 // int y
        end local 5 // int n
        end local 4 // int bestSpan
        end local 3 // int lastOffs
        end local 2 // int x
        end local 1 // int offs
        end local 0 // javax.swing.text.JTextComponent c
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   21     0         c  Ljavax/swing/text/JTextComponent;
            0   21     1      offs  I
            0   21     2         x  I
            1   21     3  lastOffs  I
            4   21     4  bestSpan  I
            5   21     5         n  I
            6   21     6         y  I
            7   21     7         r  Ljava/awt/Rectangle;
           12   19     8      span  I
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
      Name  Flags
      c     
      offs  
      x     

  public static final int getWordStart(javax.swing.text.JTextComponent, int);
    descriptor: (Ljavax/swing/text/JTextComponent;I)I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=5, locals=9, args_size=2
        start local 0 // javax.swing.text.JTextComponent c
        start local 1 // int offs
         0: .line 630
            aload 0 /* c */
            invokevirtual javax.swing.text.JTextComponent.getDocument:()Ljavax/swing/text/Document;
            astore 2 /* doc */
        start local 2 // javax.swing.text.Document doc
         1: .line 631
            aload 0 /* c */
            iload 1 /* offs */
            invokestatic javax.swing.text.Utilities.getParagraphElement:(Ljavax/swing/text/JTextComponent;I)Ljavax/swing/text/Element;
            astore 3 /* line */
        start local 3 // javax.swing.text.Element line
         2: .line 632
            aload 3 /* line */
            ifnonnull 4
         3: .line 633
            new javax.swing.text.BadLocationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "No word at "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* offs */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iload 1 /* offs */
            invokespecial javax.swing.text.BadLocationException.<init>:(Ljava/lang/String;I)V
            athrow
         4: .line 635
      StackMap locals: javax.swing.text.Document javax.swing.text.Element
      StackMap stack:
            aload 3 /* line */
            invokeinterface javax.swing.text.Element.getStartOffset:()I
            istore 4 /* lineStart */
        start local 4 // int lineStart
         5: .line 636
            aload 3 /* line */
            invokeinterface javax.swing.text.Element.getEndOffset:()I
            aload 2 /* doc */
            invokeinterface javax.swing.text.Document.getLength:()I
            invokestatic java.lang.Math.min:(II)I
            istore 5 /* lineEnd */
        start local 5 // int lineEnd
         6: .line 638
            invokestatic javax.swing.text.SegmentCache.getSharedSegment:()Ljavax/swing/text/Segment;
            astore 6 /* seg */
        start local 6 // javax.swing.text.Segment seg
         7: .line 639
            aload 2 /* doc */
            iload 4 /* lineStart */
            iload 5 /* lineEnd */
            iload 4 /* lineStart */
            isub
            aload 6 /* seg */
            invokeinterface javax.swing.text.Document.getText:(IILjavax/swing/text/Segment;)V
         8: .line 640
            aload 6 /* seg */
            getfield javax.swing.text.Segment.count:I
            ifle 16
         9: .line 641
            aload 0 /* c */
            invokevirtual javax.swing.text.JTextComponent.getLocale:()Ljava/util/Locale;
            invokestatic java.text.BreakIterator.getWordInstance:(Ljava/util/Locale;)Ljava/text/BreakIterator;
            astore 7 /* words */
        start local 7 // java.text.BreakIterator words
        10: .line 642
            aload 7 /* words */
            aload 6 /* seg */
            invokevirtual java.text.BreakIterator.setText:(Ljava/text/CharacterIterator;)V
        11: .line 643
            aload 6 /* seg */
            getfield javax.swing.text.Segment.offset:I
            iload 1 /* offs */
            iadd
            iload 4 /* lineStart */
            isub
            istore 8 /* wordPosition */
        start local 8 // int wordPosition
        12: .line 644
            iload 8 /* wordPosition */
            aload 7 /* words */
            invokevirtual java.text.BreakIterator.last:()I
            if_icmplt 14
        13: .line 645
            aload 7 /* words */
            invokevirtual java.text.BreakIterator.last:()I
            iconst_1
            isub
            istore 8 /* wordPosition */
        14: .line 647
      StackMap locals: javax.swing.text.JTextComponent int javax.swing.text.Document javax.swing.text.Element int int javax.swing.text.Segment java.text.BreakIterator int
      StackMap stack:
            aload 7 /* words */
            iload 8 /* wordPosition */
            invokevirtual java.text.BreakIterator.following:(I)I
            pop
        15: .line 648
            iload 4 /* lineStart */
            aload 7 /* words */
            invokevirtual java.text.BreakIterator.previous:()I
            iadd
            aload 6 /* seg */
            getfield javax.swing.text.Segment.offset:I
            isub
            istore 1 /* offs */
        end local 8 // int wordPosition
        end local 7 // java.text.BreakIterator words
        16: .line 650
      StackMap locals:
      StackMap stack:
            aload 6 /* seg */
            invokestatic javax.swing.text.SegmentCache.releaseSharedSegment:(Ljavax/swing/text/Segment;)V
        17: .line 651
            iload 1 /* offs */
            ireturn
        end local 6 // javax.swing.text.Segment seg
        end local 5 // int lineEnd
        end local 4 // int lineStart
        end local 3 // javax.swing.text.Element line
        end local 2 // javax.swing.text.Document doc
        end local 1 // int offs
        end local 0 // javax.swing.text.JTextComponent c
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   18     0             c  Ljavax/swing/text/JTextComponent;
            0   18     1          offs  I
            1   18     2           doc  Ljavax/swing/text/Document;
            2   18     3          line  Ljavax/swing/text/Element;
            5   18     4     lineStart  I
            6   18     5       lineEnd  I
            7   18     6           seg  Ljavax/swing/text/Segment;
           10   16     7         words  Ljava/text/BreakIterator;
           12   16     8  wordPosition  I
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
      Name  Flags
      c     
      offs  

  public static final int getWordEnd(javax.swing.text.JTextComponent, int);
    descriptor: (Ljavax/swing/text/JTextComponent;I)I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=5, locals=9, args_size=2
        start local 0 // javax.swing.text.JTextComponent c
        start local 1 // int offs
         0: .line 664
            aload 0 /* c */
            invokevirtual javax.swing.text.JTextComponent.getDocument:()Ljavax/swing/text/Document;
            astore 2 /* doc */
        start local 2 // javax.swing.text.Document doc
         1: .line 665
            aload 0 /* c */
            iload 1 /* offs */
            invokestatic javax.swing.text.Utilities.getParagraphElement:(Ljavax/swing/text/JTextComponent;I)Ljavax/swing/text/Element;
            astore 3 /* line */
        start local 3 // javax.swing.text.Element line
         2: .line 666
            aload 3 /* line */
            ifnonnull 4
         3: .line 667
            new javax.swing.text.BadLocationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "No word at "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* offs */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iload 1 /* offs */
            invokespecial javax.swing.text.BadLocationException.<init>:(Ljava/lang/String;I)V
            athrow
         4: .line 669
      StackMap locals: javax.swing.text.Document javax.swing.text.Element
      StackMap stack:
            aload 3 /* line */
            invokeinterface javax.swing.text.Element.getStartOffset:()I
            istore 4 /* lineStart */
        start local 4 // int lineStart
         5: .line 670
            aload 3 /* line */
            invokeinterface javax.swing.text.Element.getEndOffset:()I
            aload 2 /* doc */
            invokeinterface javax.swing.text.Document.getLength:()I
            invokestatic java.lang.Math.min:(II)I
            istore 5 /* lineEnd */
        start local 5 // int lineEnd
         6: .line 672
            invokestatic javax.swing.text.SegmentCache.getSharedSegment:()Ljavax/swing/text/Segment;
            astore 6 /* seg */
        start local 6 // javax.swing.text.Segment seg
         7: .line 673
            aload 2 /* doc */
            iload 4 /* lineStart */
            iload 5 /* lineEnd */
            iload 4 /* lineStart */
            isub
            aload 6 /* seg */
            invokeinterface javax.swing.text.Document.getText:(IILjavax/swing/text/Segment;)V
         8: .line 674
            aload 6 /* seg */
            getfield javax.swing.text.Segment.count:I
            ifle 15
         9: .line 675
            aload 0 /* c */
            invokevirtual javax.swing.text.JTextComponent.getLocale:()Ljava/util/Locale;
            invokestatic java.text.BreakIterator.getWordInstance:(Ljava/util/Locale;)Ljava/text/BreakIterator;
            astore 7 /* words */
        start local 7 // java.text.BreakIterator words
        10: .line 676
            aload 7 /* words */
            aload 6 /* seg */
            invokevirtual java.text.BreakIterator.setText:(Ljava/text/CharacterIterator;)V
        11: .line 677
            iload 1 /* offs */
            iload 4 /* lineStart */
            isub
            aload 6 /* seg */
            getfield javax.swing.text.Segment.offset:I
            iadd
            istore 8 /* wordPosition */
        start local 8 // int wordPosition
        12: .line 678
            iload 8 /* wordPosition */
            aload 7 /* words */
            invokevirtual java.text.BreakIterator.last:()I
            if_icmplt 14
        13: .line 679
            aload 7 /* words */
            invokevirtual java.text.BreakIterator.last:()I
            iconst_1
            isub
            istore 8 /* wordPosition */
        14: .line 681
      StackMap locals: javax.swing.text.JTextComponent int javax.swing.text.Document javax.swing.text.Element int int javax.swing.text.Segment java.text.BreakIterator int
      StackMap stack:
            iload 4 /* lineStart */
            aload 7 /* words */
            iload 8 /* wordPosition */
            invokevirtual java.text.BreakIterator.following:(I)I
            iadd
            aload 6 /* seg */
            getfield javax.swing.text.Segment.offset:I
            isub
            istore 1 /* offs */
        end local 8 // int wordPosition
        end local 7 // java.text.BreakIterator words
        15: .line 683
      StackMap locals:
      StackMap stack:
            aload 6 /* seg */
            invokestatic javax.swing.text.SegmentCache.releaseSharedSegment:(Ljavax/swing/text/Segment;)V
        16: .line 684
            iload 1 /* offs */
            ireturn
        end local 6 // javax.swing.text.Segment seg
        end local 5 // int lineEnd
        end local 4 // int lineStart
        end local 3 // javax.swing.text.Element line
        end local 2 // javax.swing.text.Document doc
        end local 1 // int offs
        end local 0 // javax.swing.text.JTextComponent c
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   17     0             c  Ljavax/swing/text/JTextComponent;
            0   17     1          offs  I
            1   17     2           doc  Ljavax/swing/text/Document;
            2   17     3          line  Ljavax/swing/text/Element;
            5   17     4     lineStart  I
            6   17     5       lineEnd  I
            7   17     6           seg  Ljavax/swing/text/Segment;
           10   15     7         words  Ljava/text/BreakIterator;
           12   15     8  wordPosition  I
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
      Name  Flags
      c     
      offs  

  public static final int getNextWord(javax.swing.text.JTextComponent, int);
    descriptor: (Ljavax/swing/text/JTextComponent;I)I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // javax.swing.text.JTextComponent c
        start local 1 // int offs
         0: .line 698
            aload 0 /* c */
            iload 1 /* offs */
            invokestatic javax.swing.text.Utilities.getParagraphElement:(Ljavax/swing/text/JTextComponent;I)Ljavax/swing/text/Element;
            astore 3 /* line */
        start local 3 // javax.swing.text.Element line
         1: .line 699
            aload 0 /* c */
            aload 3 /* line */
            iload 1 /* offs */
            iconst_0
            invokestatic javax.swing.text.Utilities.getNextWordInParagraph:(Ljavax/swing/text/JTextComponent;Ljavax/swing/text/Element;IZ)I
            istore 2 /* nextWord */
        start local 2 // int nextWord
         2: .line 700
            goto 6
         3: .line 704
      StackMap locals: int javax.swing.text.Element
      StackMap stack:
            aload 3 /* line */
            invokeinterface javax.swing.text.Element.getEndOffset:()I
            istore 1 /* offs */
         4: .line 705
            aload 0 /* c */
            iload 1 /* offs */
            invokestatic javax.swing.text.Utilities.getParagraphElement:(Ljavax/swing/text/JTextComponent;I)Ljavax/swing/text/Element;
            astore 3 /* line */
         5: .line 701
            aload 0 /* c */
            aload 3 /* line */
            iload 1 /* offs */
            iconst_1
            invokestatic javax.swing.text.Utilities.getNextWordInParagraph:(Ljavax/swing/text/JTextComponent;Ljavax/swing/text/Element;IZ)I
            istore 2 /* nextWord */
         6: .line 700
      StackMap locals:
      StackMap stack:
            iload 2 /* nextWord */
            iconst_m1
            if_icmpeq 3
         7: .line 707
            iload 2 /* nextWord */
            ireturn
        end local 3 // javax.swing.text.Element line
        end local 2 // int nextWord
        end local 1 // int offs
        end local 0 // javax.swing.text.JTextComponent c
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0         c  Ljavax/swing/text/JTextComponent;
            0    8     1      offs  I
            2    8     2  nextWord  I
            1    8     3      line  Ljavax/swing/text/Element;
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
      Name  Flags
      c     
      offs  

  static int getNextWordInParagraph(javax.swing.text.JTextComponent, javax.swing.text.Element, int, boolean);
    descriptor: (Ljavax/swing/text/JTextComponent;Ljavax/swing/text/Element;IZ)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=11, args_size=4
        start local 0 // javax.swing.text.JTextComponent c
        start local 1 // javax.swing.text.Element line
        start local 2 // int offs
        start local 3 // boolean first
         0: .line 718
            aload 1 /* line */
            ifnonnull 2
         1: .line 719
            new javax.swing.text.BadLocationException
            dup
            ldc "No more words"
            iload 2 /* offs */
            invokespecial javax.swing.text.BadLocationException.<init>:(Ljava/lang/String;I)V
            athrow
         2: .line 721
      StackMap locals:
      StackMap stack:
            aload 1 /* line */
            invokeinterface javax.swing.text.Element.getDocument:()Ljavax/swing/text/Document;
            astore 4 /* doc */
        start local 4 // javax.swing.text.Document doc
         3: .line 722
            aload 1 /* line */
            invokeinterface javax.swing.text.Element.getStartOffset:()I
            istore 5 /* lineStart */
        start local 5 // int lineStart
         4: .line 723
            aload 1 /* line */
            invokeinterface javax.swing.text.Element.getEndOffset:()I
            aload 4 /* doc */
            invokeinterface javax.swing.text.Document.getLength:()I
            invokestatic java.lang.Math.min:(II)I
            istore 6 /* lineEnd */
        start local 6 // int lineEnd
         5: .line 724
            iload 2 /* offs */
            iload 6 /* lineEnd */
            if_icmpge 6
            iload 2 /* offs */
            iload 5 /* lineStart */
            if_icmpge 7
         6: .line 725
      StackMap locals: javax.swing.text.Document int int
      StackMap stack:
            new javax.swing.text.BadLocationException
            dup
            ldc "No more words"
            iload 2 /* offs */
            invokespecial javax.swing.text.BadLocationException.<init>:(Ljava/lang/String;I)V
            athrow
         7: .line 727
      StackMap locals:
      StackMap stack:
            invokestatic javax.swing.text.SegmentCache.getSharedSegment:()Ljavax/swing/text/Segment;
            astore 7 /* seg */
        start local 7 // javax.swing.text.Segment seg
         8: .line 728
            aload 4 /* doc */
            iload 5 /* lineStart */
            iload 6 /* lineEnd */
            iload 5 /* lineStart */
            isub
            aload 7 /* seg */
            invokeinterface javax.swing.text.Document.getText:(IILjavax/swing/text/Segment;)V
         9: .line 729
            aload 0 /* c */
            invokevirtual javax.swing.text.JTextComponent.getLocale:()Ljava/util/Locale;
            invokestatic java.text.BreakIterator.getWordInstance:(Ljava/util/Locale;)Ljava/text/BreakIterator;
            astore 8 /* words */
        start local 8 // java.text.BreakIterator words
        10: .line 730
            aload 8 /* words */
            aload 7 /* seg */
            invokevirtual java.text.BreakIterator.setText:(Ljava/text/CharacterIterator;)V
        11: .line 731
            iload 3 /* first */
            ifeq 14
            aload 8 /* words */
            invokevirtual java.text.BreakIterator.first:()I
            aload 7 /* seg */
            getfield javax.swing.text.Segment.offset:I
            iload 2 /* offs */
            iadd
            iload 5 /* lineStart */
            isub
            if_icmpne 14
        12: .line 732
            aload 7 /* seg */
            getfield javax.swing.text.Segment.array:[C
            aload 8 /* words */
            invokevirtual java.text.BreakIterator.first:()I
            caload
            invokestatic java.lang.Character.isWhitespace:(C)Z
            ifne 14
        13: .line 734
            iload 2 /* offs */
            ireturn
        14: .line 736
      StackMap locals: javax.swing.text.Segment java.text.BreakIterator
      StackMap stack:
            aload 8 /* words */
            aload 7 /* seg */
            getfield javax.swing.text.Segment.offset:I
            iload 2 /* offs */
            iadd
            iload 5 /* lineStart */
            isub
            invokevirtual java.text.BreakIterator.following:(I)I
            istore 9 /* wordPosition */
        start local 9 // int wordPosition
        15: .line 737
            iload 9 /* wordPosition */
            iconst_m1
            if_icmpeq 17
        16: .line 738
            iload 9 /* wordPosition */
            aload 7 /* seg */
            getfield javax.swing.text.Segment.offset:I
            aload 7 /* seg */
            getfield javax.swing.text.Segment.count:I
            iadd
            if_icmplt 18
        17: .line 740
      StackMap locals: int
      StackMap stack:
            iconst_m1
            ireturn
        18: .line 745
      StackMap locals:
      StackMap stack:
            aload 7 /* seg */
            getfield javax.swing.text.Segment.array:[C
            iload 9 /* wordPosition */
            caload
            istore 10 /* ch */
        start local 10 // char ch
        19: .line 746
            iload 10 /* ch */
            invokestatic java.lang.Character.isWhitespace:(C)Z
            ifne 21
        20: .line 747
            iload 5 /* lineStart */
            iload 9 /* wordPosition */
            iadd
            aload 7 /* seg */
            getfield javax.swing.text.Segment.offset:I
            isub
            ireturn
        21: .line 753
      StackMap locals: int
      StackMap stack:
            aload 8 /* words */
            invokevirtual java.text.BreakIterator.next:()I
            istore 9 /* wordPosition */
        22: .line 754
            iload 9 /* wordPosition */
            iconst_m1
            if_icmpeq 26
        23: .line 755
            iload 5 /* lineStart */
            iload 9 /* wordPosition */
            iadd
            aload 7 /* seg */
            getfield javax.swing.text.Segment.offset:I
            isub
            istore 2 /* offs */
        24: .line 756
            iload 2 /* offs */
            iload 6 /* lineEnd */
            if_icmpeq 26
        25: .line 757
            iload 2 /* offs */
            ireturn
        26: .line 760
      StackMap locals:
      StackMap stack:
            aload 7 /* seg */
            invokestatic javax.swing.text.SegmentCache.releaseSharedSegment:(Ljavax/swing/text/Segment;)V
        27: .line 761
            iconst_m1
            ireturn
        end local 10 // char ch
        end local 9 // int wordPosition
        end local 8 // java.text.BreakIterator words
        end local 7 // javax.swing.text.Segment seg
        end local 6 // int lineEnd
        end local 5 // int lineStart
        end local 4 // javax.swing.text.Document doc
        end local 3 // boolean first
        end local 2 // int offs
        end local 1 // javax.swing.text.Element line
        end local 0 // javax.swing.text.JTextComponent c
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   28     0             c  Ljavax/swing/text/JTextComponent;
            0   28     1          line  Ljavax/swing/text/Element;
            0   28     2          offs  I
            0   28     3         first  Z
            3   28     4           doc  Ljavax/swing/text/Document;
            4   28     5     lineStart  I
            5   28     6       lineEnd  I
            8   28     7           seg  Ljavax/swing/text/Segment;
           10   28     8         words  Ljava/text/BreakIterator;
           15   28     9  wordPosition  I
           19   28    10            ch  C
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
       Name  Flags
      c      
      line   
      offs   
      first  

  public static final int getPreviousWord(javax.swing.text.JTextComponent, int);
    descriptor: (Ljavax/swing/text/JTextComponent;I)I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // javax.swing.text.JTextComponent c
        start local 1 // int offs
         0: .line 776
            aload 0 /* c */
            iload 1 /* offs */
            invokestatic javax.swing.text.Utilities.getParagraphElement:(Ljavax/swing/text/JTextComponent;I)Ljavax/swing/text/Element;
            astore 3 /* line */
        start local 3 // javax.swing.text.Element line
         1: .line 777
            aload 0 /* c */
            aload 3 /* line */
            iload 1 /* offs */
            invokestatic javax.swing.text.Utilities.getPrevWordInParagraph:(Ljavax/swing/text/JTextComponent;Ljavax/swing/text/Element;I)I
            istore 2 /* prevWord */
        start local 2 // int prevWord
         2: .line 778
            goto 6
         3: .line 782
      StackMap locals: int javax.swing.text.Element
      StackMap stack:
            aload 3 /* line */
            invokeinterface javax.swing.text.Element.getStartOffset:()I
            iconst_1
            isub
            istore 1 /* offs */
         4: .line 783
            aload 0 /* c */
            iload 1 /* offs */
            invokestatic javax.swing.text.Utilities.getParagraphElement:(Ljavax/swing/text/JTextComponent;I)Ljavax/swing/text/Element;
            astore 3 /* line */
         5: .line 779
            aload 0 /* c */
            aload 3 /* line */
            iload 1 /* offs */
            invokestatic javax.swing.text.Utilities.getPrevWordInParagraph:(Ljavax/swing/text/JTextComponent;Ljavax/swing/text/Element;I)I
            istore 2 /* prevWord */
         6: .line 778
      StackMap locals:
      StackMap stack:
            iload 2 /* prevWord */
            iconst_m1
            if_icmpeq 3
         7: .line 785
            iload 2 /* prevWord */
            ireturn
        end local 3 // javax.swing.text.Element line
        end local 2 // int prevWord
        end local 1 // int offs
        end local 0 // javax.swing.text.JTextComponent c
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0         c  Ljavax/swing/text/JTextComponent;
            0    8     1      offs  I
            2    8     2  prevWord  I
            1    8     3      line  Ljavax/swing/text/Element;
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
      Name  Flags
      c     
      offs  

  static int getPrevWordInParagraph(javax.swing.text.JTextComponent, javax.swing.text.Element, int);
    descriptor: (Ljavax/swing/text/JTextComponent;Ljavax/swing/text/Element;I)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=10, args_size=3
        start local 0 // javax.swing.text.JTextComponent c
        start local 1 // javax.swing.text.Element line
        start local 2 // int offs
         0: .line 796
            aload 1 /* line */
            ifnonnull 2
         1: .line 797
            new javax.swing.text.BadLocationException
            dup
            ldc "No more words"
            iload 2 /* offs */
            invokespecial javax.swing.text.BadLocationException.<init>:(Ljava/lang/String;I)V
            athrow
         2: .line 799
      StackMap locals:
      StackMap stack:
            aload 1 /* line */
            invokeinterface javax.swing.text.Element.getDocument:()Ljavax/swing/text/Document;
            astore 3 /* doc */
        start local 3 // javax.swing.text.Document doc
         3: .line 800
            aload 1 /* line */
            invokeinterface javax.swing.text.Element.getStartOffset:()I
            istore 4 /* lineStart */
        start local 4 // int lineStart
         4: .line 801
            aload 1 /* line */
            invokeinterface javax.swing.text.Element.getEndOffset:()I
            istore 5 /* lineEnd */
        start local 5 // int lineEnd
         5: .line 802
            iload 2 /* offs */
            iload 5 /* lineEnd */
            if_icmpgt 6
            iload 2 /* offs */
            iload 4 /* lineStart */
            if_icmpge 7
         6: .line 803
      StackMap locals: javax.swing.text.Document int int
      StackMap stack:
            new javax.swing.text.BadLocationException
            dup
            ldc "No more words"
            iload 2 /* offs */
            invokespecial javax.swing.text.BadLocationException.<init>:(Ljava/lang/String;I)V
            athrow
         7: .line 805
      StackMap locals:
      StackMap stack:
            invokestatic javax.swing.text.SegmentCache.getSharedSegment:()Ljavax/swing/text/Segment;
            astore 6 /* seg */
        start local 6 // javax.swing.text.Segment seg
         8: .line 806
            aload 3 /* doc */
            iload 4 /* lineStart */
            iload 5 /* lineEnd */
            iload 4 /* lineStart */
            isub
            aload 6 /* seg */
            invokeinterface javax.swing.text.Document.getText:(IILjavax/swing/text/Segment;)V
         9: .line 807
            aload 0 /* c */
            invokevirtual javax.swing.text.JTextComponent.getLocale:()Ljava/util/Locale;
            invokestatic java.text.BreakIterator.getWordInstance:(Ljava/util/Locale;)Ljava/text/BreakIterator;
            astore 7 /* words */
        start local 7 // java.text.BreakIterator words
        10: .line 808
            aload 7 /* words */
            aload 6 /* seg */
            invokevirtual java.text.BreakIterator.setText:(Ljava/text/CharacterIterator;)V
        11: .line 809
            aload 7 /* words */
            aload 6 /* seg */
            getfield javax.swing.text.Segment.offset:I
            iload 2 /* offs */
            iadd
            iload 4 /* lineStart */
            isub
            invokevirtual java.text.BreakIterator.following:(I)I
            iconst_m1
            if_icmpne 13
        12: .line 810
            aload 7 /* words */
            invokevirtual java.text.BreakIterator.last:()I
            pop
        13: .line 812
      StackMap locals: javax.swing.text.Segment java.text.BreakIterator
      StackMap stack:
            aload 7 /* words */
            invokevirtual java.text.BreakIterator.previous:()I
            istore 8 /* wordPosition */
        start local 8 // int wordPosition
        14: .line 813
            iload 8 /* wordPosition */
            aload 6 /* seg */
            getfield javax.swing.text.Segment.offset:I
            iload 2 /* offs */
            iadd
            iload 4 /* lineStart */
            isub
            if_icmpne 16
        15: .line 814
            aload 7 /* words */
            invokevirtual java.text.BreakIterator.previous:()I
            istore 8 /* wordPosition */
        16: .line 817
      StackMap locals: int
      StackMap stack:
            iload 8 /* wordPosition */
            iconst_m1
            if_icmpne 18
        17: .line 819
            iconst_m1
            ireturn
        18: .line 824
      StackMap locals:
      StackMap stack:
            aload 6 /* seg */
            getfield javax.swing.text.Segment.array:[C
            iload 8 /* wordPosition */
            caload
            istore 9 /* ch */
        start local 9 // char ch
        19: .line 825
            iload 9 /* ch */
            invokestatic java.lang.Character.isWhitespace:(C)Z
            ifne 21
        20: .line 826
            iload 4 /* lineStart */
            iload 8 /* wordPosition */
            iadd
            aload 6 /* seg */
            getfield javax.swing.text.Segment.offset:I
            isub
            ireturn
        21: .line 832
      StackMap locals: int
      StackMap stack:
            aload 7 /* words */
            invokevirtual java.text.BreakIterator.previous:()I
            istore 8 /* wordPosition */
        22: .line 833
            iload 8 /* wordPosition */
            iconst_m1
            if_icmpeq 24
        23: .line 834
            iload 4 /* lineStart */
            iload 8 /* wordPosition */
            iadd
            aload 6 /* seg */
            getfield javax.swing.text.Segment.offset:I
            isub
            ireturn
        24: .line 836
      StackMap locals:
      StackMap stack:
            aload 6 /* seg */
            invokestatic javax.swing.text.SegmentCache.releaseSharedSegment:(Ljavax/swing/text/Segment;)V
        25: .line 837
            iconst_m1
            ireturn
        end local 9 // char ch
        end local 8 // int wordPosition
        end local 7 // java.text.BreakIterator words
        end local 6 // javax.swing.text.Segment seg
        end local 5 // int lineEnd
        end local 4 // int lineStart
        end local 3 // javax.swing.text.Document doc
        end local 2 // int offs
        end local 1 // javax.swing.text.Element line
        end local 0 // javax.swing.text.JTextComponent c
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   26     0             c  Ljavax/swing/text/JTextComponent;
            0   26     1          line  Ljavax/swing/text/Element;
            0   26     2          offs  I
            3   26     3           doc  Ljavax/swing/text/Document;
            4   26     4     lineStart  I
            5   26     5       lineEnd  I
            8   26     6           seg  Ljavax/swing/text/Segment;
           10   26     7         words  Ljava/text/BreakIterator;
           14   26     8  wordPosition  I
           19   26     9            ch  C
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
      Name  Flags
      c     
      line  
      offs  

  public static final javax.swing.text.Element getParagraphElement(javax.swing.text.JTextComponent, int);
    descriptor: (Ljavax/swing/text/JTextComponent;I)Ljavax/swing/text/Element;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // javax.swing.text.JTextComponent c
        start local 1 // int offs
         0: .line 848
            aload 0 /* c */
            invokevirtual javax.swing.text.JTextComponent.getDocument:()Ljavax/swing/text/Document;
            astore 2 /* doc */
        start local 2 // javax.swing.text.Document doc
         1: .line 849
            aload 2 /* doc */
            instanceof javax.swing.text.StyledDocument
            ifeq 3
         2: .line 850
            aload 2 /* doc */
            checkcast javax.swing.text.StyledDocument
            iload 1 /* offs */
            invokeinterface javax.swing.text.StyledDocument.getParagraphElement:(I)Ljavax/swing/text/Element;
            areturn
         3: .line 852
      StackMap locals: javax.swing.text.Document
      StackMap stack:
            aload 2 /* doc */
            invokeinterface javax.swing.text.Document.getDefaultRootElement:()Ljavax/swing/text/Element;
            astore 3 /* map */
        start local 3 // javax.swing.text.Element map
         4: .line 853
            aload 3 /* map */
            iload 1 /* offs */
            invokeinterface javax.swing.text.Element.getElementIndex:(I)I
            istore 4 /* index */
        start local 4 // int index
         5: .line 854
            aload 3 /* map */
            iload 4 /* index */
            invokeinterface javax.swing.text.Element.getElement:(I)Ljavax/swing/text/Element;
            astore 5 /* paragraph */
        start local 5 // javax.swing.text.Element paragraph
         6: .line 855
            iload 1 /* offs */
            aload 5 /* paragraph */
            invokeinterface javax.swing.text.Element.getStartOffset:()I
            if_icmplt 8
            iload 1 /* offs */
            aload 5 /* paragraph */
            invokeinterface javax.swing.text.Element.getEndOffset:()I
            if_icmpge 8
         7: .line 856
            aload 5 /* paragraph */
            areturn
         8: .line 858
      StackMap locals: javax.swing.text.Element int javax.swing.text.Element
      StackMap stack:
            aconst_null
            areturn
        end local 5 // javax.swing.text.Element paragraph
        end local 4 // int index
        end local 3 // javax.swing.text.Element map
        end local 2 // javax.swing.text.Document doc
        end local 1 // int offs
        end local 0 // javax.swing.text.JTextComponent c
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0          c  Ljavax/swing/text/JTextComponent;
            0    9     1       offs  I
            1    9     2        doc  Ljavax/swing/text/Document;
            4    9     3        map  Ljavax/swing/text/Element;
            5    9     4      index  I
            6    9     5  paragraph  Ljavax/swing/text/Element;
    MethodParameters:
      Name  Flags
      c     
      offs  

  static boolean isComposedTextElement(javax.swing.text.Document, int);
    descriptor: (Ljavax/swing/text/Document;I)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // javax.swing.text.Document doc
        start local 1 // int offset
         0: .line 862
            aload 0 /* doc */
            invokeinterface javax.swing.text.Document.getDefaultRootElement:()Ljavax/swing/text/Element;
            astore 2 /* elem */
        start local 2 // javax.swing.text.Element elem
         1: .line 863
            goto 3
         2: .line 864
      StackMap locals: javax.swing.text.Element
      StackMap stack:
            aload 2 /* elem */
            aload 2 /* elem */
            iload 1 /* offset */
            invokeinterface javax.swing.text.Element.getElementIndex:(I)I
            invokeinterface javax.swing.text.Element.getElement:(I)Ljavax/swing/text/Element;
            astore 2 /* elem */
         3: .line 863
      StackMap locals:
      StackMap stack:
            aload 2 /* elem */
            invokeinterface javax.swing.text.Element.isLeaf:()Z
            ifeq 2
         4: .line 866
            aload 2 /* elem */
            invokestatic javax.swing.text.Utilities.isComposedTextElement:(Ljavax/swing/text/Element;)Z
            ireturn
        end local 2 // javax.swing.text.Element elem
        end local 1 // int offset
        end local 0 // javax.swing.text.Document doc
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0     doc  Ljavax/swing/text/Document;
            0    5     1  offset  I
            1    5     2    elem  Ljavax/swing/text/Element;
    MethodParameters:
        Name  Flags
      doc     
      offset  

  static boolean isComposedTextElement(javax.swing.text.Element);
    descriptor: (Ljavax/swing/text/Element;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // javax.swing.text.Element elem
         0: .line 870
            aload 0 /* elem */
            invokeinterface javax.swing.text.Element.getAttributes:()Ljavax/swing/text/AttributeSet;
            astore 1 /* as */
        start local 1 // javax.swing.text.AttributeSet as
         1: .line 871
            aload 1 /* as */
            invokestatic javax.swing.text.Utilities.isComposedTextAttributeDefined:(Ljavax/swing/text/AttributeSet;)Z
            ireturn
        end local 1 // javax.swing.text.AttributeSet as
        end local 0 // javax.swing.text.Element elem
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  elem  Ljavax/swing/text/Element;
            1    2     1    as  Ljavax/swing/text/AttributeSet;
    MethodParameters:
      Name  Flags
      elem  

  static boolean isComposedTextAttributeDefined(javax.swing.text.AttributeSet);
    descriptor: (Ljavax/swing/text/AttributeSet;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.swing.text.AttributeSet as
         0: .line 875
            aload 0 /* as */
            ifnull 3
         1: .line 876
            aload 0 /* as */
            getstatic javax.swing.text.StyleConstants.ComposedTextAttribute:Ljava/lang/Object;
            invokeinterface javax.swing.text.AttributeSet.isDefined:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 875
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 0 // javax.swing.text.AttributeSet as
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0    as  Ljavax/swing/text/AttributeSet;
    MethodParameters:
      Name  Flags
      as    

  static int drawComposedText(javax.swing.text.View, javax.swing.text.AttributeSet, java.awt.Graphics, int, int, int, int);
    descriptor: (Ljavax/swing/text/View;Ljavax/swing/text/AttributeSet;Ljava/awt/Graphics;IIII)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=10, args_size=7
        start local 0 // javax.swing.text.View view
        start local 1 // javax.swing.text.AttributeSet attr
        start local 2 // java.awt.Graphics g
        start local 3 // int x
        start local 4 // int y
        start local 5 // int p0
        start local 6 // int p1
         0: .line 894
            aload 2 /* g */
            checkcast java.awt.Graphics2D
            astore 7 /* g2d */
        start local 7 // java.awt.Graphics2D g2d
         1: .line 895
            aload 1 /* attr */
         2: .line 896
            getstatic javax.swing.text.StyleConstants.ComposedTextAttribute:Ljava/lang/Object;
         3: .line 895
            invokeinterface javax.swing.text.AttributeSet.getAttribute:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.text.AttributedString
            astore 8 /* as */
        start local 8 // java.text.AttributedString as
         4: .line 897
            aload 8 /* as */
            getstatic java.awt.font.TextAttribute.FONT:Ljava/awt/font/TextAttribute;
            aload 2 /* g */
            invokevirtual java.awt.Graphics.getFont:()Ljava/awt/Font;
            invokevirtual java.text.AttributedString.addAttribute:(Ljava/text/AttributedCharacterIterator$Attribute;Ljava/lang/Object;)V
         5: .line 899
            iload 5 /* p0 */
            iload 6 /* p1 */
            if_icmplt 7
         6: .line 900
            iload 3 /* x */
            ireturn
         7: .line 902
      StackMap locals: java.awt.Graphics2D java.text.AttributedString
      StackMap stack:
            aload 8 /* as */
            aconst_null
            iload 5 /* p0 */
            iload 6 /* p1 */
            invokevirtual java.text.AttributedString.getIterator:([Ljava/text/AttributedCharacterIterator$Attribute;II)Ljava/text/AttributedCharacterIterator;
            astore 9 /* aci */
        start local 9 // java.text.AttributedCharacterIterator aci
         8: .line 903
            iload 3 /* x */
         9: .line 904
            aload 0 /* view */
            invokestatic javax.swing.text.Utilities.getJComponent:(Ljavax/swing/text/View;)Ljavax/swing/JComponent;
            aload 7 /* g2d */
            aload 9 /* aci */
            iload 3 /* x */
            iload 4 /* y */
        10: .line 903
            invokestatic sun.swing.SwingUtilities2.drawString:(Ljavax/swing/JComponent;Ljava/awt/Graphics;Ljava/text/AttributedCharacterIterator;II)F
            f2i
            iadd
            ireturn
        end local 9 // java.text.AttributedCharacterIterator aci
        end local 8 // java.text.AttributedString as
        end local 7 // java.awt.Graphics2D g2d
        end local 6 // int p1
        end local 5 // int p0
        end local 4 // int y
        end local 3 // int x
        end local 2 // java.awt.Graphics g
        end local 1 // javax.swing.text.AttributeSet attr
        end local 0 // javax.swing.text.View view
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  view  Ljavax/swing/text/View;
            0   11     1  attr  Ljavax/swing/text/AttributeSet;
            0   11     2     g  Ljava/awt/Graphics;
            0   11     3     x  I
            0   11     4     y  I
            0   11     5    p0  I
            0   11     6    p1  I
            1   11     7   g2d  Ljava/awt/Graphics2D;
            4   11     8    as  Ljava/text/AttributedString;
            8   11     9   aci  Ljava/text/AttributedCharacterIterator;
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
      Name  Flags
      view  
      attr  
      g     
      x     
      y     
      p0    
      p1    

  static void paintComposedText(java.awt.Graphics, java.awt.Rectangle, javax.swing.text.GlyphView);
    descriptor: (Ljava/awt/Graphics;Ljava/awt/Rectangle;Ljavax/swing/text/GlyphView;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=12, args_size=3
        start local 0 // java.awt.Graphics g
        start local 1 // java.awt.Rectangle alloc
        start local 2 // javax.swing.text.GlyphView v
         0: .line 911
            aload 0 /* g */
            instanceof java.awt.Graphics2D
            ifeq 28
         1: .line 912
            aload 0 /* g */
            checkcast java.awt.Graphics2D
            astore 3 /* g2d */
        start local 3 // java.awt.Graphics2D g2d
         2: .line 913
            aload 2 /* v */
            invokevirtual javax.swing.text.GlyphView.getStartOffset:()I
            istore 4 /* p0 */
        start local 4 // int p0
         3: .line 914
            aload 2 /* v */
            invokevirtual javax.swing.text.GlyphView.getEndOffset:()I
            istore 5 /* p1 */
        start local 5 // int p1
         4: .line 915
            aload 2 /* v */
            invokevirtual javax.swing.text.GlyphView.getElement:()Ljavax/swing/text/Element;
            invokeinterface javax.swing.text.Element.getAttributes:()Ljavax/swing/text/AttributeSet;
            astore 6 /* attrSet */
        start local 6 // javax.swing.text.AttributeSet attrSet
         5: .line 917
            aload 6 /* attrSet */
            getstatic javax.swing.text.StyleConstants.ComposedTextAttribute:Ljava/lang/Object;
            invokeinterface javax.swing.text.AttributeSet.getAttribute:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.text.AttributedString
         6: .line 916
            astore 7 /* as */
        start local 7 // java.text.AttributedString as
         7: .line 918
            aload 2 /* v */
            invokevirtual javax.swing.text.GlyphView.getElement:()Ljavax/swing/text/Element;
            invokeinterface javax.swing.text.Element.getStartOffset:()I
            istore 8 /* start */
        start local 8 // int start
         8: .line 919
            aload 1 /* alloc */
            getfield java.awt.Rectangle.y:I
            aload 1 /* alloc */
            getfield java.awt.Rectangle.height:I
            iadd
            aload 2 /* v */
            invokevirtual javax.swing.text.GlyphView.getGlyphPainter:()Ljavax/swing/text/GlyphView$GlyphPainter;
            aload 2 /* v */
            invokevirtual javax.swing.text.GlyphView$GlyphPainter.getDescent:(Ljavax/swing/text/GlyphView;)F
            f2i
            isub
            istore 9 /* y */
        start local 9 // int y
         9: .line 920
            aload 1 /* alloc */
            getfield java.awt.Rectangle.x:I
            istore 10 /* x */
        start local 10 // int x
        10: .line 923
            aload 7 /* as */
            getstatic java.awt.font.TextAttribute.FONT:Ljava/awt/font/TextAttribute;
            aload 2 /* v */
            invokevirtual javax.swing.text.GlyphView.getFont:()Ljava/awt/Font;
            invokevirtual java.text.AttributedString.addAttribute:(Ljava/text/AttributedCharacterIterator$Attribute;Ljava/lang/Object;)V
        11: .line 924
            aload 7 /* as */
            getstatic java.awt.font.TextAttribute.FOREGROUND:Ljava/awt/font/TextAttribute;
            aload 2 /* v */
            invokevirtual javax.swing.text.GlyphView.getForeground:()Ljava/awt/Color;
            invokevirtual java.text.AttributedString.addAttribute:(Ljava/text/AttributedCharacterIterator$Attribute;Ljava/lang/Object;)V
        12: .line 925
            aload 2 /* v */
            invokevirtual javax.swing.text.GlyphView.getAttributes:()Ljavax/swing/text/AttributeSet;
            invokestatic javax.swing.text.StyleConstants.isBold:(Ljavax/swing/text/AttributeSet;)Z
            ifeq 14
        13: .line 926
            aload 7 /* as */
            getstatic java.awt.font.TextAttribute.WEIGHT:Ljava/awt/font/TextAttribute;
            getstatic java.awt.font.TextAttribute.WEIGHT_BOLD:Ljava/lang/Float;
            invokevirtual java.text.AttributedString.addAttribute:(Ljava/text/AttributedCharacterIterator$Attribute;Ljava/lang/Object;)V
        14: .line 928
      StackMap locals: java.awt.Graphics java.awt.Rectangle javax.swing.text.GlyphView java.awt.Graphics2D int int javax.swing.text.AttributeSet java.text.AttributedString int int int
      StackMap stack:
            aload 2 /* v */
            invokevirtual javax.swing.text.GlyphView.getAttributes:()Ljavax/swing/text/AttributeSet;
            invokestatic javax.swing.text.StyleConstants.isItalic:(Ljavax/swing/text/AttributeSet;)Z
            ifeq 16
        15: .line 929
            aload 7 /* as */
            getstatic java.awt.font.TextAttribute.POSTURE:Ljava/awt/font/TextAttribute;
            getstatic java.awt.font.TextAttribute.POSTURE_OBLIQUE:Ljava/lang/Float;
            invokevirtual java.text.AttributedString.addAttribute:(Ljava/text/AttributedCharacterIterator$Attribute;Ljava/lang/Object;)V
        16: .line 931
      StackMap locals:
      StackMap stack:
            aload 2 /* v */
            invokevirtual javax.swing.text.GlyphView.isUnderline:()Z
            ifeq 18
        17: .line 932
            aload 7 /* as */
            getstatic java.awt.font.TextAttribute.UNDERLINE:Ljava/awt/font/TextAttribute;
            getstatic java.awt.font.TextAttribute.UNDERLINE_ON:Ljava/lang/Integer;
            invokevirtual java.text.AttributedString.addAttribute:(Ljava/text/AttributedCharacterIterator$Attribute;Ljava/lang/Object;)V
        18: .line 934
      StackMap locals:
      StackMap stack:
            aload 2 /* v */
            invokevirtual javax.swing.text.GlyphView.isStrikeThrough:()Z
            ifeq 20
        19: .line 935
            aload 7 /* as */
            getstatic java.awt.font.TextAttribute.STRIKETHROUGH:Ljava/awt/font/TextAttribute;
            getstatic java.awt.font.TextAttribute.STRIKETHROUGH_ON:Ljava/lang/Boolean;
            invokevirtual java.text.AttributedString.addAttribute:(Ljava/text/AttributedCharacterIterator$Attribute;Ljava/lang/Object;)V
        20: .line 937
      StackMap locals:
      StackMap stack:
            aload 2 /* v */
            invokevirtual javax.swing.text.GlyphView.isSuperscript:()Z
            ifeq 22
        21: .line 938
            aload 7 /* as */
            getstatic java.awt.font.TextAttribute.SUPERSCRIPT:Ljava/awt/font/TextAttribute;
            getstatic java.awt.font.TextAttribute.SUPERSCRIPT_SUPER:Ljava/lang/Integer;
            invokevirtual java.text.AttributedString.addAttribute:(Ljava/text/AttributedCharacterIterator$Attribute;Ljava/lang/Object;)V
        22: .line 940
      StackMap locals:
      StackMap stack:
            aload 2 /* v */
            invokevirtual javax.swing.text.GlyphView.isSubscript:()Z
            ifeq 24
        23: .line 941
            aload 7 /* as */
            getstatic java.awt.font.TextAttribute.SUPERSCRIPT:Ljava/awt/font/TextAttribute;
            getstatic java.awt.font.TextAttribute.SUPERSCRIPT_SUB:Ljava/lang/Integer;
            invokevirtual java.text.AttributedString.addAttribute:(Ljava/text/AttributedCharacterIterator$Attribute;Ljava/lang/Object;)V
        24: .line 945
      StackMap locals:
      StackMap stack:
            aload 7 /* as */
            aconst_null
            iload 4 /* p0 */
            iload 8 /* start */
            isub
            iload 5 /* p1 */
            iload 8 /* start */
            isub
            invokevirtual java.text.AttributedString.getIterator:([Ljava/text/AttributedCharacterIterator$Attribute;II)Ljava/text/AttributedCharacterIterator;
            astore 11 /* aci */
        start local 11 // java.text.AttributedCharacterIterator aci
        25: .line 946
            aload 2 /* v */
            invokestatic javax.swing.text.Utilities.getJComponent:(Ljavax/swing/text/View;)Ljavax/swing/JComponent;
        26: .line 947
            aload 3 /* g2d */
            aload 11 /* aci */
            iload 10 /* x */
            iload 9 /* y */
        27: .line 946
            invokestatic sun.swing.SwingUtilities2.drawString:(Ljavax/swing/JComponent;Ljava/awt/Graphics;Ljava/text/AttributedCharacterIterator;II)F
            pop
        end local 11 // java.text.AttributedCharacterIterator aci
        end local 10 // int x
        end local 9 // int y
        end local 8 // int start
        end local 7 // java.text.AttributedString as
        end local 6 // javax.swing.text.AttributeSet attrSet
        end local 5 // int p1
        end local 4 // int p0
        end local 3 // java.awt.Graphics2D g2d
        28: .line 949
      StackMap locals: java.awt.Graphics java.awt.Rectangle javax.swing.text.GlyphView
      StackMap stack:
            return
        end local 2 // javax.swing.text.GlyphView v
        end local 1 // java.awt.Rectangle alloc
        end local 0 // java.awt.Graphics g
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   29     0        g  Ljava/awt/Graphics;
            0   29     1    alloc  Ljava/awt/Rectangle;
            0   29     2        v  Ljavax/swing/text/GlyphView;
            2   28     3      g2d  Ljava/awt/Graphics2D;
            3   28     4       p0  I
            4   28     5       p1  I
            5   28     6  attrSet  Ljavax/swing/text/AttributeSet;
            7   28     7       as  Ljava/text/AttributedString;
            8   28     8    start  I
            9   28     9        y  I
           10   28    10        x  I
           25   28    11      aci  Ljava/text/AttributedCharacterIterator;
    MethodParameters:
       Name  Flags
      g      
      alloc  
      v      

  static boolean isLeftToRight(java.awt.Component);
    descriptor: (Ljava/awt/Component;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.Component c
         0: .line 956
            aload 0 /* c */
            invokevirtual java.awt.Component.getComponentOrientation:()Ljava/awt/ComponentOrientation;
            invokevirtual java.awt.ComponentOrientation.isLeftToRight:()Z
            ireturn
        end local 0 // java.awt.Component c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  Ljava/awt/Component;
    MethodParameters:
      Name  Flags
      c     

  static int getNextVisualPositionFrom(javax.swing.text.View, int, javax.swing.text.Position$Bias, java.awt.Shape, int, javax.swing.text.Position$Bias[]);
    descriptor: (Ljavax/swing/text/View;ILjavax/swing/text/Position$Bias;Ljava/awt/Shape;I[Ljavax/swing/text/Position$Bias;)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=14, args_size=6
        start local 0 // javax.swing.text.View v
        start local 1 // int pos
        start local 2 // javax.swing.text.Position$Bias b
        start local 3 // java.awt.Shape alloc
        start local 4 // int direction
        start local 5 // javax.swing.text.Position$Bias[] biasRet
         0: .line 996
            aload 0 /* v */
            invokevirtual javax.swing.text.View.getViewCount:()I
            ifne 2
         1: .line 998
            iload 1 /* pos */
            ireturn
         2: .line 1000
      StackMap locals:
      StackMap stack:
            iload 4 /* direction */
            iconst_1
            if_icmpeq 5
         3: .line 1001
            iload 4 /* direction */
            bipush 7
            if_icmpeq 5
         4: .line 1000
            iconst_0
            goto 6
      StackMap locals:
      StackMap stack:
         5: iconst_1
      StackMap locals:
      StackMap stack: int
         6: istore 6 /* top */
        start local 6 // boolean top
         7: .line 1003
            iload 1 /* pos */
            iconst_m1
            if_icmpne 24
         8: .line 1005
            iload 6 /* top */
            ifeq 9
            aload 0 /* v */
            invokevirtual javax.swing.text.View.getViewCount:()I
            iconst_1
            isub
            goto 10
      StackMap locals: int
      StackMap stack:
         9: iconst_0
      StackMap locals:
      StackMap stack: int
        10: istore 8 /* childIndex */
        start local 8 // int childIndex
        11: .line 1006
            aload 0 /* v */
            iload 8 /* childIndex */
            invokevirtual javax.swing.text.View.getView:(I)Ljavax/swing/text/View;
            astore 9 /* child */
        start local 9 // javax.swing.text.View child
        12: .line 1007
            aload 0 /* v */
            iload 8 /* childIndex */
            aload 3 /* alloc */
            invokevirtual javax.swing.text.View.getChildAllocation:(ILjava/awt/Shape;)Ljava/awt/Shape;
            astore 10 /* childBounds */
        start local 10 // java.awt.Shape childBounds
        13: .line 1008
            aload 9 /* child */
            iload 1 /* pos */
            aload 2 /* b */
            aload 10 /* childBounds */
        14: .line 1009
            iload 4 /* direction */
            aload 5 /* biasRet */
        15: .line 1008
            invokevirtual javax.swing.text.View.getNextVisualPositionFrom:(ILjavax/swing/text/Position$Bias;Ljava/awt/Shape;I[Ljavax/swing/text/Position$Bias;)I
            istore 7 /* retValue */
        start local 7 // int retValue
        16: .line 1010
            iload 7 /* retValue */
            iconst_m1
            if_icmpne 69
            iload 6 /* top */
            ifne 69
            aload 0 /* v */
            invokevirtual javax.swing.text.View.getViewCount:()I
            iconst_1
            if_icmple 69
        17: .line 1014
            aload 0 /* v */
            iconst_1
            invokevirtual javax.swing.text.View.getView:(I)Ljavax/swing/text/View;
            astore 9 /* child */
        18: .line 1015
            aload 0 /* v */
            iconst_1
            aload 3 /* alloc */
            invokevirtual javax.swing.text.View.getChildAllocation:(ILjava/awt/Shape;)Ljava/awt/Shape;
            astore 10 /* childBounds */
        19: .line 1016
            aload 9 /* child */
            iconst_m1
            aload 5 /* biasRet */
            iconst_0
            aaload
        20: .line 1017
            aload 10 /* childBounds */
        21: .line 1018
            iload 4 /* direction */
            aload 5 /* biasRet */
        22: .line 1016
            invokevirtual javax.swing.text.View.getNextVisualPositionFrom:(ILjavax/swing/text/Position$Bias;Ljava/awt/Shape;I[Ljavax/swing/text/Position$Bias;)I
            istore 7 /* retValue */
        end local 10 // java.awt.Shape childBounds
        end local 9 // javax.swing.text.View child
        end local 8 // int childIndex
        23: .line 1020
            goto 69
        end local 7 // int retValue
        24: .line 1022
      StackMap locals:
      StackMap stack:
            iload 6 /* top */
            ifeq 25
            iconst_m1
            goto 26
      StackMap locals:
      StackMap stack:
        25: iconst_1
      StackMap locals:
      StackMap stack: int
        26: istore 8 /* increment */
        start local 8 // int increment
        27: .line 1024
            aload 2 /* b */
            getstatic javax.swing.text.Position$Bias.Backward:Ljavax/swing/text/Position$Bias;
            if_acmpne 30
            iload 1 /* pos */
            ifle 30
        28: .line 1025
            aload 0 /* v */
            iload 1 /* pos */
            iconst_1
            isub
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            invokevirtual javax.swing.text.View.getViewIndex:(ILjavax/swing/text/Position$Bias;)I
            istore 9 /* childIndex */
        start local 9 // int childIndex
        29: .line 1026
            goto 31
        end local 9 // int childIndex
        30: .line 1028
      StackMap locals: javax.swing.text.View int javax.swing.text.Position$Bias java.awt.Shape int javax.swing.text.Position$Bias[] int top int
      StackMap stack:
            aload 0 /* v */
            iload 1 /* pos */
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            invokevirtual javax.swing.text.View.getViewIndex:(ILjavax/swing/text/Position$Bias;)I
            istore 9 /* childIndex */
        start local 9 // int childIndex
        31: .line 1030
      StackMap locals: int
      StackMap stack:
            aload 0 /* v */
            iload 9 /* childIndex */
            invokevirtual javax.swing.text.View.getView:(I)Ljavax/swing/text/View;
            astore 10 /* child */
        start local 10 // javax.swing.text.View child
        32: .line 1031
            aload 0 /* v */
            iload 9 /* childIndex */
            aload 3 /* alloc */
            invokevirtual javax.swing.text.View.getChildAllocation:(ILjava/awt/Shape;)Ljava/awt/Shape;
            astore 11 /* childBounds */
        start local 11 // java.awt.Shape childBounds
        33: .line 1032
            aload 10 /* child */
            iload 1 /* pos */
            aload 2 /* b */
            aload 11 /* childBounds */
        34: .line 1033
            iload 4 /* direction */
            aload 5 /* biasRet */
        35: .line 1032
            invokevirtual javax.swing.text.View.getNextVisualPositionFrom:(ILjavax/swing/text/Position$Bias;Ljava/awt/Shape;I[Ljavax/swing/text/Position$Bias;)I
            istore 7 /* retValue */
        start local 7 // int retValue
        36: .line 1034
            iload 4 /* direction */
            iconst_3
            if_icmpeq 38
        37: .line 1035
            iload 4 /* direction */
            bipush 7
            if_icmpne 41
        38: .line 1036
      StackMap locals: javax.swing.text.View int javax.swing.text.Position$Bias java.awt.Shape int javax.swing.text.Position$Bias[] int int int int javax.swing.text.View java.awt.Shape
      StackMap stack:
            aload 0 /* v */
            instanceof javax.swing.text.CompositeView
            ifeq 41
        39: .line 1037
            aload 0 /* v */
            checkcast javax.swing.text.CompositeView
            iload 1 /* pos */
            aload 2 /* b */
            invokevirtual javax.swing.text.CompositeView.flipEastAndWestAtEnds:(ILjavax/swing/text/Position$Bias;)Z
            ifeq 41
        40: .line 1038
            iload 8 /* increment */
            iconst_m1
            imul
            istore 8 /* increment */
        41: .line 1040
      StackMap locals:
      StackMap stack:
            iload 9 /* childIndex */
            iload 8 /* increment */
            iadd
            istore 9 /* childIndex */
        42: .line 1041
            iload 7 /* retValue */
            iconst_m1
            if_icmpne 54
            iload 9 /* childIndex */
            iflt 54
        43: .line 1042
            iload 9 /* childIndex */
            aload 0 /* v */
            invokevirtual javax.swing.text.View.getViewCount:()I
            if_icmpge 54
        44: .line 1043
            aload 0 /* v */
            iload 9 /* childIndex */
            invokevirtual javax.swing.text.View.getView:(I)Ljavax/swing/text/View;
            astore 10 /* child */
        45: .line 1044
            aload 0 /* v */
            iload 9 /* childIndex */
            aload 3 /* alloc */
            invokevirtual javax.swing.text.View.getChildAllocation:(ILjava/awt/Shape;)Ljava/awt/Shape;
            astore 11 /* childBounds */
        46: .line 1045
            aload 10 /* child */
        47: .line 1046
            iconst_m1
            aload 2 /* b */
            aload 11 /* childBounds */
            iload 4 /* direction */
            aload 5 /* biasRet */
        48: .line 1045
            invokevirtual javax.swing.text.View.getNextVisualPositionFrom:(ILjavax/swing/text/Position$Bias;Ljava/awt/Shape;I[Ljavax/swing/text/Position$Bias;)I
            istore 7 /* retValue */
        49: .line 1050
            iload 7 /* retValue */
            iload 1 /* pos */
            if_icmpne 69
            aload 5 /* biasRet */
            iconst_0
            aaload
            aload 2 /* b */
            if_acmpeq 69
        50: .line 1051
            aload 0 /* v */
            iload 1 /* pos */
            aload 5 /* biasRet */
            iconst_0
            aaload
        51: .line 1052
            aload 3 /* alloc */
            iload 4 /* direction */
        52: .line 1053
            aload 5 /* biasRet */
        53: .line 1051
            invokestatic javax.swing.text.Utilities.getNextVisualPositionFrom:(Ljavax/swing/text/View;ILjavax/swing/text/Position$Bias;Ljava/awt/Shape;I[Ljavax/swing/text/Position$Bias;)I
            ireturn
        54: .line 1056
      StackMap locals:
      StackMap stack:
            iload 7 /* retValue */
            iconst_m1
            if_icmpeq 69
            aload 5 /* biasRet */
            iconst_0
            aaload
            aload 2 /* b */
            if_acmpeq 69
        55: .line 1057
            iload 8 /* increment */
            iconst_1
            if_icmpne 56
            aload 10 /* child */
            invokevirtual javax.swing.text.View.getEndOffset:()I
            iload 7 /* retValue */
            if_icmpeq 58
        56: .line 1058
      StackMap locals:
      StackMap stack:
            iload 8 /* increment */
            iconst_m1
            if_icmpne 69
        57: .line 1059
            aload 10 /* child */
            invokevirtual javax.swing.text.View.getStartOffset:()I
            iload 7 /* retValue */
            if_icmpne 69
        58: .line 1060
      StackMap locals:
      StackMap stack:
            iload 9 /* childIndex */
            iflt 69
            iload 9 /* childIndex */
            aload 0 /* v */
            invokevirtual javax.swing.text.View.getViewCount:()I
            if_icmpge 69
        59: .line 1063
            aload 0 /* v */
            iload 9 /* childIndex */
            invokevirtual javax.swing.text.View.getView:(I)Ljavax/swing/text/View;
            astore 10 /* child */
        60: .line 1064
            aload 0 /* v */
            iload 9 /* childIndex */
            aload 3 /* alloc */
            invokevirtual javax.swing.text.View.getChildAllocation:(ILjava/awt/Shape;)Ljava/awt/Shape;
            astore 11 /* childBounds */
        61: .line 1065
            aload 5 /* biasRet */
            iconst_0
            aaload
            astore 12 /* originalBias */
        start local 12 // javax.swing.text.Position$Bias originalBias
        62: .line 1066
            aload 10 /* child */
        63: .line 1067
            iconst_m1
            aload 2 /* b */
            aload 11 /* childBounds */
            iload 4 /* direction */
            aload 5 /* biasRet */
        64: .line 1066
            invokevirtual javax.swing.text.View.getNextVisualPositionFrom:(ILjavax/swing/text/Position$Bias;Ljava/awt/Shape;I[Ljavax/swing/text/Position$Bias;)I
            istore 13 /* nextPos */
        start local 13 // int nextPos
        65: .line 1068
            aload 5 /* biasRet */
            iconst_0
            aaload
            aload 2 /* b */
            if_acmpne 68
        66: .line 1069
            iload 13 /* nextPos */
            istore 7 /* retValue */
        67: .line 1070
            goto 69
        68: .line 1072
      StackMap locals: javax.swing.text.Position$Bias int
      StackMap stack:
            aload 5 /* biasRet */
            iconst_0
            aload 12 /* originalBias */
            aastore
        end local 13 // int nextPos
        end local 12 // javax.swing.text.Position$Bias originalBias
        end local 11 // java.awt.Shape childBounds
        end local 10 // javax.swing.text.View child
        end local 9 // int childIndex
        end local 8 // int increment
        69: .line 1076
      StackMap locals: javax.swing.text.View int javax.swing.text.Position$Bias java.awt.Shape int javax.swing.text.Position$Bias[] int int
      StackMap stack:
            iload 7 /* retValue */
            ireturn
        end local 7 // int retValue
        end local 6 // boolean top
        end local 5 // javax.swing.text.Position$Bias[] biasRet
        end local 4 // int direction
        end local 3 // java.awt.Shape alloc
        end local 2 // javax.swing.text.Position$Bias b
        end local 1 // int pos
        end local 0 // javax.swing.text.View v
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   70     0             v  Ljavax/swing/text/View;
            0   70     1           pos  I
            0   70     2             b  Ljavax/swing/text/Position$Bias;
            0   70     3         alloc  Ljava/awt/Shape;
            0   70     4     direction  I
            0   70     5       biasRet  [Ljavax/swing/text/Position$Bias;
            7   70     6           top  Z
           16   24     7      retValue  I
           36   70     7      retValue  I
           11   23     8    childIndex  I
           12   23     9         child  Ljavax/swing/text/View;
           13   23    10   childBounds  Ljava/awt/Shape;
           27   69     8     increment  I
           29   30     9    childIndex  I
           31   69     9    childIndex  I
           32   69    10         child  Ljavax/swing/text/View;
           33   69    11   childBounds  Ljava/awt/Shape;
           62   69    12  originalBias  Ljavax/swing/text/Position$Bias;
           65   69    13       nextPos  I
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
           Name  Flags
      v          
      pos        
      b          
      alloc      
      direction  
      biasRet    
}
SourceFile: "Utilities.java"
InnerClasses:
  public Attribute = java.text.AttributedCharacterIterator$Attribute of java.text.AttributedCharacterIterator
  public abstract GlyphPainter = javax.swing.text.GlyphView$GlyphPainter of javax.swing.text.GlyphView
  public final Bias = javax.swing.text.Position$Bias of javax.swing.text.Position