public class javax.swing.text.InternationalFormatter extends javax.swing.text.DefaultFormatter
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.swing.text.InternationalFormatter
  super_class: javax.swing.text.DefaultFormatter
{
  private static final java.text.Format$Field[] EMPTY_FIELD_ARRAY;
    descriptor: [Ljava/text/Format$Field;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private java.text.Format format;
    descriptor: Ljava/text/Format;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Comparable<?> max;
    descriptor: Ljava/lang/Comparable;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/lang/Comparable<*>;

  private java.lang.Comparable<?> min;
    descriptor: Ljava/lang/Comparable;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/lang/Comparable<*>;

  private transient java.util.BitSet literalMask;
    descriptor: Ljava/util/BitSet;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.text.AttributedCharacterIterator iterator;
    descriptor: Ljava/text/AttributedCharacterIterator;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient boolean validMask;
    descriptor: Z
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.lang.String string;
    descriptor: Ljava/lang/String;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient boolean ignoreDocumentMutate;
    descriptor: Z
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 100
            iconst_0
            anewarray java.text.Format$Field
            putstatic javax.swing.text.InternationalFormatter.EMPTY_FIELD_ARRAY:[Ljava/text/Format$Field;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.swing.text.InternationalFormatter this
         0: .line 169
            aload 0 /* this */
            invokespecial javax.swing.text.DefaultFormatter.<init>:()V
         1: .line 170
            aload 0 /* this */
            iconst_0
            invokevirtual javax.swing.text.InternationalFormatter.setOverwriteMode:(Z)V
         2: .line 171
            return
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavax/swing/text/InternationalFormatter;

  public void <init>(java.text.Format);
    descriptor: (Ljava/text/Format;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.text.Format format
         0: .line 180
            aload 0 /* this */
            invokespecial javax.swing.text.InternationalFormatter.<init>:()V
         1: .line 181
            aload 0 /* this */
            aload 1 /* format */
            invokevirtual javax.swing.text.InternationalFormatter.setFormat:(Ljava/text/Format;)V
         2: .line 182
            return
        end local 1 // java.text.Format format
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljavax/swing/text/InternationalFormatter;
            0    3     1  format  Ljava/text/Format;
    MethodParameters:
        Name  Flags
      format  

  public void setFormat(java.text.Format);
    descriptor: (Ljava/text/Format;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.text.Format format
         0: .line 192
            aload 0 /* this */
            aload 1 /* format */
            putfield javax.swing.text.InternationalFormatter.format:Ljava/text/Format;
         1: .line 193
            return
        end local 1 // java.text.Format format
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ljavax/swing/text/InternationalFormatter;
            0    2     1  format  Ljava/text/Format;
    MethodParameters:
        Name  Flags
      format  

  public java.text.Format getFormat();
    descriptor: ()Ljava/text/Format;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.text.InternationalFormatter this
         0: .line 202
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.format:Ljava/text/Format;
            areturn
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/text/InternationalFormatter;

  public void setMinimum(java.lang.Comparable<?>);
    descriptor: (Ljava/lang/Comparable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.lang.Comparable minimum
         0: .line 215
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getValueClass:()Ljava/lang/Class;
            ifnonnull 2
            aload 1 /* minimum */
            ifnull 2
         1: .line 216
            aload 0 /* this */
            aload 1 /* minimum */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual javax.swing.text.InternationalFormatter.setValueClass:(Ljava/lang/Class;)V
         2: .line 218
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* minimum */
            putfield javax.swing.text.InternationalFormatter.min:Ljava/lang/Comparable;
         3: .line 219
            return
        end local 1 // java.lang.Comparable minimum
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Ljavax/swing/text/InternationalFormatter;
            0    4     1  minimum  Ljava/lang/Comparable<*>;
    Signature: (Ljava/lang/Comparable<*>;)V
    MethodParameters:
         Name  Flags
      minimum  

  public java.lang.Comparable<?> getMinimum();
    descriptor: ()Ljava/lang/Comparable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.text.InternationalFormatter this
         0: .line 227
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.min:Ljava/lang/Comparable;
            areturn
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/text/InternationalFormatter;
    Signature: ()Ljava/lang/Comparable<*>;

  public void setMaximum(java.lang.Comparable<?>);
    descriptor: (Ljava/lang/Comparable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.lang.Comparable max
         0: .line 240
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getValueClass:()Ljava/lang/Class;
            ifnonnull 2
            aload 1 /* max */
            ifnull 2
         1: .line 241
            aload 0 /* this */
            aload 1 /* max */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual javax.swing.text.InternationalFormatter.setValueClass:(Ljava/lang/Class;)V
         2: .line 243
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* max */
            putfield javax.swing.text.InternationalFormatter.max:Ljava/lang/Comparable;
         3: .line 244
            return
        end local 1 // java.lang.Comparable max
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavax/swing/text/InternationalFormatter;
            0    4     1   max  Ljava/lang/Comparable<*>;
    Signature: (Ljava/lang/Comparable<*>;)V
    MethodParameters:
      Name  Flags
      max   

  public java.lang.Comparable<?> getMaximum();
    descriptor: ()Ljava/lang/Comparable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.text.InternationalFormatter this
         0: .line 252
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.max:Ljava/lang/Comparable;
            areturn
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/text/InternationalFormatter;
    Signature: ()Ljava/lang/Comparable<*>;

  public void install(javax.swing.JFormattedTextField);
    descriptor: (Ljavax/swing/JFormattedTextField;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // javax.swing.JFormattedTextField ftf
         0: .line 286
            aload 0 /* this */
            aload 1 /* ftf */
            invokespecial javax.swing.text.DefaultFormatter.install:(Ljavax/swing/JFormattedTextField;)V
         1: .line 287
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.updateMaskIfNecessary:()V
         2: .line 289
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.positionCursorAtInitialLocation:()V
         3: .line 290
            return
        end local 1 // javax.swing.JFormattedTextField ftf
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavax/swing/text/InternationalFormatter;
            0    4     1   ftf  Ljavax/swing/JFormattedTextField;
    MethodParameters:
      Name  Flags
      ftf   

  public java.lang.String valueToString(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.lang.Object value
         0: .line 301
            aload 1 /* value */
            ifnonnull 2
         1: .line 302
            ldc ""
            areturn
         2: .line 304
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getFormat:()Ljava/text/Format;
            astore 2 /* f */
        start local 2 // java.text.Format f
         3: .line 306
            aload 2 /* f */
            ifnonnull 5
         4: .line 307
            aload 1 /* value */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            areturn
         5: .line 309
      StackMap locals: java.text.Format
      StackMap stack:
            aload 2 /* f */
            aload 1 /* value */
            invokevirtual java.text.Format.format:(Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 2 // java.text.Format f
        end local 1 // java.lang.Object value
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Ljavax/swing/text/InternationalFormatter;
            0    6     1  value  Ljava/lang/Object;
            3    6     2      f  Ljava/text/Format;
    Exceptions:
      throws java.text.ParseException
    MethodParameters:
       Name  Flags
      value  

  public java.lang.Object stringToValue(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.lang.String text
         0: .line 321
            aload 0 /* this */
            aload 1 /* text */
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getFormat:()Ljava/text/Format;
            invokevirtual javax.swing.text.InternationalFormatter.stringToValue:(Ljava/lang/String;Ljava/text/Format;)Ljava/lang/Object;
            astore 2 /* value */
        start local 2 // java.lang.Object value
         1: .line 325
            aload 2 /* value */
            ifnull 4
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getValueClass:()Ljava/lang/Class;
            ifnull 4
         2: .line 326
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getValueClass:()Ljava/lang/Class;
            aload 2 /* value */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifne 4
         3: .line 327
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokespecial javax.swing.text.DefaultFormatter.stringToValue:(Ljava/lang/String;)Ljava/lang/Object;
            astore 2 /* value */
         4: .line 330
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            aload 2 /* value */
            iconst_1
            invokevirtual javax.swing.text.InternationalFormatter.isValidValue:(Ljava/lang/Object;Z)Z
            ifne 10
         5: .line 331
            new java.text.ParseException
            dup
            ldc "Value not within min/max range"
            iconst_0
            invokespecial java.text.ParseException.<init>:(Ljava/lang/String;I)V
            athrow
         6: .line 333
      StackMap locals:
      StackMap stack: java.lang.ClassCastException
            astore 3 /* cce */
        start local 3 // java.lang.ClassCastException cce
         7: .line 334
            new java.text.ParseException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Class cast exception comparing values: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         8: .line 335
            aload 3 /* cce */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
         9: .line 334
            invokespecial java.text.ParseException.<init>:(Ljava/lang/String;I)V
            athrow
        end local 3 // java.lang.ClassCastException cce
        10: .line 337
      StackMap locals:
      StackMap stack:
            aload 2 /* value */
            areturn
        end local 2 // java.lang.Object value
        end local 1 // java.lang.String text
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0   this  Ljavax/swing/text/InternationalFormatter;
            0   11     1   text  Ljava/lang/String;
            1   11     2  value  Ljava/lang/Object;
            7   10     3    cce  Ljava/lang/ClassCastException;
      Exception table:
        from    to  target  type
           4     6       6  Class java.lang.ClassCastException
    Exceptions:
      throws java.text.ParseException
    MethodParameters:
      Name  Flags
      text  

  public java.text.Format$Field[] getFields(int);
    descriptor: (I)[Ljava/text/Format$Field;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // int offset
         0: .line 351
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getAllowsInvalid:()Z
            ifeq 2
         1: .line 353
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.updateMask:()V
         2: .line 356
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* offset */
            invokevirtual javax.swing.text.InternationalFormatter.getAttributes:(I)Ljava/util/Map;
            astore 2 /* attrs */
        start local 2 // java.util.Map attrs
         3: .line 358
            aload 2 /* attrs */
            ifnull 7
            aload 2 /* attrs */
            invokeinterface java.util.Map.size:()I
            ifle 7
         4: .line 359
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* al */
        start local 3 // java.util.ArrayList al
         5: .line 361
            aload 3 /* al */
            aload 2 /* attrs */
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
         6: .line 362
            aload 3 /* al */
            getstatic javax.swing.text.InternationalFormatter.EMPTY_FIELD_ARRAY:[Ljava/text/Format$Field;
            invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.text.Format$Field[]
            areturn
        end local 3 // java.util.ArrayList al
         7: .line 364
      StackMap locals: java.util.Map
      StackMap stack:
            getstatic javax.swing.text.InternationalFormatter.EMPTY_FIELD_ARRAY:[Ljava/text/Format$Field;
            areturn
        end local 2 // java.util.Map attrs
        end local 1 // int offset
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Ljavax/swing/text/InternationalFormatter;
            0    8     1  offset  I
            3    8     2   attrs  Ljava/util/Map<Ljava/text/AttributedCharacterIterator$Attribute;Ljava/lang/Object;>;
            5    7     3      al  Ljava/util/ArrayList<Ljava/text/AttributedCharacterIterator$Attribute;>;
    MethodParameters:
        Name  Flags
      offset  

  public java.lang.Object clone();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // javax.swing.text.InternationalFormatter this
         0: .line 373
            aload 0 /* this */
         1: .line 374
            invokespecial javax.swing.text.DefaultFormatter.clone:()Ljava/lang/Object;
         2: .line 373
            checkcast javax.swing.text.InternationalFormatter
            astore 1 /* formatter */
        start local 1 // javax.swing.text.InternationalFormatter formatter
         3: .line 376
            aload 1 /* formatter */
            aconst_null
            putfield javax.swing.text.InternationalFormatter.literalMask:Ljava/util/BitSet;
         4: .line 377
            aload 1 /* formatter */
            aconst_null
            putfield javax.swing.text.InternationalFormatter.iterator:Ljava/text/AttributedCharacterIterator;
         5: .line 378
            aload 1 /* formatter */
            iconst_0
            putfield javax.swing.text.InternationalFormatter.validMask:Z
         6: .line 379
            aload 1 /* formatter */
            aconst_null
            putfield javax.swing.text.InternationalFormatter.string:Ljava/lang/String;
         7: .line 380
            aload 1 /* formatter */
            areturn
        end local 1 // javax.swing.text.InternationalFormatter formatter
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Ljavax/swing/text/InternationalFormatter;
            3    8     1  formatter  Ljavax/swing/text/InternationalFormatter;
    Exceptions:
      throws java.lang.CloneNotSupportedException

  protected javax.swing.Action[] getActions();
    descriptor: ()[Ljavax/swing/Action;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=1, args_size=1
        start local 0 // javax.swing.text.InternationalFormatter this
         0: .line 388
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getSupportsIncrement:()Z
            ifeq 4
         1: .line 389
            iconst_2
            anewarray javax.swing.Action
            dup
            iconst_0
            new javax.swing.text.InternationalFormatter$IncrementAction
            dup
            aload 0 /* this */
            ldc "increment"
            iconst_1
            invokespecial javax.swing.text.InternationalFormatter$IncrementAction.<init>:(Ljavax/swing/text/InternationalFormatter;Ljava/lang/String;I)V
            aastore
            dup
            iconst_1
         2: .line 390
            new javax.swing.text.InternationalFormatter$IncrementAction
            dup
            aload 0 /* this */
            ldc "decrement"
            iconst_m1
            invokespecial javax.swing.text.InternationalFormatter$IncrementAction.<init>:(Ljavax/swing/text/InternationalFormatter;Ljava/lang/String;I)V
            aastore
         3: .line 389
            areturn
         4: .line 392
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljavax/swing/text/InternationalFormatter;

  java.lang.Object stringToValue(java.lang.String, java.text.Format);
    descriptor: (Ljava/lang/String;Ljava/text/Format;)Ljava/lang/Object;
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.lang.String text
        start local 2 // java.text.Format f
         0: .line 400
            aload 2 /* f */
            ifnonnull 2
         1: .line 401
            aload 1 /* text */
            areturn
         2: .line 403
      StackMap locals:
      StackMap stack:
            aload 2 /* f */
            aload 1 /* text */
            invokevirtual java.text.Format.parseObject:(Ljava/lang/String;)Ljava/lang/Object;
            areturn
        end local 2 // java.text.Format f
        end local 1 // java.lang.String text
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavax/swing/text/InternationalFormatter;
            0    3     1  text  Ljava/lang/String;
            0    3     2     f  Ljava/text/Format;
    Exceptions:
      throws java.text.ParseException
    MethodParameters:
      Name  Flags
      text  
      f     

  boolean isValidValue(java.lang.Object, boolean);
    descriptor: (Ljava/lang/Object;Z)Z
    flags: (0x0000) 
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.lang.Object value
        start local 2 // boolean wantsCCE
         0: .line 415
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getMinimum:()Ljava/lang/Comparable;
            astore 3 /* min */
        start local 3 // java.lang.Comparable min
         1: .line 418
            aload 3 /* min */
            ifnull 7
            aload 3 /* min */
            aload 1 /* value */
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            ifle 7
         2: .line 419
            iconst_0
            ireturn
         3: .line 421
      StackMap locals: javax.swing.text.InternationalFormatter java.lang.Object int java.lang.Comparable
      StackMap stack: java.lang.ClassCastException
            astore 4 /* cce */
        start local 4 // java.lang.ClassCastException cce
         4: .line 422
            iload 2 /* wantsCCE */
            ifeq 6
         5: .line 423
            aload 4 /* cce */
            athrow
         6: .line 425
      StackMap locals: java.lang.ClassCastException
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // java.lang.ClassCastException cce
         7: .line 429
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getMaximum:()Ljava/lang/Comparable;
            astore 4 /* max */
        start local 4 // java.lang.Comparable max
         8: .line 431
            aload 4 /* max */
            ifnull 14
            aload 4 /* max */
            aload 1 /* value */
            invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
            ifge 14
         9: .line 432
            iconst_0
            ireturn
        10: .line 434
      StackMap locals: javax.swing.text.InternationalFormatter java.lang.Object int java.lang.Comparable java.lang.Comparable
      StackMap stack: java.lang.ClassCastException
            astore 5 /* cce */
        start local 5 // java.lang.ClassCastException cce
        11: .line 435
            iload 2 /* wantsCCE */
            ifeq 13
        12: .line 436
            aload 5 /* cce */
            athrow
        13: .line 438
      StackMap locals: java.lang.ClassCastException
      StackMap stack:
            iconst_0
            ireturn
        end local 5 // java.lang.ClassCastException cce
        14: .line 440
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 4 // java.lang.Comparable max
        end local 3 // java.lang.Comparable min
        end local 2 // boolean wantsCCE
        end local 1 // java.lang.Object value
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Ljavax/swing/text/InternationalFormatter;
            0   15     1     value  Ljava/lang/Object;
            0   15     2  wantsCCE  Z
            1   15     3       min  Ljava/lang/Comparable<Ljava/lang/Object;>;
            4    7     4       cce  Ljava/lang/ClassCastException;
            8   15     4       max  Ljava/lang/Comparable<Ljava/lang/Object;>;
           11   14     5       cce  Ljava/lang/ClassCastException;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.ClassCastException
           8     9      10  Class java.lang.ClassCastException
    MethodParameters:
          Name  Flags
      value     
      wantsCCE  

  java.util.Map<java.text.AttributedCharacterIterator$Attribute, java.lang.Object> getAttributes(int);
    descriptor: (I)Ljava/util/Map;
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // int index
         0: .line 447
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.isValidMask:()Z
            ifeq 5
         1: .line 448
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getIterator:()Ljava/text/AttributedCharacterIterator;
            astore 2 /* iterator */
        start local 2 // java.text.AttributedCharacterIterator iterator
         2: .line 450
            iload 1 /* index */
            iflt 5
            iload 1 /* index */
            aload 2 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.getEndIndex:()I
            if_icmpgt 5
         3: .line 451
            aload 2 /* iterator */
            iload 1 /* index */
            invokeinterface java.text.AttributedCharacterIterator.setIndex:(I)C
            pop
         4: .line 452
            aload 2 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.getAttributes:()Ljava/util/Map;
            areturn
        end local 2 // java.text.AttributedCharacterIterator iterator
         5: .line 455
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // int index
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Ljavax/swing/text/InternationalFormatter;
            0    6     1     index  I
            2    5     2  iterator  Ljava/text/AttributedCharacterIterator;
    Signature: (I)Ljava/util/Map<Ljava/text/AttributedCharacterIterator$Attribute;Ljava/lang/Object;>;
    MethodParameters:
       Name  Flags
      index  

  int getAttributeStart(java.text.AttributedCharacterIterator$Attribute);
    descriptor: (Ljava/text/AttributedCharacterIterator$Attribute;)I
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.text.AttributedCharacterIterator$Attribute id
         0: .line 465
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.isValidMask:()Z
            ifeq 8
         1: .line 466
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getIterator:()Ljava/text/AttributedCharacterIterator;
            astore 2 /* iterator */
        start local 2 // java.text.AttributedCharacterIterator iterator
         2: .line 468
            aload 2 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.first:()C
            pop
         3: .line 469
            goto 7
         4: .line 470
      StackMap locals: java.text.AttributedCharacterIterator
      StackMap stack:
            aload 2 /* iterator */
            aload 1 /* id */
            invokeinterface java.text.AttributedCharacterIterator.getAttribute:(Ljava/text/AttributedCharacterIterator$Attribute;)Ljava/lang/Object;
            ifnull 6
         5: .line 471
            aload 2 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.getIndex:()I
            ireturn
         6: .line 473
      StackMap locals:
      StackMap stack:
            aload 2 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.next:()C
            pop
         7: .line 469
      StackMap locals:
      StackMap stack:
            aload 2 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.current:()C
            ldc 65535
            if_icmpne 4
        end local 2 // java.text.AttributedCharacterIterator iterator
         8: .line 476
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 1 // java.text.AttributedCharacterIterator$Attribute id
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Ljavax/swing/text/InternationalFormatter;
            0    9     1        id  Ljava/text/AttributedCharacterIterator$Attribute;
            2    8     2  iterator  Ljava/text/AttributedCharacterIterator;
    MethodParameters:
      Name  Flags
      id    

  java.text.AttributedCharacterIterator getIterator();
    descriptor: ()Ljava/text/AttributedCharacterIterator;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.text.InternationalFormatter this
         0: .line 484
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.iterator:Ljava/text/AttributedCharacterIterator;
            areturn
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/text/InternationalFormatter;

  void updateMaskIfNecessary();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // javax.swing.text.InternationalFormatter this
         0: .line 491
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getAllowsInvalid:()Z
            ifne 7
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getFormat:()Ljava/text/Format;
            ifnull 7
         1: .line 492
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.isValidMask:()Z
            ifne 4
         2: .line 493
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.updateMask:()V
         3: .line 494
            goto 7
         4: .line 496
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getFormattedTextField:()Ljavax/swing/JFormattedTextField;
            invokevirtual javax.swing.JFormattedTextField.getText:()Ljava/lang/String;
            astore 1 /* newString */
        start local 1 // java.lang.String newString
         5: .line 498
            aload 1 /* newString */
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.string:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 7
         6: .line 499
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.updateMask:()V
        end local 1 // java.lang.String newString
         7: .line 503
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Ljavax/swing/text/InternationalFormatter;
            5    7     1  newString  Ljava/lang/String;

  void updateMask();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // javax.swing.text.InternationalFormatter this
         0: .line 513
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getFormat:()Ljava/text/Format;
            ifnull 18
         1: .line 514
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getFormattedTextField:()Ljavax/swing/JFormattedTextField;
            invokevirtual javax.swing.JFormattedTextField.getDocument:()Ljavax/swing/text/Document;
            astore 1 /* doc */
        start local 1 // javax.swing.text.Document doc
         2: .line 516
            aload 0 /* this */
            iconst_0
            putfield javax.swing.text.InternationalFormatter.validMask:Z
         3: .line 517
            aload 1 /* doc */
            ifnull 18
         4: .line 519
            aload 0 /* this */
            aload 1 /* doc */
            iconst_0
            aload 1 /* doc */
            invokeinterface javax.swing.text.Document.getLength:()I
            invokeinterface javax.swing.text.Document.getText:(II)Ljava/lang/String;
            putfield javax.swing.text.InternationalFormatter.string:Ljava/lang/String;
         5: .line 520
            goto 8
      StackMap locals: javax.swing.text.InternationalFormatter javax.swing.text.Document
      StackMap stack: javax.swing.text.BadLocationException
         6: pop
         7: .line 521
            aload 0 /* this */
            aconst_null
            putfield javax.swing.text.InternationalFormatter.string:Ljava/lang/String;
         8: .line 523
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.string:Ljava/lang/String;
            ifnull 18
         9: .line 525
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.string:Ljava/lang/String;
            invokevirtual javax.swing.text.InternationalFormatter.stringToValue:(Ljava/lang/String;)Ljava/lang/Object;
            astore 2 /* value */
        start local 2 // java.lang.Object value
        10: .line 526
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getFormat:()Ljava/text/Format;
        11: .line 527
            aload 2 /* value */
            invokevirtual java.text.Format.formatToCharacterIterator:(Ljava/lang/Object;)Ljava/text/AttributedCharacterIterator;
        12: .line 526
            astore 3 /* iterator */
        start local 3 // java.text.AttributedCharacterIterator iterator
        13: .line 529
            aload 0 /* this */
            aload 3 /* iterator */
            invokevirtual javax.swing.text.InternationalFormatter.updateMask:(Ljava/text/AttributedCharacterIterator;)V
        end local 3 // java.text.AttributedCharacterIterator iterator
        end local 2 // java.lang.Object value
        14: .line 530
            goto 18
        15: .line 531
      StackMap locals:
      StackMap stack: java.text.ParseException
            pop
            goto 18
        16: .line 532
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
            pop
            goto 18
        17: .line 533
      StackMap locals:
      StackMap stack: java.lang.NullPointerException
            pop
        end local 1 // javax.swing.text.Document doc
        18: .line 537
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   19     0      this  Ljavax/swing/text/InternationalFormatter;
            2   18     1       doc  Ljavax/swing/text/Document;
           10   14     2     value  Ljava/lang/Object;
           13   14     3  iterator  Ljava/text/AttributedCharacterIterator;
      Exception table:
        from    to  target  type
           4     5       6  Class javax.swing.text.BadLocationException
           9    14      15  Class java.text.ParseException
           9    14      16  Class java.lang.IllegalArgumentException
           9    14      17  Class java.lang.NullPointerException

  int getLiteralCountTo(int);
    descriptor: (I)I
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // int index
         0: .line 543
            iconst_0
            istore 2 /* lCount */
        start local 2 // int lCount
         1: .line 545
            iconst_0
            istore 3 /* counter */
        start local 3 // int counter
         2: goto 6
         3: .line 546
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            iload 3 /* counter */
            invokevirtual javax.swing.text.InternationalFormatter.isLiteral:(I)Z
            ifeq 5
         4: .line 547
            iinc 2 /* lCount */ 1
         5: .line 545
      StackMap locals:
      StackMap stack:
            iinc 3 /* counter */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* counter */
            iload 1 /* index */
            if_icmplt 3
        end local 3 // int counter
         7: .line 550
            iload 2 /* lCount */
            ireturn
        end local 2 // int lCount
        end local 1 // int index
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Ljavax/swing/text/InternationalFormatter;
            0    8     1    index  I
            1    8     2   lCount  I
            2    7     3  counter  I
    MethodParameters:
       Name  Flags
      index  

  boolean isLiteral(int);
    descriptor: (I)Z
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // int index
         0: .line 558
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.isValidMask:()Z
            ifeq 2
            iload 1 /* index */
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.string:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            if_icmpge 2
         1: .line 559
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.literalMask:Ljava/util/BitSet;
            iload 1 /* index */
            invokevirtual java.util.BitSet.get:(I)Z
            ireturn
         2: .line 561
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // int index
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljavax/swing/text/InternationalFormatter;
            0    3     1  index  I
    MethodParameters:
       Name  Flags
      index  

  char getLiteral(int);
    descriptor: (I)C
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // int index
         0: .line 568
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.isValidMask:()Z
            ifeq 2
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.string:Ljava/lang/String;
            ifnull 2
            iload 1 /* index */
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.string:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            if_icmpge 2
         1: .line 569
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.string:Ljava/lang/String;
            iload 1 /* index */
            invokevirtual java.lang.String.charAt:(I)C
            ireturn
         2: .line 571
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // int index
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljavax/swing/text/InternationalFormatter;
            0    3     1  index  I
    MethodParameters:
       Name  Flags
      index  

  boolean isNavigatable(int);
    descriptor: (I)Z
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // int offset
         0: .line 580
            aload 0 /* this */
            iload 1 /* offset */
            invokevirtual javax.swing.text.InternationalFormatter.isLiteral:(I)Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // int offset
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljavax/swing/text/InternationalFormatter;
            0    3     1  offset  I
    MethodParameters:
        Name  Flags
      offset  

  void updateValue(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.lang.Object value
         0: .line 587
            aload 0 /* this */
            aload 1 /* value */
            invokespecial javax.swing.text.DefaultFormatter.updateValue:(Ljava/lang/Object;)V
         1: .line 588
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.updateMaskIfNecessary:()V
         2: .line 589
            return
        end local 1 // java.lang.Object value
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljavax/swing/text/InternationalFormatter;
            0    3     1  value  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      value  

  void replace(javax.swing.text.DocumentFilter$FilterBypass, int, int, java.lang.String, javax.swing.text.AttributeSet);
    descriptor: (Ljavax/swing/text/DocumentFilter$FilterBypass;IILjava/lang/String;Ljavax/swing/text/AttributeSet;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=6, args_size=6
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // javax.swing.text.DocumentFilter$FilterBypass fb
        start local 2 // int offset
        start local 3 // int length
        start local 4 // java.lang.String text
        start local 5 // javax.swing.text.AttributeSet attrs
         0: .line 598
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.ignoreDocumentMutate:Z
            ifeq 3
         1: .line 599
            aload 1 /* fb */
            iload 2 /* offset */
            iload 3 /* length */
            aload 4 /* text */
            aload 5 /* attrs */
            invokevirtual javax.swing.text.DocumentFilter$FilterBypass.replace:(IILjava/lang/String;Ljavax/swing/text/AttributeSet;)V
         2: .line 600
            return
         3: .line 602
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* fb */
            iload 2 /* offset */
            iload 3 /* length */
            aload 4 /* text */
            aload 5 /* attrs */
            invokespecial javax.swing.text.DefaultFormatter.replace:(Ljavax/swing/text/DocumentFilter$FilterBypass;IILjava/lang/String;Ljavax/swing/text/AttributeSet;)V
         4: .line 603
            return
        end local 5 // javax.swing.text.AttributeSet attrs
        end local 4 // java.lang.String text
        end local 3 // int length
        end local 2 // int offset
        end local 1 // javax.swing.text.DocumentFilter$FilterBypass fb
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Ljavax/swing/text/InternationalFormatter;
            0    5     1      fb  Ljavax/swing/text/DocumentFilter$FilterBypass;
            0    5     2  offset  I
            0    5     3  length  I
            0    5     4    text  Ljava/lang/String;
            0    5     5   attrs  Ljavax/swing/text/AttributeSet;
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
        Name  Flags
      fb      
      offset  
      length  
      text    
      attrs   

  private int getNextNonliteralIndex(int, int);
    descriptor: (II)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // int index
        start local 2 // int direction
         0: .line 612
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getFormattedTextField:()Ljavax/swing/JFormattedTextField;
            invokevirtual javax.swing.JFormattedTextField.getDocument:()Ljavax/swing/text/Document;
            invokeinterface javax.swing.text.Document.getLength:()I
            istore 3 /* max */
        start local 3 // int max
         1: .line 614
            goto 6
         2: .line 615
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* index */
            invokevirtual javax.swing.text.InternationalFormatter.isLiteral:(I)Z
            ifeq 5
         3: .line 616
            iload 1 /* index */
            iload 2 /* direction */
            iadd
            istore 1 /* index */
         4: .line 617
            goto 6
         5: .line 619
      StackMap locals:
      StackMap stack:
            iload 1 /* index */
            ireturn
         6: .line 614
      StackMap locals:
      StackMap stack:
            iload 1 /* index */
            iflt 7
            iload 1 /* index */
            iload 3 /* max */
            if_icmplt 2
         7: .line 622
      StackMap locals:
      StackMap stack:
            iload 2 /* direction */
            iconst_m1
            if_icmpne 8
            iconst_0
            goto 9
      StackMap locals:
      StackMap stack:
         8: iload 3 /* max */
      StackMap locals:
      StackMap stack: int
         9: ireturn
        end local 3 // int max
        end local 2 // int direction
        end local 1 // int index
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Ljavax/swing/text/InternationalFormatter;
            0   10     1      index  I
            0   10     2  direction  I
            1   10     3        max  I
    MethodParameters:
           Name  Flags
      index      
      direction  

  boolean canReplace(javax.swing.text.DefaultFormatter$ReplaceHolder);
    descriptor: (Ljavax/swing/text/DefaultFormatter$ReplaceHolder;)Z
    flags: (0x0000) 
    Code:
      stack=4, locals=9, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // javax.swing.text.DefaultFormatter$ReplaceHolder rh
         0: .line 635
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getAllowsInvalid:()Z
            ifne 37
         1: .line 636
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.text:Ljava/lang/String;
            astore 2 /* text */
        start local 2 // java.lang.String text
         2: .line 637
            aload 2 /* text */
            ifnull 3
            aload 2 /* text */
            invokevirtual java.lang.String.length:()I
            goto 4
      StackMap locals: java.lang.String
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 3 /* tl */
        start local 3 // int tl
         5: .line 638
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getFormattedTextField:()Ljavax/swing/JFormattedTextField;
            astore 4 /* c */
        start local 4 // javax.swing.text.JTextComponent c
         6: .line 640
            iload 3 /* tl */
            ifne 9
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.length:I
            iconst_1
            if_icmpne 9
            aload 4 /* c */
            invokevirtual javax.swing.text.JTextComponent.getSelectionStart:()I
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.offset:I
            if_icmpeq 9
         7: .line 642
            aload 1 /* rh */
            aload 0 /* this */
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.offset:I
            iconst_m1
            invokevirtual javax.swing.text.InternationalFormatter.getNextNonliteralIndex:(II)I
            putfield javax.swing.text.DefaultFormatter$ReplaceHolder.offset:I
         8: .line 643
            goto 31
      StackMap locals: int javax.swing.text.JTextComponent
      StackMap stack:
         9: aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getOverwriteMode:()Z
            ifeq 27
        10: .line 644
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.offset:I
            istore 5 /* pos */
        start local 5 // int pos
        11: .line 645
            iload 5 /* pos */
            istore 6 /* textPos */
        start local 6 // int textPos
        12: .line 646
            iconst_0
            istore 7 /* overflown */
        start local 7 // boolean overflown
        13: .line 648
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        14: goto 23
        15: .line 649
      StackMap locals: javax.swing.text.InternationalFormatter javax.swing.text.DefaultFormatter$ReplaceHolder java.lang.String int javax.swing.text.JTextComponent int int int int
      StackMap stack:
            iinc 5 /* pos */ 1
      StackMap locals:
      StackMap stack:
        16: aload 0 /* this */
            iload 5 /* pos */
            invokevirtual javax.swing.text.InternationalFormatter.isLiteral:(I)Z
            ifne 15
        17: .line 650
            iload 5 /* pos */
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.string:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            if_icmplt 21
        18: .line 651
            iload 6 /* textPos */
            istore 5 /* pos */
        19: .line 652
            iconst_1
            istore 7 /* overflown */
        20: .line 653
            goto 24
        21: .line 655
      StackMap locals:
      StackMap stack:
            iinc 5 /* pos */ 1
            iload 5 /* pos */
            istore 6 /* textPos */
        22: .line 648
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 8 /* i */
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.length:I
            if_icmplt 16
        end local 8 // int i
        24: .line 657
      StackMap locals:
      StackMap stack:
            iload 7 /* overflown */
            ifne 25
            aload 4 /* c */
            invokevirtual javax.swing.text.JTextComponent.getSelectedText:()Ljava/lang/String;
            ifnonnull 31
        25: .line 658
      StackMap locals:
      StackMap stack:
            aload 1 /* rh */
            iload 5 /* pos */
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.offset:I
            isub
            putfield javax.swing.text.DefaultFormatter$ReplaceHolder.length:I
        end local 7 // boolean overflown
        end local 6 // int textPos
        end local 5 // int pos
        26: .line 660
            goto 31
        27: .line 661
      StackMap locals:
      StackMap stack:
            iload 3 /* tl */
            ifle 30
        28: .line 663
            aload 1 /* rh */
            aload 0 /* this */
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.offset:I
            iconst_1
            invokevirtual javax.swing.text.InternationalFormatter.getNextNonliteralIndex:(II)I
            putfield javax.swing.text.DefaultFormatter$ReplaceHolder.offset:I
        29: .line 664
            goto 31
        30: .line 667
      StackMap locals:
      StackMap stack:
            aload 1 /* rh */
            aload 0 /* this */
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.offset:I
            iconst_m1
            invokevirtual javax.swing.text.InternationalFormatter.getNextNonliteralIndex:(II)I
            putfield javax.swing.text.DefaultFormatter$ReplaceHolder.offset:I
        31: .line 669
      StackMap locals:
      StackMap stack:
            aload 1 /* rh */
            checkcast javax.swing.text.InternationalFormatter$ExtendedReplaceHolder
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.offset:I
            putfield javax.swing.text.InternationalFormatter$ExtendedReplaceHolder.endOffset:I
        32: .line 670
            aload 1 /* rh */
            checkcast javax.swing.text.InternationalFormatter$ExtendedReplaceHolder
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.text:Ljava/lang/String;
            ifnull 34
        33: .line 671
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.text:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            goto 35
      StackMap locals:
      StackMap stack: javax.swing.text.InternationalFormatter$ExtendedReplaceHolder
        34: iconst_0
        35: .line 670
      StackMap locals: javax.swing.text.InternationalFormatter javax.swing.text.DefaultFormatter$ReplaceHolder java.lang.String int javax.swing.text.JTextComponent
      StackMap stack: javax.swing.text.InternationalFormatter$ExtendedReplaceHolder int
            putfield javax.swing.text.InternationalFormatter$ExtendedReplaceHolder.endTextLength:I
        end local 4 // javax.swing.text.JTextComponent c
        end local 3 // int tl
        end local 2 // java.lang.String text
        36: .line 672
            goto 42
        37: .line 674
      StackMap locals:
      StackMap stack:
            aload 1 /* rh */
            checkcast javax.swing.text.InternationalFormatter$ExtendedReplaceHolder
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.offset:I
            putfield javax.swing.text.InternationalFormatter$ExtendedReplaceHolder.endOffset:I
        38: .line 675
            aload 1 /* rh */
            checkcast javax.swing.text.InternationalFormatter$ExtendedReplaceHolder
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.text:Ljava/lang/String;
            ifnull 40
        39: .line 676
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.text:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            goto 41
      StackMap locals:
      StackMap stack: javax.swing.text.InternationalFormatter$ExtendedReplaceHolder
        40: iconst_0
        41: .line 675
      StackMap locals: javax.swing.text.InternationalFormatter javax.swing.text.DefaultFormatter$ReplaceHolder
      StackMap stack: javax.swing.text.InternationalFormatter$ExtendedReplaceHolder int
            putfield javax.swing.text.InternationalFormatter$ExtendedReplaceHolder.endTextLength:I
        42: .line 678
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* rh */
            invokespecial javax.swing.text.DefaultFormatter.canReplace:(Ljavax/swing/text/DefaultFormatter$ReplaceHolder;)Z
            istore 2 /* can */
        start local 2 // boolean can
        43: .line 679
            iload 2 /* can */
            ifeq 45
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getAllowsInvalid:()Z
            ifne 45
        44: .line 680
            aload 1 /* rh */
            checkcast javax.swing.text.InternationalFormatter$ExtendedReplaceHolder
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter$ExtendedReplaceHolder.resetFromValue:(Ljavax/swing/text/InternationalFormatter;)V
        45: .line 682
      StackMap locals: int
      StackMap stack:
            iload 2 /* can */
            ireturn
        end local 2 // boolean can
        end local 1 // javax.swing.text.DefaultFormatter$ReplaceHolder rh
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   46     0       this  Ljavax/swing/text/InternationalFormatter;
            0   46     1         rh  Ljavax/swing/text/DefaultFormatter$ReplaceHolder;
            2   36     2       text  Ljava/lang/String;
            5   36     3         tl  I
            6   36     4          c  Ljavax/swing/text/JTextComponent;
           11   26     5        pos  I
           12   26     6    textPos  I
           13   26     7  overflown  Z
           14   24     8          i  I
           43   46     2        can  Z
    MethodParameters:
      Name  Flags
      rh    

  boolean replace(javax.swing.text.DefaultFormatter$ReplaceHolder);
    descriptor: (Ljavax/swing/text/DefaultFormatter$ReplaceHolder;)Z
    flags: (0x0000) 
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // javax.swing.text.DefaultFormatter$ReplaceHolder rh
         0: .line 692
            iconst_m1
            istore 2 /* start */
        start local 2 // int start
         1: .line 693
            iconst_1
            istore 3 /* direction */
        start local 3 // int direction
         2: .line 694
            iconst_m1
            istore 4 /* literalCount */
        start local 4 // int literalCount
         3: .line 696
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.length:I
            ifle 7
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.text:Ljava/lang/String;
            ifnull 4
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.text:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            ifne 7
         4: .line 697
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getFormattedTextField:()Ljavax/swing/JFormattedTextField;
            invokevirtual javax.swing.JFormattedTextField.getSelectionStart:()I
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.offset:I
            if_icmpne 6
         5: .line 698
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.length:I
            iconst_1
            if_icmple 7
         6: .line 699
      StackMap locals:
      StackMap stack:
            iconst_m1
            istore 3 /* direction */
         7: .line 701
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getAllowsInvalid:()Z
            ifne 14
         8: .line 702
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.text:Ljava/lang/String;
            ifnull 9
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.text:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            ifne 12
      StackMap locals:
      StackMap stack:
         9: aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.length:I
            ifle 12
        10: .line 704
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getFormattedTextField:()Ljavax/swing/JFormattedTextField;
            invokevirtual javax.swing.JFormattedTextField.getSelectionStart:()I
            istore 2 /* start */
        11: .line 705
            goto 13
        12: .line 707
      StackMap locals:
      StackMap stack:
            aload 1 /* rh */
            getfield javax.swing.text.DefaultFormatter$ReplaceHolder.offset:I
            istore 2 /* start */
        13: .line 709
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* start */
            invokevirtual javax.swing.text.InternationalFormatter.getLiteralCountTo:(I)I
            istore 4 /* literalCount */
        14: .line 711
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* rh */
            invokespecial javax.swing.text.DefaultFormatter.replace:(Ljavax/swing/text/DefaultFormatter$ReplaceHolder;)Z
            ifeq 25
        15: .line 712
            iload 2 /* start */
            iconst_m1
            if_icmpeq 20
        16: .line 713
            aload 1 /* rh */
            checkcast javax.swing.text.InternationalFormatter$ExtendedReplaceHolder
            getfield javax.swing.text.InternationalFormatter$ExtendedReplaceHolder.endOffset:I
            istore 5 /* end */
        start local 5 // int end
        17: .line 715
            iload 5 /* end */
            aload 1 /* rh */
            checkcast javax.swing.text.InternationalFormatter$ExtendedReplaceHolder
            getfield javax.swing.text.InternationalFormatter$ExtendedReplaceHolder.endTextLength:I
            iadd
            istore 5 /* end */
        18: .line 716
            aload 0 /* this */
            iload 4 /* literalCount */
            iload 5 /* end */
            iload 3 /* direction */
            invokevirtual javax.swing.text.InternationalFormatter.repositionCursor:(III)V
        end local 5 // int end
        19: .line 717
            goto 24
        20: .line 719
      StackMap locals:
      StackMap stack:
            aload 1 /* rh */
            checkcast javax.swing.text.InternationalFormatter$ExtendedReplaceHolder
            getfield javax.swing.text.InternationalFormatter$ExtendedReplaceHolder.endOffset:I
            istore 2 /* start */
        21: .line 720
            iload 3 /* direction */
            iconst_1
            if_icmpne 23
        22: .line 721
            iload 2 /* start */
            aload 1 /* rh */
            checkcast javax.swing.text.InternationalFormatter$ExtendedReplaceHolder
            getfield javax.swing.text.InternationalFormatter$ExtendedReplaceHolder.endTextLength:I
            iadd
            istore 2 /* start */
        23: .line 723
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* start */
            iload 3 /* direction */
            invokevirtual javax.swing.text.InternationalFormatter.repositionCursor:(II)V
        24: .line 725
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        25: .line 727
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // int literalCount
        end local 3 // int direction
        end local 2 // int start
        end local 1 // javax.swing.text.DefaultFormatter$ReplaceHolder rh
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   26     0          this  Ljavax/swing/text/InternationalFormatter;
            0   26     1            rh  Ljavax/swing/text/DefaultFormatter$ReplaceHolder;
            1   26     2         start  I
            2   26     3     direction  I
            3   26     4  literalCount  I
           17   19     5           end  I
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
      Name  Flags
      rh    

  private void repositionCursor(int, int, int);
    descriptor: (III)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // int startLiteralCount
        start local 2 // int end
        start local 3 // int direction
         0: .line 739
            aload 0 /* this */
            iload 2 /* end */
            invokevirtual javax.swing.text.InternationalFormatter.getLiteralCountTo:(I)I
            istore 4 /* endLiteralCount */
        start local 4 // int endLiteralCount
         1: .line 741
            iload 4 /* endLiteralCount */
            iload 2 /* end */
            if_icmpeq 9
         2: .line 742
            iload 2 /* end */
            iload 1 /* startLiteralCount */
            isub
            istore 2 /* end */
         3: .line 743
            iconst_0
            istore 5 /* counter */
        start local 5 // int counter
         4: goto 8
         5: .line 744
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            iload 5 /* counter */
            invokevirtual javax.swing.text.InternationalFormatter.isLiteral:(I)Z
            ifeq 7
         6: .line 745
            iinc 2 /* end */ 1
         7: .line 743
      StackMap locals:
      StackMap stack:
            iinc 5 /* counter */ 1
      StackMap locals:
      StackMap stack:
         8: iload 5 /* counter */
            iload 2 /* end */
            if_icmplt 5
        end local 5 // int counter
         9: .line 749
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* end */
            iconst_1
            invokevirtual javax.swing.text.InternationalFormatter.repositionCursor:(II)V
        10: .line 750
            return
        end local 4 // int endLiteralCount
        end local 3 // int direction
        end local 2 // int end
        end local 1 // int startLiteralCount
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   11     0               this  Ljavax/swing/text/InternationalFormatter;
            0   11     1  startLiteralCount  I
            0   11     2                end  I
            0   11     3          direction  I
            1   11     4    endLiteralCount  I
            4    9     5            counter  I
    MethodParameters:
                   Name  Flags
      startLiteralCount  
      end                
      direction          

  char getBufferedChar(int);
    descriptor: (I)C
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // int index
         0: .line 757
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.isValidMask:()Z
            ifeq 3
         1: .line 758
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.string:Ljava/lang/String;
            ifnull 3
            iload 1 /* index */
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.string:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            if_icmpge 3
         2: .line 759
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.string:Ljava/lang/String;
            iload 1 /* index */
            invokevirtual java.lang.String.charAt:(I)C
            ireturn
         3: .line 762
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // int index
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Ljavax/swing/text/InternationalFormatter;
            0    4     1  index  I
    MethodParameters:
       Name  Flags
      index  

  boolean isValidMask();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.text.InternationalFormatter this
         0: .line 769
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.validMask:Z
            ireturn
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/text/InternationalFormatter;

  boolean isLiteral(java.util.Map<?, ?>);
    descriptor: (Ljava/util/Map;)Z
    flags: (0x0000) 
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.util.Map attributes
         0: .line 776
            aload 1 /* attributes */
            ifnull 1
            aload 1 /* attributes */
            invokeinterface java.util.Map.size:()I
            ifeq 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 1 // java.util.Map attributes
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Ljavax/swing/text/InternationalFormatter;
            0    2     1  attributes  Ljava/util/Map<**>;
    Signature: (Ljava/util/Map<**>;)Z
    MethodParameters:
            Name  Flags
      attributes  

  private void updateMask(java.text.AttributedCharacterIterator);
    descriptor: (Ljava/text/AttributedCharacterIterator;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.text.AttributedCharacterIterator iterator
         0: .line 785
            aload 1 /* iterator */
            ifnull 26
         1: .line 786
            aload 0 /* this */
            iconst_1
            putfield javax.swing.text.InternationalFormatter.validMask:Z
         2: .line 787
            aload 0 /* this */
            aload 1 /* iterator */
            putfield javax.swing.text.InternationalFormatter.iterator:Ljava/text/AttributedCharacterIterator;
         3: .line 790
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.literalMask:Ljava/util/BitSet;
            ifnonnull 6
         4: .line 791
            aload 0 /* this */
            new java.util.BitSet
            dup
            invokespecial java.util.BitSet.<init>:()V
            putfield javax.swing.text.InternationalFormatter.literalMask:Ljava/util/BitSet;
         5: .line 792
            goto 11
         6: .line 794
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.literalMask:Ljava/util/BitSet;
            invokevirtual java.util.BitSet.length:()I
            iconst_1
            isub
            istore 2 /* counter */
        start local 2 // int counter
         7: goto 10
         8: .line 796
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.literalMask:Ljava/util/BitSet;
            iload 2 /* counter */
            invokevirtual java.util.BitSet.clear:(I)V
         9: .line 795
            iinc 2 /* counter */ -1
        10: .line 794
      StackMap locals:
      StackMap stack:
            iload 2 /* counter */
            ifge 8
        end local 2 // int counter
        11: .line 800
      StackMap locals:
      StackMap stack:
            aload 1 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.first:()C
            pop
        12: .line 801
            goto 25
        13: .line 802
      StackMap locals:
      StackMap stack:
            aload 1 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.getAttributes:()Ljava/util/Map;
            astore 2 /* attributes */
        start local 2 // java.util.Map attributes
        14: .line 803
            aload 0 /* this */
            aload 2 /* attributes */
            invokevirtual javax.swing.text.InternationalFormatter.isLiteral:(Ljava/util/Map;)Z
            istore 3 /* set */
        start local 3 // boolean set
        15: .line 804
            aload 1 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.getIndex:()I
            istore 4 /* start */
        start local 4 // int start
        16: .line 805
            aload 1 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.getRunLimit:()I
            istore 5 /* end */
        start local 5 // int end
        17: .line 807
            goto 23
        18: .line 808
      StackMap locals: javax.swing.text.InternationalFormatter java.text.AttributedCharacterIterator java.util.Map int int int
      StackMap stack:
            iload 3 /* set */
            ifeq 21
        19: .line 809
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.literalMask:Ljava/util/BitSet;
            iload 4 /* start */
            invokevirtual java.util.BitSet.set:(I)V
        20: .line 810
            goto 22
        21: .line 812
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.literalMask:Ljava/util/BitSet;
            iload 4 /* start */
            invokevirtual java.util.BitSet.clear:(I)V
        22: .line 814
      StackMap locals:
      StackMap stack:
            iinc 4 /* start */ 1
        23: .line 807
      StackMap locals:
      StackMap stack:
            iload 4 /* start */
            iload 5 /* end */
            if_icmplt 18
        24: .line 816
            aload 1 /* iterator */
            iload 4 /* start */
            invokeinterface java.text.AttributedCharacterIterator.setIndex:(I)C
            pop
        end local 5 // int end
        end local 4 // int start
        end local 3 // boolean set
        end local 2 // java.util.Map attributes
        25: .line 801
      StackMap locals: javax.swing.text.InternationalFormatter java.text.AttributedCharacterIterator
      StackMap stack:
            aload 1 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.current:()C
            ldc 65535
            if_icmpne 13
        26: .line 819
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.text.AttributedCharacterIterator iterator
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   27     0        this  Ljavax/swing/text/InternationalFormatter;
            0   27     1    iterator  Ljava/text/AttributedCharacterIterator;
            7   11     2     counter  I
           14   25     2  attributes  Ljava/util/Map<Ljava/text/AttributedCharacterIterator$Attribute;Ljava/lang/Object;>;
           15   25     3         set  Z
           16   25     4       start  I
           17   25     5         end  I
    MethodParameters:
          Name  Flags
      iterator  

  boolean canIncrement(java.lang.Object, int);
    descriptor: (Ljava/lang/Object;I)Z
    flags: (0x0000) 
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.lang.Object field
        start local 2 // int cursorPosition
         0: .line 827
            aload 1 /* field */
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // int cursorPosition
        end local 1 // java.lang.Object field
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Ljavax/swing/text/InternationalFormatter;
            0    2     1           field  Ljava/lang/Object;
            0    2     2  cursorPosition  I
    MethodParameters:
                Name  Flags
      field           
      cursorPosition  

  void selectField(java.lang.Object, int);
    descriptor: (Ljava/lang/Object;I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.lang.Object f
        start local 2 // int count
         0: .line 834
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getIterator:()Ljava/text/AttributedCharacterIterator;
            astore 3 /* iterator */
        start local 3 // java.text.AttributedCharacterIterator iterator
         1: .line 836
            aload 3 /* iterator */
            ifnull 19
         2: .line 837
            aload 1 /* f */
            instanceof java.text.AttributedCharacterIterator$Attribute
            ifeq 19
         3: .line 839
            aload 1 /* f */
            checkcast java.text.AttributedCharacterIterator$Attribute
         4: .line 838
            astore 4 /* field */
        start local 4 // java.text.AttributedCharacterIterator$Attribute field
         5: .line 841
            aload 3 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.first:()C
            pop
         6: .line 842
            goto 18
         7: .line 843
      StackMap locals: java.text.AttributedCharacterIterator java.text.AttributedCharacterIterator$Attribute
      StackMap stack:
            aload 3 /* iterator */
            aload 4 /* field */
            invokeinterface java.text.AttributedCharacterIterator.getAttribute:(Ljava/text/AttributedCharacterIterator$Attribute;)Ljava/lang/Object;
            ifnonnull 9
         8: .line 844
            aload 3 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.next:()C
            ldc 65535
            if_icmpne 7
         9: .line 845
      StackMap locals:
      StackMap stack:
            aload 3 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.current:()C
            ldc 65535
            if_icmpeq 18
        10: .line 846
            aload 3 /* iterator */
            aload 4 /* field */
            invokeinterface java.text.AttributedCharacterIterator.getRunLimit:(Ljava/text/AttributedCharacterIterator$Attribute;)I
            istore 5 /* limit */
        start local 5 // int limit
        11: .line 848
            iinc 2 /* count */ -1
            iload 2 /* count */
            ifgt 16
        12: .line 849
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getFormattedTextField:()Ljavax/swing/JFormattedTextField;
            aload 3 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.getIndex:()I
        13: .line 850
            iload 5 /* limit */
        14: .line 849
            invokevirtual javax.swing.JFormattedTextField.select:(II)V
        15: .line 851
            goto 19
        16: .line 853
      StackMap locals: int
      StackMap stack:
            aload 3 /* iterator */
            iload 5 /* limit */
            invokeinterface java.text.AttributedCharacterIterator.setIndex:(I)C
            pop
        17: .line 854
            aload 3 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.next:()C
            pop
        end local 5 // int limit
        18: .line 842
      StackMap locals:
      StackMap stack:
            aload 3 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.current:()C
            ldc 65535
            if_icmpne 7
        end local 4 // java.text.AttributedCharacterIterator$Attribute field
        19: .line 858
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.text.AttributedCharacterIterator iterator
        end local 2 // int count
        end local 1 // java.lang.Object f
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   20     0      this  Ljavax/swing/text/InternationalFormatter;
            0   20     1         f  Ljava/lang/Object;
            0   20     2     count  I
            1   20     3  iterator  Ljava/text/AttributedCharacterIterator;
            5   19     4     field  Ljava/text/AttributedCharacterIterator$Attribute;
           11   18     5     limit  I
    MethodParameters:
       Name  Flags
      f      
      count  

   getAdjustField(int, java.util.Map<?, ?>);
    descriptor: (ILjava/util/Map;)Ljava/lang/Object;
    flags: (0x0000) 
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // int start
        start local 2 // java.util.Map attributes
         0: .line 864
            aconst_null
            areturn
        end local 2 // java.util.Map attributes
        end local 1 // int start
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Ljavax/swing/text/InternationalFormatter;
            0    1     1       start  I
            0    1     2  attributes  Ljava/util/Map<**>;
    Signature: (ILjava/util/Map<**>;)Ljava/lang/Object;
    MethodParameters:
            Name  Flags
      start       
      attributes  

  private int getFieldTypeCountTo(java.lang.Object, int);
    descriptor: (Ljava/lang/Object;I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.lang.Object f
        start local 2 // int start
         0: .line 873
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getIterator:()Ljava/text/AttributedCharacterIterator;
            astore 3 /* iterator */
        start local 3 // java.text.AttributedCharacterIterator iterator
         1: .line 874
            iconst_0
            istore 4 /* count */
        start local 4 // int count
         2: .line 876
            aload 3 /* iterator */
            ifnull 15
         3: .line 877
            aload 1 /* f */
            instanceof java.text.AttributedCharacterIterator$Attribute
            ifeq 15
         4: .line 879
            aload 1 /* f */
            checkcast java.text.AttributedCharacterIterator$Attribute
         5: .line 878
            astore 5 /* field */
        start local 5 // java.text.AttributedCharacterIterator$Attribute field
         6: .line 881
            aload 3 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.first:()C
            pop
         7: .line 882
            goto 14
         8: .line 883
      StackMap locals: java.text.AttributedCharacterIterator int java.text.AttributedCharacterIterator$Attribute
      StackMap stack:
            aload 3 /* iterator */
            aload 5 /* field */
            invokeinterface java.text.AttributedCharacterIterator.getAttribute:(Ljava/text/AttributedCharacterIterator$Attribute;)Ljava/lang/Object;
            ifnonnull 10
         9: .line 884
            aload 3 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.next:()C
            ldc 65535
            if_icmpne 8
        10: .line 885
      StackMap locals:
      StackMap stack:
            aload 3 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.current:()C
            ldc 65535
            if_icmpeq 15
        11: .line 886
            aload 3 /* iterator */
            aload 3 /* iterator */
            aload 5 /* field */
            invokeinterface java.text.AttributedCharacterIterator.getRunLimit:(Ljava/text/AttributedCharacterIterator$Attribute;)I
            invokeinterface java.text.AttributedCharacterIterator.setIndex:(I)C
            pop
        12: .line 887
            aload 3 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.next:()C
            pop
        13: .line 888
            iinc 4 /* count */ 1
        14: .line 882
      StackMap locals:
      StackMap stack:
            aload 3 /* iterator */
            invokeinterface java.text.AttributedCharacterIterator.getIndex:()I
            iload 2 /* start */
            if_icmplt 8
        end local 5 // java.text.AttributedCharacterIterator$Attribute field
        15: .line 895
      StackMap locals:
      StackMap stack:
            iload 4 /* count */
            ireturn
        end local 4 // int count
        end local 3 // java.text.AttributedCharacterIterator iterator
        end local 2 // int start
        end local 1 // java.lang.Object f
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   16     0      this  Ljavax/swing/text/InternationalFormatter;
            0   16     1         f  Ljava/lang/Object;
            0   16     2     start  I
            1   16     3  iterator  Ljava/text/AttributedCharacterIterator;
            2   16     4     count  I
            6   15     5     field  Ljava/text/AttributedCharacterIterator$Attribute;
    MethodParameters:
       Name  Flags
      f      
      start  

   adjustValue(, java.util.Map<?, ?>, , int);
    descriptor: (Ljava/lang/Object;Ljava/util/Map;Ljava/lang/Object;I)Ljava/lang/Object;
    flags: (0x0000) 
    Code:
      stack=1, locals=5, args_size=5
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.lang.Object value
        start local 2 // java.util.Map attributes
        start local 3 // java.lang.Object field
        start local 4 // int direction
         0: .line 908
            aconst_null
            areturn
        end local 4 // int direction
        end local 3 // java.lang.Object field
        end local 2 // java.util.Map attributes
        end local 1 // java.lang.Object value
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Ljavax/swing/text/InternationalFormatter;
            0    1     1       value  Ljava/lang/Object;
            0    1     2  attributes  Ljava/util/Map<**>;
            0    1     3       field  Ljava/lang/Object;
            0    1     4   direction  I
    Exceptions:
      throws javax.swing.text.BadLocationException, java.text.ParseException
    Signature: (Ljava/lang/Object;Ljava/util/Map<**>;Ljava/lang/Object;I)Ljava/lang/Object;
    MethodParameters:
            Name  Flags
      value       
      attributes  
      field       
      direction   

  boolean getSupportsIncrement();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.text.InternationalFormatter this
         0: .line 919
            iconst_0
            ireturn
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/text/InternationalFormatter;

  void resetValue(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.lang.Object value
         0: .line 927
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.getFormattedTextField:()Ljavax/swing/JFormattedTextField;
            invokevirtual javax.swing.JFormattedTextField.getDocument:()Ljavax/swing/text/Document;
            astore 2 /* doc */
        start local 2 // javax.swing.text.Document doc
         1: .line 928
            aload 0 /* this */
            aload 1 /* value */
            invokevirtual javax.swing.text.InternationalFormatter.valueToString:(Ljava/lang/Object;)Ljava/lang/String;
            astore 3 /* string */
        start local 3 // java.lang.String string
         2: .line 931
            aload 0 /* this */
            iconst_1
            putfield javax.swing.text.InternationalFormatter.ignoreDocumentMutate:Z
         3: .line 932
            aload 2 /* doc */
            iconst_0
            aload 2 /* doc */
            invokeinterface javax.swing.text.Document.getLength:()I
            invokeinterface javax.swing.text.Document.remove:(II)V
         4: .line 933
            aload 2 /* doc */
            iconst_0
            aload 3 /* string */
            aconst_null
            invokeinterface javax.swing.text.Document.insertString:(ILjava/lang/String;Ljavax/swing/text/AttributeSet;)V
         5: .line 934
            goto 9
      StackMap locals: javax.swing.text.InternationalFormatter java.lang.Object javax.swing.text.Document java.lang.String
      StackMap stack: java.lang.Throwable
         6: astore 4
         7: .line 935
            aload 0 /* this */
            iconst_0
            putfield javax.swing.text.InternationalFormatter.ignoreDocumentMutate:Z
         8: .line 936
            aload 4
            athrow
         9: .line 935
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield javax.swing.text.InternationalFormatter.ignoreDocumentMutate:Z
        10: .line 937
            aload 0 /* this */
            aload 1 /* value */
            invokevirtual javax.swing.text.InternationalFormatter.updateValue:(Ljava/lang/Object;)V
        11: .line 938
            return
        end local 3 // java.lang.String string
        end local 2 // javax.swing.text.Document doc
        end local 1 // java.lang.Object value
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   12     0    this  Ljavax/swing/text/InternationalFormatter;
            0   12     1   value  Ljava/lang/Object;
            1   12     2     doc  Ljavax/swing/text/Document;
            2   12     3  string  Ljava/lang/String;
      Exception table:
        from    to  target  type
           2     6       6  any
    Exceptions:
      throws javax.swing.text.BadLocationException, java.text.ParseException
    MethodParameters:
       Name  Flags
      value  

  private void readObject(java.io.ObjectInputStream);
    descriptor: (Ljava/io/ObjectInputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // java.io.ObjectInputStream s
         0: .line 946
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
         1: .line 947
            aload 0 /* this */
            invokevirtual javax.swing.text.InternationalFormatter.updateMaskIfNecessary:()V
         2: .line 948
            return
        end local 1 // java.io.ObjectInputStream s
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavax/swing/text/InternationalFormatter;
            0    3     1     s  Ljava/io/ObjectInputStream;
    Exceptions:
      throws java.io.IOException, java.lang.ClassNotFoundException
    MethodParameters:
      Name  Flags
      s     

  javax.swing.text.DefaultFormatter$ReplaceHolder getReplaceHolder(javax.swing.text.DocumentFilter$FilterBypass, int, int, java.lang.String, javax.swing.text.AttributeSet);
    descriptor: (Ljavax/swing/text/DocumentFilter$FilterBypass;IILjava/lang/String;Ljavax/swing/text/AttributeSet;)Ljavax/swing/text/DefaultFormatter$ReplaceHolder;
    flags: (0x0000) 
    Code:
      stack=6, locals=6, args_size=6
        start local 0 // javax.swing.text.InternationalFormatter this
        start local 1 // javax.swing.text.DocumentFilter$FilterBypass fb
        start local 2 // int offset
        start local 3 // int length
        start local 4 // java.lang.String text
        start local 5 // javax.swing.text.AttributeSet attrs
         0: .line 957
            aload 0 /* this */
            getfield javax.swing.text.InternationalFormatter.replaceHolder:Ljavax/swing/text/DefaultFormatter$ReplaceHolder;
            ifnonnull 2
         1: .line 958
            aload 0 /* this */
            new javax.swing.text.InternationalFormatter$ExtendedReplaceHolder
            dup
            invokespecial javax.swing.text.InternationalFormatter$ExtendedReplaceHolder.<init>:()V
            putfield javax.swing.text.InternationalFormatter.replaceHolder:Ljavax/swing/text/DefaultFormatter$ReplaceHolder;
         2: .line 960
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* fb */
            iload 2 /* offset */
            iload 3 /* length */
            aload 4 /* text */
            aload 5 /* attrs */
            invokespecial javax.swing.text.DefaultFormatter.getReplaceHolder:(Ljavax/swing/text/DocumentFilter$FilterBypass;IILjava/lang/String;Ljavax/swing/text/AttributeSet;)Ljavax/swing/text/DefaultFormatter$ReplaceHolder;
            areturn
        end local 5 // javax.swing.text.AttributeSet attrs
        end local 4 // java.lang.String text
        end local 3 // int length
        end local 2 // int offset
        end local 1 // javax.swing.text.DocumentFilter$FilterBypass fb
        end local 0 // javax.swing.text.InternationalFormatter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljavax/swing/text/InternationalFormatter;
            0    3     1      fb  Ljavax/swing/text/DocumentFilter$FilterBypass;
            0    3     2  offset  I
            0    3     3  length  I
            0    3     4    text  Ljava/lang/String;
            0    3     5   attrs  Ljavax/swing/text/AttributeSet;
    MethodParameters:
        Name  Flags
      fb      
      offset  
      length  
      text    
      attrs   

  static javax.swing.JFormattedTextField access$0(javax.swing.text.InternationalFormatter);
    descriptor: (Ljavax/swing/text/InternationalFormatter;)Ljavax/swing/JFormattedTextField;
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual javax.swing.text.InternationalFormatter.getFormattedTextField:()Ljavax/swing/JFormattedTextField;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static void access$1(javax.swing.text.InternationalFormatter);
    descriptor: (Ljavax/swing/text/InternationalFormatter;)V
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual javax.swing.text.InternationalFormatter.invalidEdit:()V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "InternationalFormatter.java"
NestMembers:
  javax.swing.text.InternationalFormatter$ExtendedReplaceHolder  javax.swing.text.InternationalFormatter$IncrementAction
InnerClasses:
  public Attribute = java.text.AttributedCharacterIterator$Attribute of java.text.AttributedCharacterIterator
  public Field = java.text.Format$Field of java.text.Format
  ReplaceHolder = javax.swing.text.DefaultFormatter$ReplaceHolder of javax.swing.text.DefaultFormatter
  public abstract FilterBypass = javax.swing.text.DocumentFilter$FilterBypass of javax.swing.text.DocumentFilter
  ExtendedReplaceHolder = javax.swing.text.InternationalFormatter$ExtendedReplaceHolder of javax.swing.text.InternationalFormatter
  private IncrementAction = javax.swing.text.InternationalFormatter$IncrementAction of javax.swing.text.InternationalFormatter