public abstract class java.util.prefs.AbstractPreferences extends java.util.prefs.Preferences
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: java.util.prefs.AbstractPreferences
  super_class: java.util.prefs.Preferences
{
  private final java.lang.String name;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String absolutePath;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  final java.util.prefs.AbstractPreferences parent;
    descriptor: Ljava/util/prefs/AbstractPreferences;
    flags: (0x0010) ACC_FINAL

  private final java.util.prefs.AbstractPreferences root;
    descriptor: Ljava/util/prefs/AbstractPreferences;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected boolean newNode;
    descriptor: Z
    flags: (0x0004) ACC_PROTECTED

  private java.util.Map<java.lang.String, java.util.prefs.AbstractPreferences> kidCache;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/util/prefs/AbstractPreferences;>;

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

  private java.util.prefs.PreferenceChangeListener[] prefListeners;
    descriptor: [Ljava/util/prefs/PreferenceChangeListener;
    flags: (0x0002) ACC_PRIVATE

  private java.util.prefs.NodeChangeListener[] nodeListeners;
    descriptor: [Ljava/util/prefs/NodeChangeListener;
    flags: (0x0002) ACC_PRIVATE

  protected final java.lang.Object lock;
    descriptor: Ljava/lang/Object;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  private static final java.lang.String[] EMPTY_STRING_ARRAY;
    descriptor: [Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.prefs.AbstractPreferences[] EMPTY_ABSTRACT_PREFS_ARRAY;
    descriptor: [Ljava/util/prefs/AbstractPreferences;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.List<java.util.EventObject> eventQueue;
    descriptor: Ljava/util/List;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/List<Ljava/util/EventObject;>;

  private static java.lang.Thread eventDispatchThread;
    descriptor: Ljava/lang/Thread;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 724
            iconst_0
            anewarray java.lang.String
            putstatic java.util.prefs.AbstractPreferences.EMPTY_STRING_ARRAY:[Ljava/lang/String;
         1: .line 736
            iconst_0
            anewarray java.util.prefs.AbstractPreferences
         2: .line 735
            putstatic java.util.prefs.AbstractPreferences.EMPTY_ABSTRACT_PREFS_ARRAY:[Ljava/util/prefs/AbstractPreferences;
         3: .line 1450
            new java.util.LinkedList
            dup
            invokespecial java.util.LinkedList.<init>:()V
            putstatic java.util.prefs.AbstractPreferences.eventQueue:Ljava/util/List;
         4: .line 1513
            aconst_null
            putstatic java.util.prefs.AbstractPreferences.eventDispatchThread:Ljava/lang/Thread;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void <init>(java.util.prefs.AbstractPreferences, java.lang.String);
    descriptor: (Ljava/util/prefs/AbstractPreferences;Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.util.prefs.AbstractPreferences parent
        start local 2 // java.lang.String name
         0: .line 198
            aload 0 /* this */
            invokespecial java.util.prefs.Preferences.<init>:()V
         1: .line 152
            aload 0 /* this */
            iconst_0
            putfield java.util.prefs.AbstractPreferences.newNode:Z
         2: .line 158
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield java.util.prefs.AbstractPreferences.kidCache:Ljava/util/Map;
         3: .line 164
            aload 0 /* this */
            iconst_0
            putfield java.util.prefs.AbstractPreferences.removed:Z
         4: .line 169
            aload 0 /* this */
         5: .line 170
            iconst_0
            anewarray java.util.prefs.PreferenceChangeListener
            putfield java.util.prefs.AbstractPreferences.prefListeners:[Ljava/util/prefs/PreferenceChangeListener;
         6: .line 175
            aload 0 /* this */
            iconst_0
            anewarray java.util.prefs.NodeChangeListener
            putfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
         7: .line 184
            aload 0 /* this */
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
         8: .line 199
            aload 1 /* parent */
            ifnonnull 16
         9: .line 200
            aload 2 /* name */
            ldc ""
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 13
        10: .line 201
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Root name '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        11: .line 202
            ldc "' must be \"\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        12: .line 201
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 203
      StackMap locals: java.util.prefs.AbstractPreferences java.util.prefs.AbstractPreferences java.lang.String
      StackMap stack:
            aload 0 /* this */
            ldc "/"
            putfield java.util.prefs.AbstractPreferences.absolutePath:Ljava/lang/String;
        14: .line 204
            aload 0 /* this */
            aload 0 /* this */
            putfield java.util.prefs.AbstractPreferences.root:Ljava/util/prefs/AbstractPreferences;
        15: .line 205
            goto 26
        16: .line 206
      StackMap locals:
      StackMap stack:
            aload 2 /* name */
            bipush 47
            invokevirtual java.lang.String.indexOf:(I)I
            iconst_m1
            if_icmpeq 20
        17: .line 207
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Name '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        18: .line 208
            ldc "' contains '/'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        19: .line 207
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        20: .line 209
      StackMap locals:
      StackMap stack:
            aload 2 /* name */
            ldc ""
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 22
        21: .line 210
            new java.lang.IllegalArgumentException
            dup
            ldc "Illegal name: empty string"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        22: .line 212
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* parent */
            getfield java.util.prefs.AbstractPreferences.root:Ljava/util/prefs/AbstractPreferences;
            putfield java.util.prefs.AbstractPreferences.root:Ljava/util/prefs/AbstractPreferences;
        23: .line 213
            aload 0 /* this */
            aload 1 /* parent */
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.root:Ljava/util/prefs/AbstractPreferences;
            if_acmpne 24
            new java.lang.StringBuilder
            dup
            ldc "/"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 25
        24: .line 214
      StackMap locals:
      StackMap stack: java.util.prefs.AbstractPreferences
            new java.lang.StringBuilder
            dup
            aload 1 /* parent */
            invokevirtual java.util.prefs.AbstractPreferences.absolutePath:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "/"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        25: .line 213
      StackMap locals: java.util.prefs.AbstractPreferences java.util.prefs.AbstractPreferences java.lang.String
      StackMap stack: java.util.prefs.AbstractPreferences java.lang.String
            putfield java.util.prefs.AbstractPreferences.absolutePath:Ljava/lang/String;
        26: .line 216
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* name */
            putfield java.util.prefs.AbstractPreferences.name:Ljava/lang/String;
        27: .line 217
            aload 0 /* this */
            aload 1 /* parent */
            putfield java.util.prefs.AbstractPreferences.parent:Ljava/util/prefs/AbstractPreferences;
        28: .line 218
            return
        end local 2 // java.lang.String name
        end local 1 // java.util.prefs.AbstractPreferences parent
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   29     0    this  Ljava/util/prefs/AbstractPreferences;
            0   29     1  parent  Ljava/util/prefs/AbstractPreferences;
            0   29     2    name  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      parent  
      name    

  public void put(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String key
        start local 2 // java.lang.String value
         0: .line 240
            aload 1 /* key */
            ifnull 1
            aload 2 /* value */
            ifnonnull 2
         1: .line 241
      StackMap locals:
      StackMap stack:
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 242
      StackMap locals:
      StackMap stack:
            aload 1 /* key */
            invokevirtual java.lang.String.length:()I
            bipush 80
            if_icmple 4
         3: .line 243
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Key too long: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* key */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 244
      StackMap locals:
      StackMap stack:
            aload 2 /* value */
            invokevirtual java.lang.String.length:()I
            sipush 8192
            if_icmple 6
         5: .line 245
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Value too long: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 247
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 3
            monitorenter
         7: .line 248
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.removed:Z
            ifeq 9
         8: .line 249
            new java.lang.IllegalStateException
            dup
            ldc "Node has been removed."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 251
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* value */
            invokevirtual java.util.prefs.AbstractPreferences.putSpi:(Ljava/lang/String;Ljava/lang/String;)V
        10: .line 252
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* value */
            invokevirtual java.util.prefs.AbstractPreferences.enqueuePreferenceChangeEvent:(Ljava/lang/String;Ljava/lang/String;)V
        11: .line 247
            aload 3
            monitorexit
        12: goto 15
      StackMap locals:
      StackMap stack: java.lang.Throwable
        13: aload 3
            monitorexit
        14: athrow
        15: .line 254
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String value
        end local 1 // java.lang.String key
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   16     0   this  Ljava/util/prefs/AbstractPreferences;
            0   16     1    key  Ljava/lang/String;
            0   16     2  value  Ljava/lang/String;
      Exception table:
        from    to  target  type
           7    12      13  any
          13    14      13  any
    MethodParameters:
       Name  Flags
      key    
      value  

  public java.lang.String get(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String key
        start local 2 // java.lang.String def
         0: .line 279
            aload 1 /* key */
            ifnonnull 2
         1: .line 280
            new java.lang.NullPointerException
            dup
            ldc "Null key"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 281
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 3
            monitorenter
         3: .line 282
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.removed:Z
            ifeq 5
         4: .line 283
            new java.lang.IllegalStateException
            dup
            ldc "Node has been removed."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 285
      StackMap locals: java.lang.Object
      StackMap stack:
            aconst_null
            astore 4 /* result */
        start local 4 // java.lang.String result
         6: .line 287
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual java.util.prefs.AbstractPreferences.getSpi:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* result */
         7: .line 288
            goto 9
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.String java.lang.String java.lang.Object java.lang.String
      StackMap stack: java.lang.Exception
         8: pop
         9: .line 291
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            ifnonnull 10
            aload 2 /* def */
            goto 11
      StackMap locals:
      StackMap stack:
        10: aload 4 /* result */
      StackMap locals:
      StackMap stack: java.lang.String
        11: aload 3
            monitorexit
        12: areturn
        end local 4 // java.lang.String result
        13: .line 281
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.String java.lang.String java.lang.Object
      StackMap stack: java.lang.Throwable
            aload 3
            monitorexit
        14: athrow
        end local 2 // java.lang.String def
        end local 1 // java.lang.String key
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   15     0    this  Ljava/util/prefs/AbstractPreferences;
            0   15     1     key  Ljava/lang/String;
            0   15     2     def  Ljava/lang/String;
            6   13     4  result  Ljava/lang/String;
      Exception table:
        from    to  target  type
           6     7       8  Class java.lang.Exception
           3    12      13  any
          13    14      13  any
    MethodParameters:
      Name  Flags
      key   
      def   

  public void remove(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String key
         0: .line 311
            aload 1 /* key */
            ldc "Specified key cannot be null"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 312
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         2: .line 313
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.removed:Z
            ifeq 4
         3: .line 314
            new java.lang.IllegalStateException
            dup
            ldc "Node has been removed."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 316
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual java.util.prefs.AbstractPreferences.removeSpi:(Ljava/lang/String;)V
         5: .line 317
            aload 0 /* this */
            aload 1 /* key */
            aconst_null
            invokevirtual java.util.prefs.AbstractPreferences.enqueuePreferenceChangeEvent:(Ljava/lang/String;Ljava/lang/String;)V
         6: .line 312
            aload 2
            monitorexit
         7: goto 10
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: aload 2
            monitorexit
         9: athrow
        10: .line 319
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String key
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Ljava/util/prefs/AbstractPreferences;
            0   11     1   key  Ljava/lang/String;
      Exception table:
        from    to  target  type
           2     7       8  any
           8     9       8  any
    MethodParameters:
      Name  Flags
      key   

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 336
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 337
            aload 0 /* this */
            invokevirtual java.util.prefs.AbstractPreferences.keys:()[Ljava/lang/String;
            astore 2 /* keys */
        start local 2 // java.lang.String[] keys
         2: .line 338
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 6
         4: .line 339
      StackMap locals: java.lang.Object java.lang.String[] int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* keys */
            iload 3 /* i */
            aaload
            invokevirtual java.util.prefs.AbstractPreferences.remove:(Ljava/lang/String;)V
         5: .line 338
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            aload 2 /* keys */
            arraylength
            if_icmplt 4
        end local 3 // int i
        end local 2 // java.lang.String[] keys
         7: .line 336
            aload 1
            monitorexit
         8: goto 11
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.Object
      StackMap stack: java.lang.Throwable
         9: aload 1
            monitorexit
        10: athrow
        11: .line 341
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Ljava/util/prefs/AbstractPreferences;
            2    7     2  keys  [Ljava/lang/String;
            3    7     3     i  I
      Exception table:
        from    to  target  type
           1     8       9  any
           9    10       9  any
    Exceptions:
      throws java.util.prefs.BackingStoreException

  public void putInt(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String key
        start local 2 // int value
         0: .line 360
            aload 0 /* this */
            aload 1 /* key */
            iload 2 /* value */
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            invokevirtual java.util.prefs.AbstractPreferences.put:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 361
            return
        end local 2 // int value
        end local 1 // java.lang.String key
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljava/util/prefs/AbstractPreferences;
            0    2     1    key  Ljava/lang/String;
            0    2     2  value  I
    MethodParameters:
       Name  Flags
      key    
      value  

  public int getInt(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String key
        start local 2 // int def
         0: .line 386
            iload 2 /* def */
            istore 3 /* result */
        start local 3 // int result
         1: .line 388
            aload 0 /* this */
            aload 1 /* key */
            aconst_null
            invokevirtual java.util.prefs.AbstractPreferences.get:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* value */
        start local 4 // java.lang.String value
         2: .line 389
            aload 4 /* value */
            ifnull 6
         3: .line 390
            aload 4 /* value */
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 3 /* result */
        end local 4 // java.lang.String value
         4: .line 391
            goto 6
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.String int int
      StackMap stack: java.lang.NumberFormatException
         5: pop
         6: .line 395
      StackMap locals:
      StackMap stack:
            iload 3 /* result */
            ireturn
        end local 3 // int result
        end local 2 // int def
        end local 1 // java.lang.String key
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Ljava/util/prefs/AbstractPreferences;
            0    7     1     key  Ljava/lang/String;
            0    7     2     def  I
            1    7     3  result  I
            2    4     4   value  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     4       5  Class java.lang.NumberFormatException
    MethodParameters:
      Name  Flags
      key   
      def   

  public void putLong(java.lang.String, long);
    descriptor: (Ljava/lang/String;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String key
        start local 2 // long value
         0: .line 415
            aload 0 /* this */
            aload 1 /* key */
            lload 2 /* value */
            invokestatic java.lang.Long.toString:(J)Ljava/lang/String;
            invokevirtual java.util.prefs.AbstractPreferences.put:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 416
            return
        end local 2 // long value
        end local 1 // java.lang.String key
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljava/util/prefs/AbstractPreferences;
            0    2     1    key  Ljava/lang/String;
            0    2     2  value  J
    MethodParameters:
       Name  Flags
      key    
      value  

  public long getLong(java.lang.String, long);
    descriptor: (Ljava/lang/String;J)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String key
        start local 2 // long def
         0: .line 441
            lload 2 /* def */
            lstore 4 /* result */
        start local 4 // long result
         1: .line 443
            aload 0 /* this */
            aload 1 /* key */
            aconst_null
            invokevirtual java.util.prefs.AbstractPreferences.get:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 6 /* value */
        start local 6 // java.lang.String value
         2: .line 444
            aload 6 /* value */
            ifnull 6
         3: .line 445
            aload 6 /* value */
            invokestatic java.lang.Long.parseLong:(Ljava/lang/String;)J
            lstore 4 /* result */
        end local 6 // java.lang.String value
         4: .line 446
            goto 6
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.String long long
      StackMap stack: java.lang.NumberFormatException
         5: pop
         6: .line 450
      StackMap locals:
      StackMap stack:
            lload 4 /* result */
            lreturn
        end local 4 // long result
        end local 2 // long def
        end local 1 // java.lang.String key
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Ljava/util/prefs/AbstractPreferences;
            0    7     1     key  Ljava/lang/String;
            0    7     2     def  J
            1    7     4  result  J
            2    4     6   value  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     4       5  Class java.lang.NumberFormatException
    MethodParameters:
      Name  Flags
      key   
      def   

  public void putBoolean(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String key
        start local 2 // boolean value
         0: .line 470
            aload 0 /* this */
            aload 1 /* key */
            iload 2 /* value */
            invokestatic java.lang.String.valueOf:(Z)Ljava/lang/String;
            invokevirtual java.util.prefs.AbstractPreferences.put:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 471
            return
        end local 2 // boolean value
        end local 1 // java.lang.String key
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljava/util/prefs/AbstractPreferences;
            0    2     1    key  Ljava/lang/String;
            0    2     2  value  Z
    MethodParameters:
       Name  Flags
      key    
      value  

  public boolean getBoolean(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String key
        start local 2 // boolean def
         0: .line 499
            iload 2 /* def */
            istore 3 /* result */
        start local 3 // boolean result
         1: .line 500
            aload 0 /* this */
            aload 1 /* key */
            aconst_null
            invokevirtual java.util.prefs.AbstractPreferences.get:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* value */
        start local 4 // java.lang.String value
         2: .line 501
            aload 4 /* value */
            ifnull 7
         3: .line 502
            aload 4 /* value */
            ldc "true"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 5
         4: .line 503
            iconst_1
            istore 3 /* result */
            goto 7
         5: .line 504
      StackMap locals: int java.lang.String
      StackMap stack:
            aload 4 /* value */
            ldc "false"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 7
         6: .line 505
            iconst_0
            istore 3 /* result */
         7: .line 508
      StackMap locals:
      StackMap stack:
            iload 3 /* result */
            ireturn
        end local 4 // java.lang.String value
        end local 3 // boolean result
        end local 2 // boolean def
        end local 1 // java.lang.String key
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Ljava/util/prefs/AbstractPreferences;
            0    8     1     key  Ljava/lang/String;
            0    8     2     def  Z
            1    8     3  result  Z
            2    8     4   value  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      key   
      def   

  public void putFloat(java.lang.String, float);
    descriptor: (Ljava/lang/String;F)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String key
        start local 2 // float value
         0: .line 528
            aload 0 /* this */
            aload 1 /* key */
            fload 2 /* value */
            invokestatic java.lang.Float.toString:(F)Ljava/lang/String;
            invokevirtual java.util.prefs.AbstractPreferences.put:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 529
            return
        end local 2 // float value
        end local 1 // java.lang.String key
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljava/util/prefs/AbstractPreferences;
            0    2     1    key  Ljava/lang/String;
            0    2     2  value  F
    MethodParameters:
       Name  Flags
      key    
      value  

  public float getFloat(java.lang.String, float);
    descriptor: (Ljava/lang/String;F)F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String key
        start local 2 // float def
         0: .line 554
            fload 2 /* def */
            fstore 3 /* result */
        start local 3 // float result
         1: .line 556
            aload 0 /* this */
            aload 1 /* key */
            aconst_null
            invokevirtual java.util.prefs.AbstractPreferences.get:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* value */
        start local 4 // java.lang.String value
         2: .line 557
            aload 4 /* value */
            ifnull 6
         3: .line 558
            aload 4 /* value */
            invokestatic java.lang.Float.parseFloat:(Ljava/lang/String;)F
            fstore 3 /* result */
        end local 4 // java.lang.String value
         4: .line 559
            goto 6
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.String float float
      StackMap stack: java.lang.NumberFormatException
         5: pop
         6: .line 563
      StackMap locals:
      StackMap stack:
            fload 3 /* result */
            freturn
        end local 3 // float result
        end local 2 // float def
        end local 1 // java.lang.String key
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Ljava/util/prefs/AbstractPreferences;
            0    7     1     key  Ljava/lang/String;
            0    7     2     def  F
            1    7     3  result  F
            2    4     4   value  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     4       5  Class java.lang.NumberFormatException
    MethodParameters:
      Name  Flags
      key   
      def   

  public void putDouble(java.lang.String, double);
    descriptor: (Ljava/lang/String;D)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String key
        start local 2 // double value
         0: .line 583
            aload 0 /* this */
            aload 1 /* key */
            dload 2 /* value */
            invokestatic java.lang.Double.toString:(D)Ljava/lang/String;
            invokevirtual java.util.prefs.AbstractPreferences.put:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 584
            return
        end local 2 // double value
        end local 1 // java.lang.String key
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljava/util/prefs/AbstractPreferences;
            0    2     1    key  Ljava/lang/String;
            0    2     2  value  D
    MethodParameters:
       Name  Flags
      key    
      value  

  public double getDouble(java.lang.String, double);
    descriptor: (Ljava/lang/String;D)D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String key
        start local 2 // double def
         0: .line 609
            dload 2 /* def */
            dstore 4 /* result */
        start local 4 // double result
         1: .line 611
            aload 0 /* this */
            aload 1 /* key */
            aconst_null
            invokevirtual java.util.prefs.AbstractPreferences.get:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 6 /* value */
        start local 6 // java.lang.String value
         2: .line 612
            aload 6 /* value */
            ifnull 6
         3: .line 613
            aload 6 /* value */
            invokestatic java.lang.Double.parseDouble:(Ljava/lang/String;)D
            dstore 4 /* result */
        end local 6 // java.lang.String value
         4: .line 614
            goto 6
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.String double double
      StackMap stack: java.lang.NumberFormatException
         5: pop
         6: .line 618
      StackMap locals:
      StackMap stack:
            dload 4 /* result */
            dreturn
        end local 4 // double result
        end local 2 // double def
        end local 1 // java.lang.String key
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Ljava/util/prefs/AbstractPreferences;
            0    7     1     key  Ljava/lang/String;
            0    7     2     def  D
            1    7     4  result  D
            2    4     6   value  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     4       5  Class java.lang.NumberFormatException
    MethodParameters:
      Name  Flags
      key   
      def   

  public void putByteArray(java.lang.String, byte[]);
    descriptor: (Ljava/lang/String;[B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String key
        start local 2 // byte[] value
         0: .line 634
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* value */
            invokestatic java.util.prefs.Base64.byteArrayToBase64:([B)Ljava/lang/String;
            invokevirtual java.util.prefs.AbstractPreferences.put:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 635
            return
        end local 2 // byte[] value
        end local 1 // java.lang.String key
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljava/util/prefs/AbstractPreferences;
            0    2     1    key  Ljava/lang/String;
            0    2     2  value  [B
    MethodParameters:
       Name  Flags
      key    
      value  

  public byte[] getByteArray(java.lang.String, byte[]);
    descriptor: (Ljava/lang/String;[B)[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String key
        start local 2 // byte[] def
         0: .line 655
            aload 2 /* def */
            astore 3 /* result */
        start local 3 // byte[] result
         1: .line 656
            aload 0 /* this */
            aload 1 /* key */
            aconst_null
            invokevirtual java.util.prefs.AbstractPreferences.get:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* value */
        start local 4 // java.lang.String value
         2: .line 658
            aload 4 /* value */
            ifnull 6
         3: .line 659
            aload 4 /* value */
            invokestatic java.util.prefs.Base64.base64ToByteArray:(Ljava/lang/String;)[B
            astore 3 /* result */
         4: .line 660
            goto 6
         5: .line 661
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.String byte[] byte[] java.lang.String
      StackMap stack: java.lang.RuntimeException
            pop
         6: .line 665
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 4 // java.lang.String value
        end local 3 // byte[] result
        end local 2 // byte[] def
        end local 1 // java.lang.String key
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Ljava/util/prefs/AbstractPreferences;
            0    7     1     key  Ljava/lang/String;
            0    7     2     def  [B
            1    7     3  result  [B
            2    7     4   value  Ljava/lang/String;
      Exception table:
        from    to  target  type
           2     4       5  Class java.lang.RuntimeException
    MethodParameters:
      Name  Flags
      key   
      def   

  public java.lang.String[] keys();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 684
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 685
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.removed:Z
            ifeq 3
         2: .line 686
            new java.lang.IllegalStateException
            dup
            ldc "Node has been removed."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 688
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.util.prefs.AbstractPreferences.keysSpi:()[Ljava/lang/String;
            aload 1
            monitorexit
         4: areturn
         5: .line 684
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
         6: athrow
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/util/prefs/AbstractPreferences;
      Exception table:
        from    to  target  type
           1     4       5  any
           5     6       5  any
    Exceptions:
      throws java.util.prefs.BackingStoreException

  public java.lang.String[] childrenNames();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 713
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 714
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.removed:Z
            ifeq 3
         2: .line 715
            new java.lang.IllegalStateException
            dup
            ldc "Node has been removed."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 717
      StackMap locals: java.lang.Object
      StackMap stack:
            new java.util.TreeSet
            dup
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.kidCache:Ljava/util/Map;
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokespecial java.util.TreeSet.<init>:(Ljava/util/Collection;)V
            astore 2 /* s */
        start local 2 // java.util.Set s
         4: .line 718
            aload 0 /* this */
            invokevirtual java.util.prefs.AbstractPreferences.childrenNamesSpi:()[Ljava/lang/String;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 8
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.Object java.util.Set top int int java.lang.String[]
      StackMap stack:
         5: aload 6
            iload 4
            aaload
            astore 3 /* kid */
        start local 3 // java.lang.String kid
         6: .line 719
            aload 2 /* s */
            aload 3 /* kid */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // java.lang.String kid
         7: .line 718
            iinc 4 1
      StackMap locals:
      StackMap stack:
         8: iload 4
            iload 5
            if_icmplt 5
         9: .line 720
            aload 2 /* s */
            getstatic java.util.prefs.AbstractPreferences.EMPTY_STRING_ARRAY:[Ljava/lang/String;
            invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            aload 1
            monitorexit
        10: areturn
        end local 2 // java.util.Set s
        11: .line 713
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.Object
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
        12: athrow
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Ljava/util/prefs/AbstractPreferences;
            4   11     2     s  Ljava/util/Set<Ljava/lang/String;>;
            6    7     3   kid  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1    10      11  any
          11    12      11  any
    Exceptions:
      throws java.util.prefs.BackingStoreException

  protected final java.util.prefs.AbstractPreferences[] cachedChildren();
    descriptor: ()[Ljava/util/prefs/AbstractPreferences;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 732
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.kidCache:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            getstatic java.util.prefs.AbstractPreferences.EMPTY_ABSTRACT_PREFS_ARRAY:[Ljava/util/prefs/AbstractPreferences;
            invokeinterface java.util.Collection.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.util.prefs.AbstractPreferences[]
            areturn
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/prefs/AbstractPreferences;

  public java.util.prefs.Preferences parent();
    descriptor: ()Ljava/util/prefs/Preferences;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 751
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 752
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.removed:Z
            ifeq 3
         2: .line 753
            new java.lang.IllegalStateException
            dup
            ldc "Node has been removed."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 755
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.parent:Ljava/util/prefs/AbstractPreferences;
            aload 1
            monitorexit
         4: areturn
         5: .line 751
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
         6: athrow
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/util/prefs/AbstractPreferences;
      Exception table:
        from    to  target  type
           1     4       5  any
           5     6       5  any

  public java.util.prefs.Preferences node(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/prefs/Preferences;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String path
         0: .line 805
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 806
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.removed:Z
            ifeq 3
         2: .line 807
            new java.lang.IllegalStateException
            dup
            ldc "Node has been removed."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 808
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 1 /* path */
            ldc ""
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
         4: .line 809
            aload 0 /* this */
            aload 2
            monitorexit
         5: areturn
         6: .line 810
      StackMap locals:
      StackMap stack:
            aload 1 /* path */
            ldc "/"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 9
         7: .line 811
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.root:Ljava/util/prefs/AbstractPreferences;
            aload 2
            monitorexit
         8: areturn
         9: .line 812
      StackMap locals:
      StackMap stack:
            aload 1 /* path */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpeq 12
        10: .line 813
            aload 0 /* this */
            new java.util.StringTokenizer
            dup
            aload 1 /* path */
            ldc "/"
            iconst_1
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;Z)V
            invokevirtual java.util.prefs.AbstractPreferences.node:(Ljava/util/StringTokenizer;)Ljava/util/prefs/Preferences;
            aload 2
            monitorexit
        11: areturn
        12: .line 805
      StackMap locals:
      StackMap stack:
            aload 2
            monitorexit
        13: goto 16
      StackMap locals:
      StackMap stack: java.lang.Throwable
        14: aload 2
            monitorexit
        15: athrow
        16: .line 817
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.root:Ljava/util/prefs/AbstractPreferences;
            new java.util.StringTokenizer
            dup
            aload 1 /* path */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            ldc "/"
            iconst_1
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;Z)V
            invokevirtual java.util.prefs.AbstractPreferences.node:(Ljava/util/StringTokenizer;)Ljava/util/prefs/Preferences;
            areturn
        end local 1 // java.lang.String path
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0  this  Ljava/util/prefs/AbstractPreferences;
            0   17     1  path  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     5      14  any
           6     8      14  any
           9    11      14  any
          12    13      14  any
          14    15      14  any
    MethodParameters:
      Name  Flags
      path  

  private java.util.prefs.Preferences node(java.util.StringTokenizer);
    descriptor: (Ljava/util/StringTokenizer;)Ljava/util/prefs/Preferences;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.util.StringTokenizer path
         0: .line 824
            aload 1 /* path */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
            astore 2 /* token */
        start local 2 // java.lang.String token
         1: .line 825
            aload 2 /* token */
            ldc "/"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 826
            new java.lang.IllegalArgumentException
            dup
            ldc "Consecutive slashes in path"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 827
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 3
            monitorenter
         4: .line 828
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.kidCache:Ljava/util/Map;
            aload 2 /* token */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.prefs.AbstractPreferences
            astore 4 /* child */
        start local 4 // java.util.prefs.AbstractPreferences child
         5: .line 829
            aload 4 /* child */
            ifnonnull 14
         6: .line 830
            aload 2 /* token */
            invokevirtual java.lang.String.length:()I
            bipush 80
            if_icmple 10
         7: .line 831
            new java.lang.IllegalArgumentException
            dup
         8: .line 832
            new java.lang.StringBuilder
            dup
            ldc "Node name "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* token */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " too long"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         9: .line 831
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 833
      StackMap locals: java.lang.Object java.util.prefs.AbstractPreferences
      StackMap stack:
            aload 0 /* this */
            aload 2 /* token */
            invokevirtual java.util.prefs.AbstractPreferences.childSpi:(Ljava/lang/String;)Ljava/util/prefs/AbstractPreferences;
            astore 4 /* child */
        11: .line 834
            aload 4 /* child */
            getfield java.util.prefs.AbstractPreferences.newNode:Z
            ifeq 13
        12: .line 835
            aload 0 /* this */
            aload 4 /* child */
            invokevirtual java.util.prefs.AbstractPreferences.enqueueNodeAddedEvent:(Ljava/util/prefs/Preferences;)V
        13: .line 836
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.kidCache:Ljava/util/Map;
            aload 2 /* token */
            aload 4 /* child */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 838
      StackMap locals:
      StackMap stack:
            aload 1 /* path */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 17
        15: .line 839
            aload 4 /* child */
            aload 3
            monitorexit
        16: areturn
        17: .line 840
      StackMap locals:
      StackMap stack:
            aload 1 /* path */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
            pop
        18: .line 841
            aload 1 /* path */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 20
        19: .line 842
            new java.lang.IllegalArgumentException
            dup
            ldc "Path ends with slash"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        20: .line 843
      StackMap locals:
      StackMap stack:
            aload 4 /* child */
            aload 1 /* path */
            invokevirtual java.util.prefs.AbstractPreferences.node:(Ljava/util/StringTokenizer;)Ljava/util/prefs/Preferences;
            aload 3
            monitorexit
        21: areturn
        end local 4 // java.util.prefs.AbstractPreferences child
        22: .line 827
      StackMap locals: java.util.prefs.AbstractPreferences java.util.StringTokenizer java.lang.String java.lang.Object
      StackMap stack: java.lang.Throwable
            aload 3
            monitorexit
        23: athrow
        end local 2 // java.lang.String token
        end local 1 // java.util.StringTokenizer path
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   24     0   this  Ljava/util/prefs/AbstractPreferences;
            0   24     1   path  Ljava/util/StringTokenizer;
            1   24     2  token  Ljava/lang/String;
            5   22     4  child  Ljava/util/prefs/AbstractPreferences;
      Exception table:
        from    to  target  type
           4    16      22  any
          17    21      22  any
          22    23      22  any
    MethodParameters:
      Name  Flags
      path  

  public boolean nodeExists(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String path
         0: .line 870
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 871
            aload 1 /* path */
            ldc ""
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
         2: .line 872
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.removed:Z
            ifeq 3
            iconst_0
            goto 4
      StackMap locals: java.lang.Object
      StackMap stack:
         3: iconst_1
      StackMap locals:
      StackMap stack: int
         4: aload 2
            monitorexit
         5: ireturn
         6: .line 873
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.removed:Z
            ifeq 8
         7: .line 874
            new java.lang.IllegalStateException
            dup
            ldc "Node has been removed."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 875
      StackMap locals:
      StackMap stack:
            aload 1 /* path */
            ldc "/"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 11
         9: .line 876
            aload 2
            monitorexit
        10: iconst_1
            ireturn
        11: .line 877
      StackMap locals:
      StackMap stack:
            aload 1 /* path */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpeq 14
        12: .line 878
            aload 0 /* this */
            new java.util.StringTokenizer
            dup
            aload 1 /* path */
            ldc "/"
            iconst_1
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;Z)V
            invokevirtual java.util.prefs.AbstractPreferences.nodeExists:(Ljava/util/StringTokenizer;)Z
            aload 2
            monitorexit
        13: ireturn
        14: .line 870
      StackMap locals:
      StackMap stack:
            aload 2
            monitorexit
        15: goto 18
      StackMap locals:
      StackMap stack: java.lang.Throwable
        16: aload 2
            monitorexit
        17: athrow
        18: .line 882
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.root:Ljava/util/prefs/AbstractPreferences;
            new java.util.StringTokenizer
            dup
            aload 1 /* path */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            ldc "/"
        19: .line 883
            iconst_1
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;Z)V
        20: .line 882
            invokevirtual java.util.prefs.AbstractPreferences.nodeExists:(Ljava/util/StringTokenizer;)Z
            ireturn
        end local 1 // java.lang.String path
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   21     0  this  Ljava/util/prefs/AbstractPreferences;
            0   21     1  path  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     5      16  any
           6    10      16  any
          11    13      16  any
          14    15      16  any
          16    17      16  any
    Exceptions:
      throws java.util.prefs.BackingStoreException
    MethodParameters:
      Name  Flags
      path  

  private boolean nodeExists(java.util.StringTokenizer);
    descriptor: (Ljava/util/StringTokenizer;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.util.StringTokenizer path
         0: .line 892
            aload 1 /* path */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
            astore 2 /* token */
        start local 2 // java.lang.String token
         1: .line 893
            aload 2 /* token */
            ldc "/"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 894
            new java.lang.IllegalArgumentException
            dup
            ldc "Consecutive slashes in path"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 895
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 3
            monitorenter
         4: .line 896
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.kidCache:Ljava/util/Map;
            aload 2 /* token */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.prefs.AbstractPreferences
            astore 4 /* child */
        start local 4 // java.util.prefs.AbstractPreferences child
         5: .line 897
            aload 4 /* child */
            ifnonnull 7
         6: .line 898
            aload 0 /* this */
            aload 2 /* token */
            invokevirtual java.util.prefs.AbstractPreferences.getChild:(Ljava/lang/String;)Ljava/util/prefs/AbstractPreferences;
            astore 4 /* child */
         7: .line 899
      StackMap locals: java.lang.Object java.util.prefs.AbstractPreferences
      StackMap stack:
            aload 4 /* child */
            ifnonnull 10
         8: .line 900
            aload 3
            monitorexit
         9: iconst_0
            ireturn
        10: .line 901
      StackMap locals:
      StackMap stack:
            aload 1 /* path */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 13
        11: .line 902
            aload 3
            monitorexit
        12: iconst_1
            ireturn
        13: .line 903
      StackMap locals:
      StackMap stack:
            aload 1 /* path */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
            pop
        14: .line 904
            aload 1 /* path */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 16
        15: .line 905
            new java.lang.IllegalArgumentException
            dup
            ldc "Path ends with slash"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 906
      StackMap locals:
      StackMap stack:
            aload 4 /* child */
            aload 1 /* path */
            invokevirtual java.util.prefs.AbstractPreferences.nodeExists:(Ljava/util/StringTokenizer;)Z
            aload 3
            monitorexit
        17: ireturn
        end local 4 // java.util.prefs.AbstractPreferences child
        18: .line 895
      StackMap locals: java.util.prefs.AbstractPreferences java.util.StringTokenizer java.lang.String java.lang.Object
      StackMap stack: java.lang.Throwable
            aload 3
            monitorexit
        19: athrow
        end local 2 // java.lang.String token
        end local 1 // java.util.StringTokenizer path
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   20     0   this  Ljava/util/prefs/AbstractPreferences;
            0   20     1   path  Ljava/util/StringTokenizer;
            1   20     2  token  Ljava/lang/String;
            5   18     4  child  Ljava/util/prefs/AbstractPreferences;
      Exception table:
        from    to  target  type
           4     9      18  any
          10    12      18  any
          13    17      18  any
          18    19      18  any
    Exceptions:
      throws java.util.prefs.BackingStoreException
    MethodParameters:
      Name  Flags
      path  

  public void removeNode();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 943
            aload 0 /* this */
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.root:Ljava/util/prefs/AbstractPreferences;
            if_acmpne 2
         1: .line 944
            new java.lang.UnsupportedOperationException
            dup
            ldc "Can't remove the root!"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 945
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.parent:Ljava/util/prefs/AbstractPreferences;
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         3: .line 946
            aload 0 /* this */
            invokevirtual java.util.prefs.AbstractPreferences.removeNode2:()V
         4: .line 947
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.parent:Ljava/util/prefs/AbstractPreferences;
            getfield java.util.prefs.AbstractPreferences.kidCache:Ljava/util/Map;
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.name:Ljava/lang/String;
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 945
            aload 1
            monitorexit
         6: goto 9
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.Object
      StackMap stack: java.lang.Throwable
         7: aload 1
            monitorexit
         8: athrow
         9: .line 949
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Ljava/util/prefs/AbstractPreferences;
      Exception table:
        from    to  target  type
           3     6       7  any
           7     8       7  any
    Exceptions:
      throws java.util.prefs.BackingStoreException

  private void removeNode2();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 956
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 957
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.removed:Z
            ifeq 3
         2: .line 958
            new java.lang.IllegalStateException
            dup
            ldc "Node already removed."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 961
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.util.prefs.AbstractPreferences.childrenNamesSpi:()[Ljava/lang/String;
            astore 2 /* kidNames */
        start local 2 // java.lang.String[] kidNames
         4: .line 962
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 9
         6: .line 963
      StackMap locals: java.lang.String[] int
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.kidCache:Ljava/util/Map;
            aload 2 /* kidNames */
            iload 3 /* i */
            aaload
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 8
         7: .line 964
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.kidCache:Ljava/util/Map;
            aload 2 /* kidNames */
            iload 3 /* i */
            aaload
            aload 0 /* this */
            aload 2 /* kidNames */
            iload 3 /* i */
            aaload
            invokevirtual java.util.prefs.AbstractPreferences.childSpi:(Ljava/lang/String;)Ljava/util/prefs/AbstractPreferences;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 962
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            aload 2 /* kidNames */
            arraylength
            if_icmplt 6
        end local 3 // int i
        10: .line 967
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.kidCache:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3 /* i */
        start local 3 // java.util.Iterator i
        11: .line 968
            goto 16
        12: .line 970
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.Object java.lang.String[] java.util.Iterator
      StackMap stack:
            aload 3 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.prefs.AbstractPreferences
            invokevirtual java.util.prefs.AbstractPreferences.removeNode2:()V
        13: .line 971
            aload 3 /* i */
            invokeinterface java.util.Iterator.remove:()V
        14: .line 972
            goto 16
      StackMap locals:
      StackMap stack: java.util.prefs.BackingStoreException
        15: pop
        16: .line 968
      StackMap locals:
      StackMap stack:
            aload 3 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        end local 3 // java.util.Iterator i
        17: .line 976
            aload 0 /* this */
            invokevirtual java.util.prefs.AbstractPreferences.removeNodeSpi:()V
        18: .line 977
            aload 0 /* this */
            iconst_1
            putfield java.util.prefs.AbstractPreferences.removed:Z
        19: .line 978
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.parent:Ljava/util/prefs/AbstractPreferences;
            aload 0 /* this */
            invokevirtual java.util.prefs.AbstractPreferences.enqueueNodeRemovedEvent:(Ljava/util/prefs/Preferences;)V
        end local 2 // java.lang.String[] kidNames
        20: .line 956
            aload 1
            monitorexit
        21: goto 24
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.Object
      StackMap stack: java.lang.Throwable
        22: aload 1
            monitorexit
        23: athrow
        24: .line 980
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   25     0      this  Ljava/util/prefs/AbstractPreferences;
            4   20     2  kidNames  [Ljava/lang/String;
            5   10     3         i  I
           11   17     3         i  Ljava/util/Iterator<Ljava/util/prefs/AbstractPreferences;>;
      Exception table:
        from    to  target  type
          12    14      15  Class java.util.prefs.BackingStoreException
           1    21      22  any
          22    23      22  any
    Exceptions:
      throws java.util.prefs.BackingStoreException

  public java.lang.String name();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 992
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.name:Ljava/lang/String;
            areturn
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/prefs/AbstractPreferences;

  public java.lang.String absolutePath();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 1007
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.absolutePath:Ljava/lang/String;
            areturn
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/prefs/AbstractPreferences;

  public boolean isUserNode();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 1025
            new java.util.prefs.AbstractPreferences$1
            dup
            aload 0 /* this */
            invokespecial java.util.prefs.AbstractPreferences$1.<init>:(Ljava/util/prefs/AbstractPreferences;)V
         1: .line 1024
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
         2: .line 1029
            invokevirtual java.lang.Boolean.booleanValue:()Z
         3: .line 1024
            ireturn
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/util/prefs/AbstractPreferences;

  public void addPreferenceChangeListener(java.util.prefs.PreferenceChangeListener);
    descriptor: (Ljava/util/prefs/PreferenceChangeListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.util.prefs.PreferenceChangeListener pcl
         0: .line 1033
            aload 1 /* pcl */
            ifnonnull 2
         1: .line 1034
            new java.lang.NullPointerException
            dup
            ldc "Change listener is null."
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1035
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         3: .line 1036
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.removed:Z
            ifeq 5
         4: .line 1037
            new java.lang.IllegalStateException
            dup
            ldc "Node has been removed."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 1040
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.prefListeners:[Ljava/util/prefs/PreferenceChangeListener;
            astore 3 /* old */
        start local 3 // java.util.prefs.PreferenceChangeListener[] old
         6: .line 1041
            aload 0 /* this */
            aload 3 /* old */
            arraylength
            iconst_1
            iadd
            anewarray java.util.prefs.PreferenceChangeListener
            putfield java.util.prefs.AbstractPreferences.prefListeners:[Ljava/util/prefs/PreferenceChangeListener;
         7: .line 1042
            aload 3 /* old */
            iconst_0
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.prefListeners:[Ljava/util/prefs/PreferenceChangeListener;
            iconst_0
            aload 3 /* old */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         8: .line 1043
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.prefListeners:[Ljava/util/prefs/PreferenceChangeListener;
            aload 3 /* old */
            arraylength
            aload 1 /* pcl */
            aastore
        end local 3 // java.util.prefs.PreferenceChangeListener[] old
         9: .line 1035
            aload 2
            monitorexit
        10: goto 13
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: aload 2
            monitorexit
        12: athrow
        13: .line 1045
      StackMap locals:
      StackMap stack:
            invokestatic java.util.prefs.AbstractPreferences.startEventDispatchThreadIfNecessary:()V
        14: .line 1046
            return
        end local 1 // java.util.prefs.PreferenceChangeListener pcl
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Ljava/util/prefs/AbstractPreferences;
            0   15     1   pcl  Ljava/util/prefs/PreferenceChangeListener;
            6    9     3   old  [Ljava/util/prefs/PreferenceChangeListener;
      Exception table:
        from    to  target  type
           3    10      11  any
          11    12      11  any
    MethodParameters:
      Name  Flags
      pcl   

  public void removePreferenceChangeListener(java.util.prefs.PreferenceChangeListener);
    descriptor: (Ljava/util/prefs/PreferenceChangeListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.util.prefs.PreferenceChangeListener pcl
         0: .line 1049
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 1050
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.removed:Z
            ifeq 3
         2: .line 1051
            new java.lang.IllegalStateException
            dup
            ldc "Node has been removed."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 1052
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.prefListeners:[Ljava/util/prefs/PreferenceChangeListener;
            ifnull 4
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.prefListeners:[Ljava/util/prefs/PreferenceChangeListener;
            arraylength
            ifne 5
         4: .line 1053
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Listener not registered."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 1057
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.prefListeners:[Ljava/util/prefs/PreferenceChangeListener;
            arraylength
            iconst_1
            isub
            anewarray java.util.prefs.PreferenceChangeListener
         6: .line 1056
            astore 3 /* newPl */
        start local 3 // java.util.prefs.PreferenceChangeListener[] newPl
         7: .line 1058
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         8: .line 1059
            goto 10
         9: .line 1060
      StackMap locals: java.util.prefs.PreferenceChangeListener[] int
      StackMap stack:
            aload 3 /* newPl */
            iload 4 /* i */
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.prefListeners:[Ljava/util/prefs/PreferenceChangeListener;
            iload 4 /* i */
            iinc 4 /* i */ 1
            aaload
            aastore
        10: .line 1059
      StackMap locals:
      StackMap stack:
            iload 4 /* i */
            aload 3 /* newPl */
            arraylength
            if_icmpge 11
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.prefListeners:[Ljava/util/prefs/PreferenceChangeListener;
            iload 4 /* i */
            aaload
            aload 1 /* pcl */
            if_acmpne 9
        11: .line 1062
      StackMap locals:
      StackMap stack:
            iload 4 /* i */
            aload 3 /* newPl */
            arraylength
            if_icmpne 14
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.prefListeners:[Ljava/util/prefs/PreferenceChangeListener;
            iload 4 /* i */
            aaload
            aload 1 /* pcl */
            if_acmpeq 14
        12: .line 1063
            new java.lang.IllegalArgumentException
            dup
            ldc "Listener not registered."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 1065
      StackMap locals:
      StackMap stack:
            aload 3 /* newPl */
            iload 4 /* i */
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.prefListeners:[Ljava/util/prefs/PreferenceChangeListener;
            iinc 4 /* i */ 1
            iload 4 /* i */
            aaload
            aastore
        14: .line 1064
      StackMap locals:
      StackMap stack:
            iload 4 /* i */
            aload 3 /* newPl */
            arraylength
            if_icmplt 13
        15: .line 1066
            aload 0 /* this */
            aload 3 /* newPl */
            putfield java.util.prefs.AbstractPreferences.prefListeners:[Ljava/util/prefs/PreferenceChangeListener;
        end local 4 // int i
        end local 3 // java.util.prefs.PreferenceChangeListener[] newPl
        16: .line 1049
            aload 2
            monitorexit
        17: goto 20
      StackMap locals: java.util.prefs.AbstractPreferences java.util.prefs.PreferenceChangeListener java.lang.Object
      StackMap stack: java.lang.Throwable
        18: aload 2
            monitorexit
        19: athrow
        20: .line 1068
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.prefs.PreferenceChangeListener pcl
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   21     0   this  Ljava/util/prefs/AbstractPreferences;
            0   21     1    pcl  Ljava/util/prefs/PreferenceChangeListener;
            7   16     3  newPl  [Ljava/util/prefs/PreferenceChangeListener;
            8   16     4      i  I
      Exception table:
        from    to  target  type
           1    17      18  any
          18    19      18  any
    MethodParameters:
      Name  Flags
      pcl   

  public void addNodeChangeListener(java.util.prefs.NodeChangeListener);
    descriptor: (Ljava/util/prefs/NodeChangeListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.util.prefs.NodeChangeListener ncl
         0: .line 1071
            aload 1 /* ncl */
            ifnonnull 2
         1: .line 1072
            new java.lang.NullPointerException
            dup
            ldc "Change listener is null."
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1073
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         3: .line 1074
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.removed:Z
            ifeq 5
         4: .line 1075
            new java.lang.IllegalStateException
            dup
            ldc "Node has been removed."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 1078
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
            ifnonnull 9
         6: .line 1079
            aload 0 /* this */
            iconst_1
            anewarray java.util.prefs.NodeChangeListener
            putfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
         7: .line 1080
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
            iconst_0
            aload 1 /* ncl */
            aastore
         8: .line 1081
            goto 13
         9: .line 1082
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
            astore 3 /* old */
        start local 3 // java.util.prefs.NodeChangeListener[] old
        10: .line 1083
            aload 0 /* this */
            aload 3 /* old */
            arraylength
            iconst_1
            iadd
            anewarray java.util.prefs.NodeChangeListener
            putfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
        11: .line 1084
            aload 3 /* old */
            iconst_0
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
            iconst_0
            aload 3 /* old */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        12: .line 1085
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
            aload 3 /* old */
            arraylength
            aload 1 /* ncl */
            aastore
        end local 3 // java.util.prefs.NodeChangeListener[] old
        13: .line 1073
      StackMap locals:
      StackMap stack:
            aload 2
            monitorexit
        14: goto 17
      StackMap locals:
      StackMap stack: java.lang.Throwable
        15: aload 2
            monitorexit
        16: athrow
        17: .line 1088
      StackMap locals:
      StackMap stack:
            invokestatic java.util.prefs.AbstractPreferences.startEventDispatchThreadIfNecessary:()V
        18: .line 1089
            return
        end local 1 // java.util.prefs.NodeChangeListener ncl
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Ljava/util/prefs/AbstractPreferences;
            0   19     1   ncl  Ljava/util/prefs/NodeChangeListener;
           10   13     3   old  [Ljava/util/prefs/NodeChangeListener;
      Exception table:
        from    to  target  type
           3    14      15  any
          15    16      15  any
    MethodParameters:
      Name  Flags
      ncl   

  public void removeNodeChangeListener(java.util.prefs.NodeChangeListener);
    descriptor: (Ljava/util/prefs/NodeChangeListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.util.prefs.NodeChangeListener ncl
         0: .line 1092
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 1093
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.removed:Z
            ifeq 3
         2: .line 1094
            new java.lang.IllegalStateException
            dup
            ldc "Node has been removed."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 1095
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
            ifnull 4
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
            arraylength
            ifne 5
         4: .line 1096
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Listener not registered."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 1099
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         6: .line 1100
            goto 8
         7: .line 1101
      StackMap locals: int
      StackMap stack:
            iinc 3 /* i */ 1
         8: .line 1100
      StackMap locals:
      StackMap stack:
            iload 3 /* i */
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
            arraylength
            if_icmpge 9
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
            iload 3 /* i */
            aaload
            aload 1 /* ncl */
            if_acmpne 7
         9: .line 1102
      StackMap locals:
      StackMap stack:
            iload 3 /* i */
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
            arraylength
            if_icmpne 11
        10: .line 1103
            new java.lang.IllegalArgumentException
            dup
            ldc "Listener not registered."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        11: .line 1105
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
            arraylength
            iconst_1
            isub
            anewarray java.util.prefs.NodeChangeListener
        12: .line 1104
            astore 4 /* newNl */
        start local 4 // java.util.prefs.NodeChangeListener[] newNl
        13: .line 1106
            iload 3 /* i */
            ifeq 15
        14: .line 1107
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
            iconst_0
            aload 4 /* newNl */
            iconst_0
            iload 3 /* i */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        15: .line 1108
      StackMap locals: java.util.prefs.NodeChangeListener[]
      StackMap stack:
            iload 3 /* i */
            aload 4 /* newNl */
            arraylength
            if_icmpeq 19
        16: .line 1109
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
            iload 3 /* i */
            iconst_1
            iadd
        17: .line 1110
            aload 4 /* newNl */
            iload 3 /* i */
            aload 4 /* newNl */
            arraylength
            iload 3 /* i */
            isub
        18: .line 1109
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        19: .line 1111
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* newNl */
            putfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
        end local 4 // java.util.prefs.NodeChangeListener[] newNl
        end local 3 // int i
        20: .line 1092
            aload 2
            monitorexit
        21: goto 24
      StackMap locals: java.util.prefs.AbstractPreferences java.util.prefs.NodeChangeListener java.lang.Object
      StackMap stack: java.lang.Throwable
        22: aload 2
            monitorexit
        23: athrow
        24: .line 1113
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.prefs.NodeChangeListener ncl
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   25     0   this  Ljava/util/prefs/AbstractPreferences;
            0   25     1    ncl  Ljava/util/prefs/NodeChangeListener;
            6   20     3      i  I
           13   20     4  newNl  [Ljava/util/prefs/NodeChangeListener;
      Exception table:
        from    to  target  type
           1    21      22  any
          22    23      22  any
    MethodParameters:
      Name  Flags
      ncl   

  protected abstract void putSpi(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
       Name  Flags
      key    
      value  

  protected abstract java.lang.String getSpi(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      key   

  protected abstract void removeSpi(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      key   

  protected abstract void removeNodeSpi();
    descriptor: ()V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws java.util.prefs.BackingStoreException

  protected abstract java.lang.String[] keysSpi();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws java.util.prefs.BackingStoreException

  protected abstract java.lang.String[] childrenNamesSpi();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws java.util.prefs.BackingStoreException

  protected java.util.prefs.AbstractPreferences getChild(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/prefs/AbstractPreferences;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String nodeName
         0: .line 1257
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 1259
            aload 0 /* this */
            invokevirtual java.util.prefs.AbstractPreferences.childrenNames:()[Ljava/lang/String;
            astore 3 /* kidNames */
        start local 3 // java.lang.String[] kidNames
         2: .line 1260
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 8
         4: .line 1261
      StackMap locals: java.lang.Object java.lang.String[] int
      StackMap stack:
            aload 3 /* kidNames */
            iload 4 /* i */
            aaload
            aload 1 /* nodeName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         5: .line 1262
            aload 0 /* this */
            aload 3 /* kidNames */
            iload 4 /* i */
            aaload
            invokevirtual java.util.prefs.AbstractPreferences.childSpi:(Ljava/lang/String;)Ljava/util/prefs/AbstractPreferences;
            aload 2
            monitorexit
         6: areturn
         7: .line 1260
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            aload 3 /* kidNames */
            arraylength
            if_icmplt 4
        end local 4 // int i
        end local 3 // java.lang.String[] kidNames
         9: .line 1257
            aload 2
            monitorexit
        10: goto 13
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.String java.lang.Object
      StackMap stack: java.lang.Throwable
        11: aload 2
            monitorexit
        12: athrow
        13: .line 1264
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // java.lang.String nodeName
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   14     0      this  Ljava/util/prefs/AbstractPreferences;
            0   14     1  nodeName  Ljava/lang/String;
            2    9     3  kidNames  [Ljava/lang/String;
            3    9     4         i  I
      Exception table:
        from    to  target  type
           1     6      11  any
           7    10      11  any
          11    12      11  any
    Exceptions:
      throws java.util.prefs.BackingStoreException
    MethodParameters:
          Name  Flags
      nodeName  

  protected abstract java.util.prefs.AbstractPreferences childSpi(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/prefs/AbstractPreferences;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      name  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 1304
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual java.util.prefs.AbstractPreferences.isUserNode:()Z
            ifeq 1
            ldc "User"
            goto 2
      StackMap locals: java.util.prefs.AbstractPreferences
      StackMap stack: new 0 new 0
         1: ldc "System"
      StackMap locals: java.util.prefs.AbstractPreferences
      StackMap stack: new 0 new 0 java.lang.String
         2: invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         3: .line 1305
            ldc " Preference Node: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.util.prefs.AbstractPreferences.absolutePath:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 1304
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/prefs/AbstractPreferences;

  public void sync();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 1329
            aload 0 /* this */
            invokevirtual java.util.prefs.AbstractPreferences.sync2:()V
         1: .line 1330
            return
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/prefs/AbstractPreferences;
    Exceptions:
      throws java.util.prefs.BackingStoreException

  private void sync2();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 1335
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 1336
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.removed:Z
            ifeq 3
         2: .line 1337
            new java.lang.IllegalStateException
            dup
            ldc "Node has been removed"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 1338
      StackMap locals: java.util.prefs.AbstractPreferences top java.lang.Object
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.util.prefs.AbstractPreferences.syncSpi:()V
         4: .line 1339
            aload 0 /* this */
            invokevirtual java.util.prefs.AbstractPreferences.cachedChildren:()[Ljava/util/prefs/AbstractPreferences;
            astore 1 /* cachedKids */
        start local 1 // java.util.prefs.AbstractPreferences[] cachedKids
         5: .line 1335
            aload 2
            monitorexit
         6: goto 9
        end local 1 // java.util.prefs.AbstractPreferences[] cachedKids
      StackMap locals:
      StackMap stack: java.lang.Throwable
         7: aload 2
            monitorexit
         8: athrow
        start local 1 // java.util.prefs.AbstractPreferences[] cachedKids
         9: .line 1342
      StackMap locals: java.util.prefs.AbstractPreferences java.util.prefs.AbstractPreferences[]
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        10: goto 13
        11: .line 1343
      StackMap locals: int
      StackMap stack:
            aload 1 /* cachedKids */
            iload 2 /* i */
            aaload
            invokevirtual java.util.prefs.AbstractPreferences.sync2:()V
        12: .line 1342
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 2 /* i */
            aload 1 /* cachedKids */
            arraylength
            if_icmplt 11
        end local 2 // int i
        14: .line 1344
            return
        end local 1 // java.util.prefs.AbstractPreferences[] cachedKids
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   15     0        this  Ljava/util/prefs/AbstractPreferences;
            5    7     1  cachedKids  [Ljava/util/prefs/AbstractPreferences;
            9   15     1  cachedKids  [Ljava/util/prefs/AbstractPreferences;
           10   14     2           i  I
      Exception table:
        from    to  target  type
           1     6       7  any
           7     8       7  any
    Exceptions:
      throws java.util.prefs.BackingStoreException

  protected abstract void syncSpi();
    descriptor: ()V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws java.util.prefs.BackingStoreException

  public void flush();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 1389
            aload 0 /* this */
            invokevirtual java.util.prefs.AbstractPreferences.flush2:()V
         1: .line 1390
            return
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/prefs/AbstractPreferences;
    Exceptions:
      throws java.util.prefs.BackingStoreException

  private void flush2();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 1395
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 1396
            aload 0 /* this */
            invokevirtual java.util.prefs.AbstractPreferences.flushSpi:()V
         2: .line 1397
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.removed:Z
            ifeq 5
         3: .line 1398
            aload 2
            monitorexit
         4: return
         5: .line 1399
      StackMap locals: java.util.prefs.AbstractPreferences top java.lang.Object
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.util.prefs.AbstractPreferences.cachedChildren:()[Ljava/util/prefs/AbstractPreferences;
            astore 1 /* cachedKids */
        start local 1 // java.util.prefs.AbstractPreferences[] cachedKids
         6: .line 1395
            aload 2
            monitorexit
         7: goto 10
        end local 1 // java.util.prefs.AbstractPreferences[] cachedKids
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: aload 2
            monitorexit
         9: athrow
        start local 1 // java.util.prefs.AbstractPreferences[] cachedKids
        10: .line 1402
      StackMap locals: java.util.prefs.AbstractPreferences java.util.prefs.AbstractPreferences[]
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        11: goto 14
        12: .line 1403
      StackMap locals: int
      StackMap stack:
            aload 1 /* cachedKids */
            iload 2 /* i */
            aaload
            invokevirtual java.util.prefs.AbstractPreferences.flush2:()V
        13: .line 1402
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 2 /* i */
            aload 1 /* cachedKids */
            arraylength
            if_icmplt 12
        end local 2 // int i
        15: .line 1404
            return
        end local 1 // java.util.prefs.AbstractPreferences[] cachedKids
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   16     0        this  Ljava/util/prefs/AbstractPreferences;
            6    8     1  cachedKids  [Ljava/util/prefs/AbstractPreferences;
           10   16     1  cachedKids  [Ljava/util/prefs/AbstractPreferences;
           11   15     2           i  I
      Exception table:
        from    to  target  type
           1     4       8  any
           5     7       8  any
           8     9       8  any
    Exceptions:
      throws java.util.prefs.BackingStoreException

  protected abstract void flushSpi();
    descriptor: ()V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws java.util.prefs.BackingStoreException

  protected boolean isRemoved();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 1437
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 1438
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.removed:Z
            aload 1
            monitorexit
         2: ireturn
         3: .line 1437
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.Object
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
         4: athrow
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/prefs/AbstractPreferences;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any

  private static synchronized void startEventDispatchThreadIfNecessary();
    descriptor: ()V
    flags: (0x002a) ACC_PRIVATE, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=0, args_size=0
         0: .line 1521
            getstatic java.util.prefs.AbstractPreferences.eventDispatchThread:Ljava/lang/Thread;
            ifnonnull 4
         1: .line 1523
            new java.util.prefs.AbstractPreferences$EventDispatchThread
            dup
            invokespecial java.util.prefs.AbstractPreferences$EventDispatchThread.<init>:()V
            putstatic java.util.prefs.AbstractPreferences.eventDispatchThread:Ljava/lang/Thread;
         2: .line 1524
            getstatic java.util.prefs.AbstractPreferences.eventDispatchThread:Ljava/lang/Thread;
            iconst_1
            invokevirtual java.lang.Thread.setDaemon:(Z)V
         3: .line 1525
            getstatic java.util.prefs.AbstractPreferences.eventDispatchThread:Ljava/lang/Thread;
            invokevirtual java.lang.Thread.start:()V
         4: .line 1527
      StackMap locals:
      StackMap stack:
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  java.util.prefs.PreferenceChangeListener[] prefListeners();
    descriptor: ()[Ljava/util/prefs/PreferenceChangeListener;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 1536
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 1537
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.prefListeners:[Ljava/util/prefs/PreferenceChangeListener;
            aload 1
            monitorexit
         2: areturn
         3: .line 1536
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.Object
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
         4: athrow
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/prefs/AbstractPreferences;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any

  java.util.prefs.NodeChangeListener[] nodeListeners();
    descriptor: ()[Ljava/util/prefs/NodeChangeListener;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences this
         0: .line 1541
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.lock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 1542
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
            aload 1
            monitorexit
         2: areturn
         3: .line 1541
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.Object
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
         4: athrow
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/prefs/AbstractPreferences;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any

  private void enqueuePreferenceChangeEvent(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.lang.String key
        start local 2 // java.lang.String newValue
         0: .line 1552
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.prefListeners:[Ljava/util/prefs/PreferenceChangeListener;
            arraylength
            ifeq 8
         1: .line 1553
            getstatic java.util.prefs.AbstractPreferences.eventQueue:Ljava/util/List;
            dup
            astore 3
            monitorenter
         2: .line 1554
            getstatic java.util.prefs.AbstractPreferences.eventQueue:Ljava/util/List;
            new java.util.prefs.PreferenceChangeEvent
            dup
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* newValue */
            invokespecial java.util.prefs.PreferenceChangeEvent.<init>:(Ljava/util/prefs/Preferences;Ljava/lang/String;Ljava/lang/String;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 1555
            getstatic java.util.prefs.AbstractPreferences.eventQueue:Ljava/util/List;
            invokevirtual java.lang.Object.notify:()V
         4: .line 1553
            aload 3
            monitorexit
         5: goto 8
      StackMap locals: java.util.prefs.AbstractPreferences java.lang.String java.lang.String java.util.List
      StackMap stack: java.lang.Throwable
         6: aload 3
            monitorexit
         7: athrow
         8: .line 1558
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String newValue
        end local 1 // java.lang.String key
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Ljava/util/prefs/AbstractPreferences;
            0    9     1       key  Ljava/lang/String;
            0    9     2  newValue  Ljava/lang/String;
      Exception table:
        from    to  target  type
           2     5       6  any
           6     7       6  any
    MethodParameters:
          Name  Flags
      key       
      newValue  

  private void enqueueNodeAddedEvent(java.util.prefs.Preferences);
    descriptor: (Ljava/util/prefs/Preferences;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.util.prefs.Preferences child
         0: .line 1566
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
            arraylength
            ifeq 8
         1: .line 1567
            getstatic java.util.prefs.AbstractPreferences.eventQueue:Ljava/util/List;
            dup
            astore 2
            monitorenter
         2: .line 1568
            getstatic java.util.prefs.AbstractPreferences.eventQueue:Ljava/util/List;
            new java.util.prefs.AbstractPreferences$NodeAddedEvent
            dup
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* child */
            invokespecial java.util.prefs.AbstractPreferences$NodeAddedEvent.<init>:(Ljava/util/prefs/AbstractPreferences;Ljava/util/prefs/Preferences;Ljava/util/prefs/Preferences;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 1569
            getstatic java.util.prefs.AbstractPreferences.eventQueue:Ljava/util/List;
            invokevirtual java.lang.Object.notify:()V
         4: .line 1567
            aload 2
            monitorexit
         5: goto 8
      StackMap locals: java.util.prefs.AbstractPreferences java.util.prefs.Preferences java.util.List
      StackMap stack: java.lang.Throwable
         6: aload 2
            monitorexit
         7: athrow
         8: .line 1572
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.prefs.Preferences child
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Ljava/util/prefs/AbstractPreferences;
            0    9     1  child  Ljava/util/prefs/Preferences;
      Exception table:
        from    to  target  type
           2     5       6  any
           6     7       6  any
    MethodParameters:
       Name  Flags
      child  

  private void enqueueNodeRemovedEvent(java.util.prefs.Preferences);
    descriptor: (Ljava/util/prefs/Preferences;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.util.prefs.Preferences child
         0: .line 1580
            aload 0 /* this */
            getfield java.util.prefs.AbstractPreferences.nodeListeners:[Ljava/util/prefs/NodeChangeListener;
            arraylength
            ifeq 8
         1: .line 1581
            getstatic java.util.prefs.AbstractPreferences.eventQueue:Ljava/util/List;
            dup
            astore 2
            monitorenter
         2: .line 1582
            getstatic java.util.prefs.AbstractPreferences.eventQueue:Ljava/util/List;
            new java.util.prefs.AbstractPreferences$NodeRemovedEvent
            dup
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* child */
            invokespecial java.util.prefs.AbstractPreferences$NodeRemovedEvent.<init>:(Ljava/util/prefs/AbstractPreferences;Ljava/util/prefs/Preferences;Ljava/util/prefs/Preferences;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 1583
            getstatic java.util.prefs.AbstractPreferences.eventQueue:Ljava/util/List;
            invokevirtual java.lang.Object.notify:()V
         4: .line 1581
            aload 2
            monitorexit
         5: goto 8
      StackMap locals: java.util.prefs.AbstractPreferences java.util.prefs.Preferences java.util.List
      StackMap stack: java.lang.Throwable
         6: aload 2
            monitorexit
         7: athrow
         8: .line 1586
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.prefs.Preferences child
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Ljava/util/prefs/AbstractPreferences;
            0    9     1  child  Ljava/util/prefs/Preferences;
      Exception table:
        from    to  target  type
           2     5       6  any
           6     7       6  any
    MethodParameters:
       Name  Flags
      child  

  public void exportNode(java.io.OutputStream);
    descriptor: (Ljava/io/OutputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.io.OutputStream os
         0: .line 1601
            aload 1 /* os */
            aload 0 /* this */
            iconst_0
            invokestatic java.util.prefs.XmlSupport.export:(Ljava/io/OutputStream;Ljava/util/prefs/Preferences;Z)V
         1: .line 1602
            return
        end local 1 // java.io.OutputStream os
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/prefs/AbstractPreferences;
            0    2     1    os  Ljava/io/OutputStream;
    Exceptions:
      throws java.io.IOException, java.util.prefs.BackingStoreException
    MethodParameters:
      Name  Flags
      os    

  public void exportSubtree(java.io.OutputStream);
    descriptor: (Ljava/io/OutputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.util.prefs.AbstractPreferences this
        start local 1 // java.io.OutputStream os
         0: .line 1617
            aload 1 /* os */
            aload 0 /* this */
            iconst_1
            invokestatic java.util.prefs.XmlSupport.export:(Ljava/io/OutputStream;Ljava/util/prefs/Preferences;Z)V
         1: .line 1618
            return
        end local 1 // java.io.OutputStream os
        end local 0 // java.util.prefs.AbstractPreferences this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/prefs/AbstractPreferences;
            0    2     1    os  Ljava/io/OutputStream;
    Exceptions:
      throws java.io.IOException, java.util.prefs.BackingStoreException
    MethodParameters:
      Name  Flags
      os    
}
SourceFile: "AbstractPreferences.java"
NestMembers:
  java.util.prefs.AbstractPreferences$1  java.util.prefs.AbstractPreferences$EventDispatchThread  java.util.prefs.AbstractPreferences$NodeAddedEvent  java.util.prefs.AbstractPreferences$NodeRemovedEvent
InnerClasses:
  java.util.prefs.AbstractPreferences$1
  private EventDispatchThread = java.util.prefs.AbstractPreferences$EventDispatchThread of java.util.prefs.AbstractPreferences
  private NodeAddedEvent = java.util.prefs.AbstractPreferences$NodeAddedEvent of java.util.prefs.AbstractPreferences
  private NodeRemovedEvent = java.util.prefs.AbstractPreferences$NodeRemovedEvent of java.util.prefs.AbstractPreferences