public class javax.management.ObjectName implements java.lang.Comparable<javax.management.ObjectName>, javax.management.QueryExp
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.management.ObjectName
  super_class: java.lang.Object
{
  private static final long oldSerialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -5467795090068647408

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

  private static final java.io.ObjectStreamField[] oldSerialPersistentFields;
    descriptor: [Ljava/io/ObjectStreamField;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.io.ObjectStreamField[] newSerialPersistentFields;
    descriptor: [Ljava/io/ObjectStreamField;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

  private static final java.io.ObjectStreamField[] serialPersistentFields;
    descriptor: [Ljava/io/ObjectStreamField;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static boolean compat;
    descriptor: Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static final javax.management.ObjectName$Property[] _Empty_property_array;
    descriptor: [Ljavax/management/ObjectName$Property;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

  private transient javax.management.ObjectName$Property[] _kp_array;
    descriptor: [Ljavax/management/ObjectName$Property;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient javax.management.ObjectName$Property[] _ca_array;
    descriptor: [Ljavax/management/ObjectName$Property;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient int _domain_length;
    descriptor: I
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.util.Map<java.lang.String, java.lang.String> _propertyList;
    descriptor: Ljava/util/Map;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;

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

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

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

  public static final javax.management.ObjectName WILDCARD;
    descriptor: Ljavax/management/ObjectName;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=2, args_size=0
         0: .line 301
            bipush 6
            anewarray java.io.ObjectStreamField
            dup
            iconst_0
         1: .line 302
            new java.io.ObjectStreamField
            dup
            ldc "domain"
            ldc Ljava/lang/String;
            invokespecial java.io.ObjectStreamField.<init>:(Ljava/lang/String;Ljava/lang/Class;)V
            aastore
            dup
            iconst_1
         2: .line 303
            new java.io.ObjectStreamField
            dup
            ldc "propertyList"
            ldc Ljava/util/Hashtable;
            invokespecial java.io.ObjectStreamField.<init>:(Ljava/lang/String;Ljava/lang/Class;)V
            aastore
            dup
            iconst_2
         3: .line 304
            new java.io.ObjectStreamField
            dup
            ldc "propertyListString"
            ldc Ljava/lang/String;
            invokespecial java.io.ObjectStreamField.<init>:(Ljava/lang/String;Ljava/lang/Class;)V
            aastore
            dup
            iconst_3
         4: .line 305
            new java.io.ObjectStreamField
            dup
            ldc "canonicalName"
            ldc Ljava/lang/String;
            invokespecial java.io.ObjectStreamField.<init>:(Ljava/lang/String;Ljava/lang/Class;)V
            aastore
            dup
            iconst_4
         5: .line 306
            new java.io.ObjectStreamField
            dup
            ldc "pattern"
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            invokespecial java.io.ObjectStreamField.<init>:(Ljava/lang/String;Ljava/lang/Class;)V
            aastore
            dup
            iconst_5
         6: .line 307
            new java.io.ObjectStreamField
            dup
            ldc "propertyPattern"
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            invokespecial java.io.ObjectStreamField.<init>:(Ljava/lang/String;Ljava/lang/Class;)V
            aastore
         7: .line 300
            putstatic javax.management.ObjectName.oldSerialPersistentFields:[Ljava/io/ObjectStreamField;
         8: .line 311
            iconst_0
            anewarray java.io.ObjectStreamField
            putstatic javax.management.ObjectName.newSerialPersistentFields:[Ljava/io/ObjectStreamField;
         9: .line 316
            iconst_0
            putstatic javax.management.ObjectName.compat:Z
        10: .line 319
            new com.sun.jmx.mbeanserver.GetPropertyAction
            dup
            ldc "jmx.serial.form"
            invokespecial com.sun.jmx.mbeanserver.GetPropertyAction.<init>:(Ljava/lang/String;)V
            astore 0 /* act */
        start local 0 // com.sun.jmx.mbeanserver.GetPropertyAction act
        11: .line 320
            aload 0 /* act */
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 1 /* form */
        start local 1 // java.lang.String form
        12: .line 321
            aload 1 /* form */
            ifnull 13
            aload 1 /* form */
            ldc "1.0"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 13
            iconst_1
            goto 14
      StackMap locals: com.sun.jmx.mbeanserver.GetPropertyAction java.lang.String
      StackMap stack:
        13: iconst_0
      StackMap locals:
      StackMap stack: int
        14: putstatic javax.management.ObjectName.compat:Z
        end local 1 // java.lang.String form
        end local 0 // com.sun.jmx.mbeanserver.GetPropertyAction act
        15: .line 322
            goto 17
      StackMap locals:
      StackMap stack: java.lang.Exception
        16: pop
        17: .line 325
      StackMap locals:
      StackMap stack:
            getstatic javax.management.ObjectName.compat:Z
            ifeq 21
        18: .line 326
            getstatic javax.management.ObjectName.oldSerialPersistentFields:[Ljava/io/ObjectStreamField;
            putstatic javax.management.ObjectName.serialPersistentFields:[Ljava/io/ObjectStreamField;
        19: .line 327
            ldc -5467795090068647408
            putstatic javax.management.ObjectName.serialVersionUID:J
        20: .line 328
            goto 23
        21: .line 329
      StackMap locals:
      StackMap stack:
            getstatic javax.management.ObjectName.newSerialPersistentFields:[Ljava/io/ObjectStreamField;
            putstatic javax.management.ObjectName.serialPersistentFields:[Ljava/io/ObjectStreamField;
        22: .line 330
            ldc 1081892073854801359
            putstatic javax.management.ObjectName.serialVersionUID:J
        23: .line 342
      StackMap locals:
      StackMap stack:
            iconst_0
            anewarray javax.management.ObjectName$Property
            putstatic javax.management.ObjectName._Empty_property_array:[Ljavax/management/ObjectName$Property;
        24: .line 1958
            new javax.management.ObjectName
            dup
            ldc "*:*"
            invokespecial javax.management.ObjectName.<init>:(Ljava/lang/String;)V
            putstatic javax.management.ObjectName.WILDCARD:Ljavax/management/ObjectName;
        25: .line 1959
            goto 28
      StackMap locals:
      StackMap stack: javax.management.MalformedObjectNameException
        26: astore 0 /* e */
        start local 0 // javax.management.MalformedObjectNameException e
        27: .line 1960
            new java.lang.Error
            dup
            ldc "Can't initialize wildcard name"
            aload 0 /* e */
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 0 // javax.management.MalformedObjectNameException e
        28: .line 1962
      StackMap locals:
      StackMap stack:
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
           11   15     0   act  Lcom/sun/jmx/mbeanserver/GetPropertyAction;
           12   15     1  form  Ljava/lang/String;
           27   28     0     e  Ljavax/management/MalformedObjectNameException;
      Exception table:
        from    to  target  type
          10    15      16  Class java.lang.Exception
          24    25      26  Class javax.management.MalformedObjectNameException

  private void construct(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=22, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // java.lang.String name
         0: .line 419
            aload 1 /* name */
            ifnonnull 2
         1: .line 420
            new java.lang.NullPointerException
            dup
            ldc "name cannot be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 423
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            invokevirtual java.lang.String.length:()I
            ifne 12
         3: .line 425
            aload 0 /* this */
            ldc "*:*"
            putfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
         4: .line 426
            aload 0 /* this */
            getstatic javax.management.ObjectName._Empty_property_array:[Ljavax/management/ObjectName$Property;
            putfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
         5: .line 427
            aload 0 /* this */
            getstatic javax.management.ObjectName._Empty_property_array:[Ljavax/management/ObjectName$Property;
            putfield javax.management.ObjectName._ca_array:[Ljavax/management/ObjectName$Property;
         6: .line 428
            aload 0 /* this */
            iconst_1
            putfield javax.management.ObjectName._domain_length:I
         7: .line 429
            aload 0 /* this */
            aconst_null
            putfield javax.management.ObjectName._propertyList:Ljava/util/Map;
         8: .line 430
            aload 0 /* this */
            iconst_1
            putfield javax.management.ObjectName._domain_pattern:Z
         9: .line 431
            aload 0 /* this */
            iconst_1
            putfield javax.management.ObjectName._property_list_pattern:Z
        10: .line 432
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._property_value_pattern:Z
        11: .line 433
            return
        12: .line 437
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 2 /* name_chars */
        start local 2 // char[] name_chars
        13: .line 438
            aload 2 /* name_chars */
            arraylength
            istore 3 /* len */
        start local 3 // int len
        14: .line 439
            iload 3 /* len */
            newarray 5
            astore 4 /* canonical_chars */
        start local 4 // char[] canonical_chars
        15: .line 441
            iconst_0
            istore 5 /* cname_index */
        start local 5 // int cname_index
        16: .line 442
            iconst_0
            istore 6 /* index */
        start local 6 // int index
        17: .line 447
            goto 37
        18: .line 448
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int
      StackMap stack:
            aload 2 /* name_chars */
            iload 6 /* index */
            caload
            dup
            istore 7 /* c */
        start local 7 // char c
        19: lookupswitch { // 5
                   10: 30
                   42: 33
                   58: 20
                   61: 22
                   63: 33
              default: 36
          }
        20: .line 450
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 6 /* index */
            iinc 6 /* index */ 1
            putfield javax.management.ObjectName._domain_length:I
        21: .line 451
            goto 38
        22: .line 460
      StackMap locals:
      StackMap stack:
            iinc 6 /* index */ 1
            iload 6 /* index */
            istore 9 /* i */
        start local 9 // int i
        23: .line 461
            goto 28
        24: .line 462
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int top int
      StackMap stack:
            iload 9 /* i */
            iload 3 /* len */
            if_icmpne 28
        25: .line 463
            new javax.management.MalformedObjectNameException
            dup
        26: .line 464
            ldc "Domain part must be specified"
        27: .line 463
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        28: .line 461
      StackMap locals:
      StackMap stack:
            iload 9 /* i */
            iload 3 /* len */
            if_icmpge 37
            aload 2 /* name_chars */
            iload 9 /* i */
            iinc 9 /* i */ 1
            caload
            bipush 58
            if_icmpne 24
        29: .line 465
            goto 37
        end local 9 // int i
        30: .line 467
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int
      StackMap stack:
            new javax.management.MalformedObjectNameException
            dup
        31: .line 468
            ldc "Invalid character '\\n' in domain name"
        32: .line 467
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        33: .line 471
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield javax.management.ObjectName._domain_pattern:Z
        34: .line 472
            iinc 6 /* index */ 1
        35: .line 473
            goto 37
        36: .line 475
      StackMap locals:
      StackMap stack:
            iinc 6 /* index */ 1
        end local 7 // char c
        37: .line 447
      StackMap locals:
      StackMap stack:
            iload 6 /* index */
            iload 3 /* len */
            if_icmplt 18
        38: .line 481
      StackMap locals:
      StackMap stack:
            iload 6 /* index */
            iload 3 /* len */
            if_icmpne 42
        39: .line 482
            new javax.management.MalformedObjectNameException
            dup
        40: .line 483
            ldc "Key properties cannot be empty"
        41: .line 482
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        42: .line 486
      StackMap locals:
      StackMap stack:
            aload 2 /* name_chars */
            iconst_0
            aload 4 /* canonical_chars */
            iconst_0
            aload 0 /* this */
            getfield javax.management.ObjectName._domain_length:I
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        43: .line 487
            aload 4 /* canonical_chars */
            aload 0 /* this */
            getfield javax.management.ObjectName._domain_length:I
            bipush 58
            castore
        44: .line 488
            aload 0 /* this */
            getfield javax.management.ObjectName._domain_length:I
            iconst_1
            iadd
            istore 5 /* cname_index */
        45: .line 492
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 10 /* keys_map */
        start local 10 // java.util.Map keys_map
        46: .line 496
            iconst_0
            istore 14 /* property_index */
        start local 14 // int property_index
        47: .line 500
            bipush 10
            anewarray java.lang.String
            astore 11 /* keys */
        start local 11 // java.lang.String[] keys
        48: .line 501
            aload 0 /* this */
            bipush 10
            anewarray javax.management.ObjectName$Property
            putfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
        49: .line 502
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._property_list_pattern:Z
        50: .line 503
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._property_value_pattern:Z
        51: .line 505
            goto 166
        52: .line 506
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int top top top java.util.Map java.lang.String[] top top int
      StackMap stack:
            aload 2 /* name_chars */
            iload 6 /* index */
            caload
            istore 7 /* c */
        start local 7 // char c
        53: .line 509
            iload 7 /* c */
            bipush 42
            if_icmpne 71
        54: .line 510
            aload 0 /* this */
            getfield javax.management.ObjectName._property_list_pattern:Z
            ifeq 58
        55: .line 511
            new javax.management.MalformedObjectNameException
            dup
        56: .line 512
            ldc "Cannot have several '*' characters in pattern property list"
        57: .line 511
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        58: .line 515
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int top top java.util.Map java.lang.String[] top top int
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield javax.management.ObjectName._property_list_pattern:Z
        59: .line 516
            iinc 6 /* index */ 1
            iload 6 /* index */
            iload 3 /* len */
            if_icmpge 63
            aload 2 /* name_chars */
            iload 6 /* index */
            caload
            bipush 44
            if_icmpeq 63
        60: .line 517
            new javax.management.MalformedObjectNameException
            dup
        61: .line 518
            ldc "Invalid character found after '*': end of name or ',' expected"
        62: .line 517
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        63: .line 520
      StackMap locals:
      StackMap stack:
            iload 6 /* index */
            iload 3 /* len */
            if_icmpne 69
        64: .line 521
            iload 14 /* property_index */
            ifne 167
        65: .line 523
            aload 0 /* this */
            getstatic javax.management.ObjectName._Empty_property_array:[Ljavax/management/ObjectName$Property;
            putfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
        66: .line 524
            aload 0 /* this */
            getstatic javax.management.ObjectName._Empty_property_array:[Ljavax/management/ObjectName$Property;
            putfield javax.management.ObjectName._ca_array:[Ljavax/management/ObjectName$Property;
        67: .line 525
            aload 0 /* this */
            invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
            putfield javax.management.ObjectName._propertyList:Ljava/util/Map;
        68: .line 527
            goto 167
        69: .line 530
      StackMap locals:
      StackMap stack:
            iinc 6 /* index */ 1
        70: .line 531
            goto 166
        71: .line 537
      StackMap locals:
      StackMap stack:
            iload 6 /* index */
            istore 15 /* in_index */
        start local 15 // int in_index
        72: .line 538
            iload 15 /* in_index */
            istore 16 /* key_index */
        start local 16 // int key_index
        73: .line 539
            aload 2 /* name_chars */
            iload 15 /* in_index */
            caload
            bipush 61
            if_icmpne 84
        74: .line 540
            new javax.management.MalformedObjectNameException
            dup
            ldc "Invalid key (empty)"
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        start local 8 // char c1
        75: .line 542
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int int top java.util.Map java.lang.String[] top top int int int
      StackMap stack:
            iload 8 /* c1 */
            lookupswitch { // 5
                   10: 76
                   42: 76
                   44: 76
                   58: 76
                   63: 76
              default: 84
          }
        76: .line 549
      StackMap locals:
      StackMap stack:
            iload 8 /* c1 */
            bipush 10
            if_icmpne 77
            ldc "\\n"
            goto 78
      StackMap locals:
      StackMap stack:
        77: new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            iload 8 /* c1 */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        78: astore 20 /* ichar */
        start local 20 // java.lang.String ichar
        79: .line 550
            new javax.management.MalformedObjectNameException
            dup
        80: .line 551
            new java.lang.StringBuilder
            dup
            ldc "Invalid character '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 20 /* ichar */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        81: .line 552
            ldc "' in key part of property"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        82: .line 551
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        83: .line 550
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        end local 20 // java.lang.String ichar
        end local 8 // char c1
        84: .line 541
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int top top java.util.Map java.lang.String[] top top int int int
      StackMap stack:
            iload 15 /* in_index */
            iload 3 /* len */
            if_icmpge 86
            aload 2 /* name_chars */
            iload 15 /* in_index */
            iinc 15 /* in_index */ 1
            caload
            dup
            istore 8 /* c1 */
        start local 8 // char c1
        85: bipush 61
            if_icmpne 75
        end local 8 // char c1
        86: .line 554
      StackMap locals:
      StackMap stack:
            aload 2 /* name_chars */
            iload 15 /* in_index */
            iconst_1
            isub
            caload
            bipush 61
            if_icmpeq 90
        87: .line 555
            new javax.management.MalformedObjectNameException
            dup
        88: .line 556
            ldc "Unterminated key property part"
        89: .line 555
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        90: .line 557
      StackMap locals:
      StackMap stack:
            iload 15 /* in_index */
            istore 18 /* value_index */
        start local 18 // int value_index
        91: .line 558
            iload 18 /* value_index */
            iload 16 /* key_index */
            isub
            iconst_1
            isub
            istore 17 /* key_length */
        start local 17 // int key_length
        92: .line 561
            iconst_0
            istore 20 /* value_pattern */
        start local 20 // boolean value_pattern
        93: .line 562
            iload 15 /* in_index */
            iload 3 /* len */
            if_icmpge 124
            aload 2 /* name_chars */
            iload 15 /* in_index */
            caload
            bipush 34
            if_icmpne 124
        94: .line 563
            iconst_1
            istore 13 /* quoted_value */
        start local 13 // boolean quoted_value
        95: .line 566
            goto 115
        start local 8 // char c1
        96: .line 569
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int int top java.util.Map java.lang.String[] top int int int int int int top int
      StackMap stack:
            iload 8 /* c1 */
            bipush 92
            if_icmpne 109
        97: .line 570
            iinc 15 /* in_index */ 1
            iload 15 /* in_index */
            iload 3 /* len */
            if_icmpne 101
        98: .line 571
            new javax.management.MalformedObjectNameException
            dup
        99: .line 572
            ldc "Unterminated quoted value"
       100: .line 571
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
       101: .line 573
      StackMap locals:
      StackMap stack:
            aload 2 /* name_chars */
            iload 15 /* in_index */
            caload
            dup
            istore 8 /* c1 */
            lookupswitch { // 5
                   34: 102
                   42: 102
                   63: 102
                   92: 102
                  110: 102
              default: 103
          }
       102: .line 579
      StackMap locals:
      StackMap stack:
            goto 115
       103: .line 581
      StackMap locals:
      StackMap stack:
            new javax.management.MalformedObjectNameException
            dup
       104: .line 582
            new java.lang.StringBuilder
            dup
            ldc "Invalid escape sequence '\\"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
       105: .line 583
            iload 8 /* c1 */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "' in quoted value"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
       106: .line 582
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       107: .line 581
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
       108: .line 585
      StackMap locals:
      StackMap stack:
            goto 115
      StackMap locals:
      StackMap stack:
       109: iload 8 /* c1 */
            bipush 10
            if_icmpne 113
       110: .line 586
            new javax.management.MalformedObjectNameException
            dup
       111: .line 587
            ldc "Newline in quoted value"
       112: .line 586
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
       113: .line 589
      StackMap locals:
      StackMap stack:
            iload 8 /* c1 */
            lookupswitch { // 2
                   42: 114
                   63: 114
              default: 115
          }
       114: .line 592
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 20 /* value_pattern */
        end local 8 // char c1
       115: .line 566
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int top top java.util.Map java.lang.String[] top int int int int int int top int
      StackMap stack:
            iinc 15 /* in_index */ 1
            iload 15 /* in_index */
            iload 3 /* len */
            if_icmpge 118
       116: .line 567
            aload 2 /* name_chars */
            iload 15 /* in_index */
            caload
            dup
            istore 8 /* c1 */
        start local 8 // char c1
       117: bipush 34
            if_icmpne 96
        end local 8 // char c1
       118: .line 597
      StackMap locals:
      StackMap stack:
            iload 15 /* in_index */
            iload 3 /* len */
            if_icmpne 122
       119: .line 598
            new javax.management.MalformedObjectNameException
            dup
       120: .line 599
            ldc "Unterminated quoted value"
       121: .line 598
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
       122: .line 600
      StackMap locals:
      StackMap stack:
            iinc 15 /* in_index */ 1
            iload 15 /* in_index */
            iload 18 /* value_index */
            isub
            istore 19 /* value_length */
        start local 19 // int value_length
       123: .line 601
            goto 141
        end local 19 // int value_length
        end local 13 // boolean quoted_value
       124: .line 603
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int top top java.util.Map java.lang.String[] top top int int int int int top int
      StackMap stack:
            iconst_0
            istore 13 /* quoted_value */
        start local 13 // boolean quoted_value
       125: .line 604
            goto 138
        start local 8 // char c1
       126: .line 605
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int int top java.util.Map java.lang.String[] top int int int int int int top int
      StackMap stack:
            iload 8 /* c1 */
            lookupswitch { // 6
                   10: 130
                   34: 130
                   42: 127
                   58: 130
                   61: 130
                   63: 127
              default: 137
          }
       127: .line 609
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 20 /* value_pattern */
       128: .line 610
            iinc 15 /* in_index */ 1
       129: .line 611
            goto 138
       130: .line 616
      StackMap locals:
      StackMap stack:
            iload 8 /* c1 */
            bipush 10
            if_icmpne 131
            goto 132
      StackMap locals:
      StackMap stack:
       131: new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            iload 8 /* c1 */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            pop
       132: .line 617
      StackMap locals:
      StackMap stack:
            new javax.management.MalformedObjectNameException
            dup
       133: .line 618
            new java.lang.StringBuilder
            dup
            ldc "Invalid character '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 8 /* c1 */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
       134: .line 619
            ldc "' in value part of property"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
       135: .line 618
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       136: .line 617
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
       137: .line 621
      StackMap locals:
      StackMap stack:
            iinc 15 /* in_index */ 1
        end local 8 // char c1
       138: .line 604
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int top top java.util.Map java.lang.String[] top int int int int int int top int
      StackMap stack:
            iload 15 /* in_index */
            iload 3 /* len */
            if_icmpge 140
            aload 2 /* name_chars */
            iload 15 /* in_index */
            caload
            dup
            istore 8 /* c1 */
        start local 8 // char c1
       139: bipush 44
            if_icmpne 126
        end local 8 // char c1
       140: .line 624
      StackMap locals:
      StackMap stack:
            iload 15 /* in_index */
            iload 18 /* value_index */
            isub
            istore 19 /* value_length */
        start local 19 // int value_length
       141: .line 628
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int top top java.util.Map java.lang.String[] top int int int int int int int int
      StackMap stack:
            iload 15 /* in_index */
            iload 3 /* len */
            iconst_1
            isub
            if_icmpne 151
       142: .line 629
            iload 13 /* quoted_value */
            ifeq 148
       143: .line 630
            new javax.management.MalformedObjectNameException
            dup
       144: .line 631
            new java.lang.StringBuilder
            dup
            ldc "Invalid ending character `"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
       145: .line 632
            aload 2 /* name_chars */
            iload 15 /* in_index */
            caload
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
       146: .line 631
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       147: .line 630
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
       148: .line 633
      StackMap locals:
      StackMap stack:
            new javax.management.MalformedObjectNameException
            dup
       149: .line 634
            ldc "Invalid ending comma"
       150: .line 633
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
       151: .line 635
      StackMap locals:
      StackMap stack:
            iinc 15 /* in_index */ 1
       152: .line 638
            iload 20 /* value_pattern */
            ifne 155
       153: .line 639
            new javax.management.ObjectName$Property
            dup
            iload 16 /* key_index */
            iload 17 /* key_length */
            iload 19 /* value_length */
            invokespecial javax.management.ObjectName$Property.<init>:(III)V
            astore 9 /* prop */
        start local 9 // javax.management.ObjectName$Property prop
       154: .line 640
            goto 157
        end local 9 // javax.management.ObjectName$Property prop
       155: .line 641
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield javax.management.ObjectName._property_value_pattern:Z
       156: .line 642
            new javax.management.ObjectName$PatternProperty
            dup
            iload 16 /* key_index */
            iload 17 /* key_length */
            iload 19 /* value_length */
            invokespecial javax.management.ObjectName$PatternProperty.<init>:(III)V
            astore 9 /* prop */
        start local 9 // javax.management.ObjectName$Property prop
       157: .line 644
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int top javax.management.ObjectName$Property java.util.Map java.lang.String[] top int int int int int int int int
      StackMap stack:
            aload 1 /* name */
            iload 16 /* key_index */
            iload 16 /* key_index */
            iload 17 /* key_length */
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 12 /* key_name */
        start local 12 // java.lang.String key_name
       158: .line 646
            iload 14 /* property_index */
            aload 11 /* keys */
            arraylength
            if_icmpne 162
       159: .line 647
            iload 14 /* property_index */
            bipush 10
            iadd
            anewarray java.lang.String
            astore 21 /* tmp_string_array */
        start local 21 // java.lang.String[] tmp_string_array
       160: .line 648
            aload 11 /* keys */
            iconst_0
            aload 21 /* tmp_string_array */
            iconst_0
            iload 14 /* property_index */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
       161: .line 649
            aload 21 /* tmp_string_array */
            astore 11 /* keys */
        end local 21 // java.lang.String[] tmp_string_array
       162: .line 651
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int top javax.management.ObjectName$Property java.util.Map java.lang.String[] java.lang.String int int int int int int int int
      StackMap stack:
            aload 11 /* keys */
            iload 14 /* property_index */
            aload 12 /* key_name */
            aastore
       163: .line 653
            aload 0 /* this */
            aload 9 /* prop */
            iload 14 /* property_index */
            aload 10 /* keys_map */
            aload 12 /* key_name */
            invokevirtual javax.management.ObjectName.addProperty:(Ljavax/management/ObjectName$Property;ILjava/util/Map;Ljava/lang/String;)V
       164: .line 654
            iinc 14 /* property_index */ 1
       165: .line 655
            iload 15 /* in_index */
            istore 6 /* index */
        end local 20 // boolean value_pattern
        end local 19 // int value_length
        end local 18 // int value_index
        end local 17 // int key_length
        end local 16 // int key_index
        end local 15 // int in_index
        end local 13 // boolean quoted_value
        end local 12 // java.lang.String key_name
        end local 9 // javax.management.ObjectName$Property prop
        end local 7 // char c
       166: .line 505
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int top top top java.util.Map java.lang.String[] top top int
      StackMap stack:
            iload 6 /* index */
            iload 3 /* len */
            if_icmplt 52
       167: .line 659
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* name_chars */
            aload 4 /* canonical_chars */
            aload 11 /* keys */
       168: .line 660
            aload 10 /* keys_map */
            iload 5 /* cname_index */
            iload 14 /* property_index */
       169: .line 659
            invokevirtual javax.management.ObjectName.setCanonicalName:([C[C[Ljava/lang/String;Ljava/util/Map;II)V
       170: .line 661
            return
        end local 14 // int property_index
        end local 11 // java.lang.String[] keys
        end local 10 // java.util.Map keys_map
        end local 6 // int index
        end local 5 // int cname_index
        end local 4 // char[] canonical_chars
        end local 3 // int len
        end local 2 // char[] name_chars
        end local 1 // java.lang.String name
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0  171     0              this  Ljavax/management/ObjectName;
            0  171     1              name  Ljava/lang/String;
           13  171     2        name_chars  [C
           14  171     3               len  I
           15  171     4   canonical_chars  [C
           16  171     5       cname_index  I
           17  171     6             index  I
           19   37     7                 c  C
           53  166     7                 c  C
           75   84     8                c1  C
           85   86     8                c1  C
           96  115     8                c1  C
          117  118     8                c1  C
          126  138     8                c1  C
          139  140     8                c1  C
           23   30     9                 i  I
          154  155     9              prop  Ljavax/management/ObjectName$Property;
          157  166     9              prop  Ljavax/management/ObjectName$Property;
           46  171    10          keys_map  Ljava/util/Map<Ljava/lang/String;Ljavax/management/ObjectName$Property;>;
           48  171    11              keys  [Ljava/lang/String;
          158  166    12          key_name  Ljava/lang/String;
           95  124    13      quoted_value  Z
          125  166    13      quoted_value  Z
           47  171    14    property_index  I
           72  166    15          in_index  I
           73  166    16         key_index  I
           92  166    17        key_length  I
           91  166    18       value_index  I
          123  124    19      value_length  I
          141  166    19      value_length  I
           79   84    20             ichar  Ljava/lang/String;
           93  166    20     value_pattern  Z
          160  162    21  tmp_string_array  [Ljava/lang/String;
    Exceptions:
      throws javax.management.MalformedObjectNameException, java.lang.NullPointerException
    MethodParameters:
      Name  Flags
      name  

  private void construct(java.lang.String, java.util.Map<java.lang.String, java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/util/Map;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=15, args_size=3
        start local 0 // javax.management.ObjectName this
        start local 1 // java.lang.String domain
        start local 2 // java.util.Map props
         0: .line 679
            aload 1 /* domain */
            ifnonnull 2
         1: .line 680
            new java.lang.NullPointerException
            dup
            ldc "domain cannot be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 683
      StackMap locals:
      StackMap stack:
            aload 2 /* props */
            ifnonnull 4
         3: .line 684
            new java.lang.NullPointerException
            dup
            ldc "key property list cannot be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 687
      StackMap locals:
      StackMap stack:
            aload 2 /* props */
            invokeinterface java.util.Map.isEmpty:()Z
            ifeq 8
         5: .line 688
            new javax.management.MalformedObjectNameException
            dup
         6: .line 689
            ldc "key property list cannot be empty"
         7: .line 688
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 692
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* domain */
            invokevirtual javax.management.ObjectName.isDomain:(Ljava/lang/String;)Z
            ifne 10
         9: .line 693
            new javax.management.MalformedObjectNameException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid domain: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* domain */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 696
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 3 /* sb */
        start local 3 // java.lang.StringBuilder sb
        11: .line 697
            aload 3 /* sb */
            aload 1 /* domain */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        12: .line 698
            aload 0 /* this */
            aload 1 /* domain */
            invokevirtual java.lang.String.length:()I
            putfield javax.management.ObjectName._domain_length:I
        13: .line 701
            aload 2 /* props */
            invokeinterface java.util.Map.size:()I
            istore 4 /* nb_props */
        start local 4 // int nb_props
        14: .line 702
            aload 0 /* this */
            iload 4 /* nb_props */
            anewarray javax.management.ObjectName$Property
            putfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
        15: .line 704
            iload 4 /* nb_props */
            anewarray java.lang.String
            astore 5 /* keys */
        start local 5 // java.lang.String[] keys
        16: .line 705
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 6 /* keys_map */
        start local 6 // java.util.Map keys_map
        17: .line 708
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        18: .line 709
            aload 2 /* props */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 11
            goto 47
      StackMap locals: javax.management.ObjectName java.lang.String java.util.Map java.lang.StringBuilder int java.lang.String[] java.util.Map top top int top java.util.Iterator
      StackMap stack:
        19: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 10 /* entry */
        start local 10 // java.util.Map$Entry entry
        20: .line 710
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 22
        21: .line 711
            aload 3 /* sb */
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        22: .line 712
      StackMap locals: javax.management.ObjectName java.lang.String java.util.Map java.lang.StringBuilder int java.lang.String[] java.util.Map top top int java.util.Map$Entry java.util.Iterator
      StackMap stack:
            aload 10 /* entry */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 12 /* key */
        start local 12 // java.lang.String key
        23: .line 715
            aload 10 /* entry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 13 /* value */
        start local 13 // java.lang.String value
        24: .line 716
            goto 27
        end local 13 // java.lang.String value
      StackMap locals: javax.management.ObjectName java.lang.String java.util.Map java.lang.StringBuilder int java.lang.String[] java.util.Map top top int java.util.Map$Entry java.util.Iterator java.lang.String
      StackMap stack: java.lang.ClassCastException
        25: astore 14 /* e */
        start local 14 // java.lang.ClassCastException e
        26: .line 717
            new javax.management.MalformedObjectNameException
            dup
            aload 14 /* e */
            invokevirtual java.lang.ClassCastException.getMessage:()Ljava/lang/String;
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        end local 14 // java.lang.ClassCastException e
        start local 13 // java.lang.String value
        27: .line 719
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            istore 8 /* key_index */
        start local 8 // int key_index
        28: .line 720
            aload 12 /* key */
            invokestatic javax.management.ObjectName.checkKey:(Ljava/lang/String;)V
        29: .line 721
            aload 3 /* sb */
            aload 12 /* key */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        30: .line 722
            aload 5 /* keys */
            iload 9 /* i */
            aload 12 /* key */
            aastore
        31: .line 723
            aload 3 /* sb */
            ldc "="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        32: .line 724
            aload 13 /* value */
            invokestatic javax.management.ObjectName.checkValue:(Ljava/lang/String;)Z
            istore 14 /* value_pattern */
        start local 14 // boolean value_pattern
        33: .line 725
            aload 3 /* sb */
            aload 13 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        34: .line 726
            iload 14 /* value_pattern */
            ifne 40
        35: .line 727
            new javax.management.ObjectName$Property
            dup
            iload 8 /* key_index */
        36: .line 728
            aload 12 /* key */
            invokevirtual java.lang.String.length:()I
        37: .line 729
            aload 13 /* value */
            invokevirtual java.lang.String.length:()I
        38: .line 727
            invokespecial javax.management.ObjectName$Property.<init>:(III)V
            astore 7 /* prop */
        start local 7 // javax.management.ObjectName$Property prop
        39: .line 730
            goto 45
        end local 7 // javax.management.ObjectName$Property prop
        40: .line 731
      StackMap locals: javax.management.ObjectName java.lang.String java.util.Map java.lang.StringBuilder int java.lang.String[] java.util.Map top int int java.util.Map$Entry java.util.Iterator java.lang.String java.lang.String int
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield javax.management.ObjectName._property_value_pattern:Z
        41: .line 732
            new javax.management.ObjectName$PatternProperty
            dup
            iload 8 /* key_index */
        42: .line 733
            aload 12 /* key */
            invokevirtual java.lang.String.length:()I
        43: .line 734
            aload 13 /* value */
            invokevirtual java.lang.String.length:()I
        44: .line 732
            invokespecial javax.management.ObjectName$PatternProperty.<init>:(III)V
            astore 7 /* prop */
        start local 7 // javax.management.ObjectName$Property prop
        45: .line 736
      StackMap locals: javax.management.ObjectName java.lang.String java.util.Map java.lang.StringBuilder int java.lang.String[] java.util.Map javax.management.ObjectName$Property int int java.util.Map$Entry java.util.Iterator java.lang.String java.lang.String int
      StackMap stack:
            aload 0 /* this */
            aload 7 /* prop */
            iload 9 /* i */
            aload 6 /* keys_map */
            aload 12 /* key */
            invokevirtual javax.management.ObjectName.addProperty:(Ljavax/management/ObjectName$Property;ILjava/util/Map;Ljava/lang/String;)V
        46: .line 737
            iinc 9 /* i */ 1
        end local 14 // boolean value_pattern
        end local 13 // java.lang.String value
        end local 12 // java.lang.String key
        end local 10 // java.util.Map$Entry entry
        end local 8 // int key_index
        end local 7 // javax.management.ObjectName$Property prop
        47: .line 709
      StackMap locals: javax.management.ObjectName java.lang.String java.util.Map java.lang.StringBuilder int java.lang.String[] java.util.Map top top int top java.util.Iterator
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 19
        48: .line 741
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            istore 10 /* len */
        start local 10 // int len
        49: .line 742
            iload 10 /* len */
            newarray 5
            astore 11 /* initial_chars */
        start local 11 // char[] initial_chars
        50: .line 743
            aload 3 /* sb */
            iconst_0
            iload 10 /* len */
            aload 11 /* initial_chars */
            iconst_0
            invokevirtual java.lang.StringBuilder.getChars:(II[CI)V
        51: .line 744
            iload 10 /* len */
            newarray 5
            astore 12 /* canonical_chars */
        start local 12 // char[] canonical_chars
        52: .line 745
            aload 11 /* initial_chars */
            iconst_0
            aload 12 /* canonical_chars */
            iconst_0
        53: .line 746
            aload 0 /* this */
            getfield javax.management.ObjectName._domain_length:I
            iconst_1
            iadd
        54: .line 745
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        55: .line 747
            aload 0 /* this */
            aload 11 /* initial_chars */
            aload 12 /* canonical_chars */
            aload 5 /* keys */
            aload 6 /* keys_map */
        56: .line 748
            aload 0 /* this */
            getfield javax.management.ObjectName._domain_length:I
            iconst_1
            iadd
            aload 0 /* this */
            getfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
            arraylength
        57: .line 747
            invokevirtual javax.management.ObjectName.setCanonicalName:([C[C[Ljava/lang/String;Ljava/util/Map;II)V
        58: .line 749
            return
        end local 12 // char[] canonical_chars
        end local 11 // char[] initial_chars
        end local 10 // int len
        end local 9 // int i
        end local 6 // java.util.Map keys_map
        end local 5 // java.lang.String[] keys
        end local 4 // int nb_props
        end local 3 // java.lang.StringBuilder sb
        end local 2 // java.util.Map props
        end local 1 // java.lang.String domain
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   59     0             this  Ljavax/management/ObjectName;
            0   59     1           domain  Ljava/lang/String;
            0   59     2            props  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
           11   59     3               sb  Ljava/lang/StringBuilder;
           14   59     4         nb_props  I
           16   59     5             keys  [Ljava/lang/String;
           17   59     6         keys_map  Ljava/util/Map<Ljava/lang/String;Ljavax/management/ObjectName$Property;>;
           39   40     7             prop  Ljavax/management/ObjectName$Property;
           45   47     7             prop  Ljavax/management/ObjectName$Property;
           28   47     8        key_index  I
           18   59     9                i  I
           20   47    10            entry  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;
           23   47    12              key  Ljava/lang/String;
           24   25    13            value  Ljava/lang/String;
           27   47    13            value  Ljava/lang/String;
           26   27    14                e  Ljava/lang/ClassCastException;
           33   47    14    value_pattern  Z
           49   59    10              len  I
           50   59    11    initial_chars  [C
           52   59    12  canonical_chars  [C
      Exception table:
        from    to  target  type
          23    24      25  Class java.lang.ClassCastException
    Exceptions:
      throws javax.management.MalformedObjectNameException, java.lang.NullPointerException
    Signature: (Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)V
    MethodParameters:
        Name  Flags
      domain  
      props   

  private void addProperty(javax.management.ObjectName$Property, int, java.util.Map<java.lang.String, javax.management.ObjectName$Property>, java.lang.String);
    descriptor: (Ljavax/management/ObjectName$Property;ILjava/util/Map;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // javax.management.ObjectName this
        start local 1 // javax.management.ObjectName$Property prop
        start local 2 // int index
        start local 3 // java.util.Map keys_map
        start local 4 // java.lang.String key_name
         0: .line 762
            aload 3 /* keys_map */
            aload 4 /* key_name */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 4
         1: .line 763
            new javax.management.MalformedObjectNameException
            dup
            new java.lang.StringBuilder
            dup
            ldc "key `"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 764
            aload 4 /* key_name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' already defined"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 762
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 767
      StackMap locals:
      StackMap stack:
            iload 2 /* index */
            aload 0 /* this */
            getfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
            arraylength
            if_icmpne 8
         5: .line 768
            iload 2 /* index */
            bipush 10
            iadd
            anewarray javax.management.ObjectName$Property
            astore 5 /* tmp_prop_array */
        start local 5 // javax.management.ObjectName$Property[] tmp_prop_array
         6: .line 769
            aload 0 /* this */
            getfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
            iconst_0
            aload 5 /* tmp_prop_array */
            iconst_0
            iload 2 /* index */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         7: .line 770
            aload 0 /* this */
            aload 5 /* tmp_prop_array */
            putfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
        end local 5 // javax.management.ObjectName$Property[] tmp_prop_array
         8: .line 772
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
            iload 2 /* index */
            aload 1 /* prop */
            aastore
         9: .line 773
            aload 3 /* keys_map */
            aload 4 /* key_name */
            aload 1 /* prop */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 774
            return
        end local 4 // java.lang.String key_name
        end local 3 // java.util.Map keys_map
        end local 2 // int index
        end local 1 // javax.management.ObjectName$Property prop
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   11     0            this  Ljavax/management/ObjectName;
            0   11     1            prop  Ljavax/management/ObjectName$Property;
            0   11     2           index  I
            0   11     3        keys_map  Ljava/util/Map<Ljava/lang/String;Ljavax/management/ObjectName$Property;>;
            0   11     4        key_name  Ljava/lang/String;
            6    8     5  tmp_prop_array  [Ljavax/management/ObjectName$Property;
    Exceptions:
      throws javax.management.MalformedObjectNameException
    Signature: (Ljavax/management/ObjectName$Property;ILjava/util/Map<Ljava/lang/String;Ljavax/management/ObjectName$Property;>;Ljava/lang/String;)V
    MethodParameters:
          Name  Flags
      prop      
      index     
      keys_map  
      key_name  

  private void setCanonicalName(char[], char[], java.lang.String[], java.util.Map<java.lang.String, javax.management.ObjectName$Property>, int, );
    descriptor: ([C[C[Ljava/lang/String;Ljava/util/Map;II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=13, args_size=7
        start local 0 // javax.management.ObjectName this
        start local 1 // char[] specified_chars
        start local 2 // char[] canonical_chars
        start local 3 // java.lang.String[] keys
        start local 4 // java.util.Map keys_map
        start local 5 // int prop_index
        start local 6 // int nb_props
         0: .line 787
            aload 0 /* this */
            getfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
            getstatic javax.management.ObjectName._Empty_property_array:[Ljavax/management/ObjectName$Property;
            if_acmpeq 29
         1: .line 788
            iload 6 /* nb_props */
            anewarray java.lang.String
            astore 7 /* tmp_keys */
        start local 7 // java.lang.String[] tmp_keys
         2: .line 789
            iload 6 /* nb_props */
            anewarray javax.management.ObjectName$Property
            astore 8 /* tmp_props */
        start local 8 // javax.management.ObjectName$Property[] tmp_props
         3: .line 791
            aload 3 /* keys */
            iconst_0
            aload 7 /* tmp_keys */
            iconst_0
            iload 6 /* nb_props */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         4: .line 792
            aload 7 /* tmp_keys */
            invokestatic java.util.Arrays.sort:([Ljava/lang/Object;)V
         5: .line 793
            aload 7 /* tmp_keys */
            astore 3 /* keys */
         6: .line 794
            aload 0 /* this */
            getfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
            iconst_0
            aload 8 /* tmp_props */
            iconst_0
            iload 6 /* nb_props */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         7: .line 795
            aload 0 /* this */
            aload 8 /* tmp_props */
            putfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
         8: .line 796
            aload 0 /* this */
            iload 6 /* nb_props */
            anewarray javax.management.ObjectName$Property
            putfield javax.management.ObjectName._ca_array:[Ljavax/management/ObjectName$Property;
         9: .line 800
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        10: goto 13
        11: .line 801
      StackMap locals: java.lang.String[] javax.management.ObjectName$Property[] int
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.ObjectName._ca_array:[Ljavax/management/ObjectName$Property;
            iload 9 /* i */
            aload 4 /* keys_map */
            aload 3 /* keys */
            iload 9 /* i */
            aaload
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.management.ObjectName$Property
            aastore
        12: .line 800
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 9 /* i */
            iload 6 /* nb_props */
            if_icmplt 11
        end local 9 // int i
        14: .line 805
            iload 6 /* nb_props */
            iconst_1
            isub
            istore 9 /* last_index */
        start local 9 // int last_index
        15: .line 808
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        16: goto 28
        17: .line 809
      StackMap locals: javax.management.ObjectName char[] char[] java.lang.String[] java.util.Map int int java.lang.String[] javax.management.ObjectName$Property[] int top top int
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.ObjectName._ca_array:[Ljavax/management/ObjectName$Property;
            iload 12 /* i */
            aaload
            astore 11 /* prop */
        start local 11 // javax.management.ObjectName$Property prop
        18: .line 811
            aload 11 /* prop */
            getfield javax.management.ObjectName$Property._key_length:I
            aload 11 /* prop */
            getfield javax.management.ObjectName$Property._value_length:I
            iadd
            iconst_1
            iadd
            istore 10 /* prop_len */
        start local 10 // int prop_len
        19: .line 812
            aload 1 /* specified_chars */
            aload 11 /* prop */
            getfield javax.management.ObjectName$Property._key_index:I
        20: .line 813
            aload 2 /* canonical_chars */
            iload 5 /* prop_index */
            iload 10 /* prop_len */
        21: .line 812
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        22: .line 814
            aload 11 /* prop */
            iload 5 /* prop_index */
            invokevirtual javax.management.ObjectName$Property.setKeyIndex:(I)V
        23: .line 815
            iload 5 /* prop_index */
            iload 10 /* prop_len */
            iadd
            istore 5 /* prop_index */
        24: .line 816
            iload 12 /* i */
            iload 9 /* last_index */
            if_icmpeq 27
        25: .line 817
            aload 2 /* canonical_chars */
            iload 5 /* prop_index */
            bipush 44
            castore
        26: .line 818
            iinc 5 /* prop_index */ 1
        27: .line 808
      StackMap locals: javax.management.ObjectName char[] char[] java.lang.String[] java.util.Map int int java.lang.String[] javax.management.ObjectName$Property[] int int javax.management.ObjectName$Property int
      StackMap stack:
            iinc 12 /* i */ 1
        end local 11 // javax.management.ObjectName$Property prop
        end local 10 // int prop_len
      StackMap locals: javax.management.ObjectName char[] char[] java.lang.String[] java.util.Map int int java.lang.String[] javax.management.ObjectName$Property[] int top top int
      StackMap stack:
        28: iload 12 /* i */
            iload 9 /* last_index */
            if_icmple 17
        end local 12 // int i
        end local 9 // int last_index
        end local 8 // javax.management.ObjectName$Property[] tmp_props
        end local 7 // java.lang.String[] tmp_keys
        29: .line 824
      StackMap locals: javax.management.ObjectName char[] char[] java.lang.String[] java.util.Map int int
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.ObjectName._property_list_pattern:Z
            ifeq 33
        30: .line 825
            aload 0 /* this */
            getfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
            getstatic javax.management.ObjectName._Empty_property_array:[Ljavax/management/ObjectName$Property;
            if_acmpeq 32
        31: .line 826
            aload 2 /* canonical_chars */
            iload 5 /* prop_index */
            iinc 5 /* prop_index */ 1
            bipush 44
            castore
        32: .line 827
      StackMap locals:
      StackMap stack:
            aload 2 /* canonical_chars */
            iload 5 /* prop_index */
            iinc 5 /* prop_index */ 1
            bipush 42
            castore
        33: .line 831
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.String
            dup
            aload 2 /* canonical_chars */
            iconst_0
            iload 5 /* prop_index */
            invokespecial java.lang.String.<init>:([CII)V
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            putfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
        34: .line 832
            return
        end local 6 // int nb_props
        end local 5 // int prop_index
        end local 4 // java.util.Map keys_map
        end local 3 // java.lang.String[] keys
        end local 2 // char[] canonical_chars
        end local 1 // char[] specified_chars
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   35     0             this  Ljavax/management/ObjectName;
            0   35     1  specified_chars  [C
            0   35     2  canonical_chars  [C
            0   35     3             keys  [Ljava/lang/String;
            0   35     4         keys_map  Ljava/util/Map<Ljava/lang/String;Ljavax/management/ObjectName$Property;>;
            0   35     5       prop_index  I
            0   35     6         nb_props  I
            2   29     7         tmp_keys  [Ljava/lang/String;
            3   29     8        tmp_props  [Ljavax/management/ObjectName$Property;
           10   14     9                i  I
           15   29     9       last_index  I
           19   28    10         prop_len  I
           18   28    11             prop  Ljavax/management/ObjectName$Property;
           16   29    12                i  I
    Signature: ([C[C[Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljavax/management/ObjectName$Property;>;II)V
    MethodParameters:
                 Name  Flags
      specified_chars  
      canonical_chars  
      keys             
      keys_map         
      prop_index       
      nb_props         

  private static int parseKey(char[], int);
    descriptor: ([CI)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // char[] s
        start local 1 // int startKey
         0: .line 846
            iload 1 /* startKey */
            istore 2 /* next */
        start local 2 // int next
         1: .line 847
            iload 1 /* startKey */
            istore 3 /* endKey */
        start local 3 // int endKey
         2: .line 848
            aload 0 /* s */
            arraylength
            istore 4 /* len */
        start local 4 // int len
         3: .line 849
            goto 17
         4: .line 850
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* s */
            iload 2 /* next */
            iinc 2 /* next */ 1
            caload
            istore 5 /* k */
        start local 5 // char k
         5: .line 851
            iload 5 /* k */
            lookupswitch { // 6
                   10: 6
                   42: 6
                   44: 6
                   58: 6
                   61: 12
                   63: 6
              default: 14
          }
         6: .line 857
      StackMap locals: int
      StackMap stack:
            iload 5 /* k */
            bipush 10
            if_icmpne 7
            ldc "\\n"
            goto 8
      StackMap locals:
      StackMap stack:
         7: new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            iload 5 /* k */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         8: astore 6 /* ichar */
        start local 6 // java.lang.String ichar
         9: .line 859
            new javax.management.MalformedObjectNameException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid character in key: `"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        10: .line 860
            aload 6 /* ichar */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        11: .line 858
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // java.lang.String ichar
        12: .line 863
      StackMap locals:
      StackMap stack:
            iload 2 /* next */
            iconst_1
            isub
            istore 3 /* endKey */
        13: .line 864
            goto 18
        14: .line 866
      StackMap locals:
      StackMap stack:
            iload 2 /* next */
            iload 4 /* len */
            if_icmpge 15
            goto 17
        15: .line 867
      StackMap locals:
      StackMap stack:
            iload 2 /* next */
            istore 3 /* endKey */
        16: .line 869
            goto 18
        end local 5 // char k
        17: .line 849
      StackMap locals:
      StackMap stack:
            iload 2 /* next */
            iload 4 /* len */
            if_icmplt 4
        18: .line 871
      StackMap locals:
      StackMap stack:
            iload 3 /* endKey */
            ireturn
        end local 4 // int len
        end local 3 // int endKey
        end local 2 // int next
        end local 1 // int startKey
        end local 0 // char[] s
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   19     0         s  [C
            0   19     1  startKey  I
            1   19     2      next  I
            2   19     3    endKey  I
            3   19     4       len  I
            5   17     5         k  C
            9   12     6     ichar  Ljava/lang/String;
    Exceptions:
      throws javax.management.MalformedObjectNameException
    MethodParameters:
          Name  Flags
      s         final
      startKey  final

  private static int[] parseValue(char[], int);
    descriptor: ([CI)[I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=9, args_size=2
        start local 0 // char[] s
        start local 1 // int startValue
         0: .line 890
            iconst_0
            istore 2 /* value_pattern */
        start local 2 // boolean value_pattern
         1: .line 892
            iload 1 /* startValue */
            istore 3 /* next */
        start local 3 // int next
         2: .line 893
            iload 1 /* startValue */
            istore 4 /* endValue */
        start local 4 // int endValue
         3: .line 895
            aload 0 /* s */
            arraylength
            istore 5 /* len */
        start local 5 // int len
         4: .line 896
            aload 0 /* s */
            iload 1 /* startValue */
            caload
            istore 6 /* q */
        start local 6 // char q
         5: .line 898
            iload 6 /* q */
            bipush 34
            if_icmpne 64
         6: .line 900
            iinc 3 /* next */ 1
            iload 3 /* next */
            iload 5 /* len */
            if_icmpne 41
         7: .line 901
            new javax.management.MalformedObjectNameException
            dup
            ldc "Invalid quote"
         8: .line 900
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 903
      StackMap locals: char[] int int int int int int
      StackMap stack:
            aload 0 /* s */
            iload 3 /* next */
            caload
            istore 7 /* last */
        start local 7 // char last
        10: .line 904
            iload 7 /* last */
            bipush 92
            if_icmpne 28
        11: .line 905
            iinc 3 /* next */ 1
            iload 3 /* next */
            iload 5 /* len */
            if_icmpne 15
        12: .line 906
            new javax.management.MalformedObjectNameException
            dup
        13: .line 907
            ldc "Invalid unterminated quoted character sequence"
        14: .line 905
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        15: .line 908
      StackMap locals: int
      StackMap stack:
            aload 0 /* s */
            iload 3 /* next */
            caload
            istore 7 /* last */
        16: .line 909
            iload 7 /* last */
            lookupswitch { // 5
                   34: 18
                   42: 17
                   63: 17
                   92: 17
                  110: 17
              default: 22
          }
        17: .line 914
      StackMap locals:
      StackMap stack:
            goto 37
        18: .line 920
      StackMap locals:
      StackMap stack:
            iload 3 /* next */
            iconst_1
            iadd
            iload 5 /* len */
            if_icmpne 37
        19: .line 921
            new javax.management.MalformedObjectNameException
            dup
        20: .line 922
            ldc "Missing termination quote"
        21: .line 920
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        22: .line 926
      StackMap locals:
      StackMap stack:
            new javax.management.MalformedObjectNameException
            dup
        23: .line 927
            new java.lang.StringBuilder
            dup
            ldc "Invalid quoted character sequence '\\"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        24: .line 928
            iload 7 /* last */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        25: .line 927
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        26: .line 925
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        27: .line 930
      StackMap locals:
      StackMap stack:
            goto 37
      StackMap locals:
      StackMap stack:
        28: iload 7 /* last */
            bipush 10
            if_icmpne 32
        29: .line 931
            new javax.management.MalformedObjectNameException
            dup
        30: .line 932
            ldc "Newline in quoted value"
        31: .line 931
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        32: .line 933
      StackMap locals:
      StackMap stack:
            iload 7 /* last */
            bipush 34
            if_icmpne 35
        33: .line 934
            iinc 3 /* next */ 1
        34: .line 935
            goto 42
        35: .line 937
      StackMap locals:
      StackMap stack:
            iload 7 /* last */
            lookupswitch { // 2
                   42: 36
                   63: 36
              default: 37
          }
        36: .line 940
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 2 /* value_pattern */
        37: .line 944
      StackMap locals:
      StackMap stack:
            iinc 3 /* next */ 1
        38: .line 950
            iload 3 /* next */
            iload 5 /* len */
            if_icmplt 41
            iload 7 /* last */
            bipush 34
            if_icmpeq 41
        39: .line 951
            new javax.management.MalformedObjectNameException
            dup
            ldc "Missing termination quote"
        40: .line 950
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        end local 7 // char last
        41: .line 902
      StackMap locals:
      StackMap stack:
            iload 3 /* next */
            iload 5 /* len */
            if_icmplt 9
        42: .line 953
      StackMap locals:
      StackMap stack:
            iload 3 /* next */
            istore 4 /* endValue */
        43: .line 954
            iload 3 /* next */
            iload 5 /* len */
            if_icmpge 65
        44: .line 955
            aload 0 /* s */
            iload 3 /* next */
            iinc 3 /* next */ 1
            caload
            bipush 44
            if_icmpeq 65
        45: .line 956
            new javax.management.MalformedObjectNameException
            dup
            ldc "Invalid quote"
        46: .line 955
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        47: .line 961
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            iload 3 /* next */
            iinc 3 /* next */ 1
            caload
            istore 7 /* v */
        start local 7 // char v
        48: .line 962
            iload 7 /* v */
            lookupswitch { // 6
                   10: 53
                   42: 49
                   44: 59
                   58: 53
                   61: 53
                   63: 49
              default: 61
          }
        49: .line 965
      StackMap locals: int
      StackMap stack:
            iconst_1
            istore 2 /* value_pattern */
        50: .line 966
            iload 3 /* next */
            iload 5 /* len */
            if_icmpge 51
            goto 64
        51: .line 967
      StackMap locals:
      StackMap stack:
            iload 3 /* next */
            istore 4 /* endValue */
        52: .line 968
            goto 65
        53: .line 972
      StackMap locals:
      StackMap stack:
            iload 7 /* v */
            bipush 10
            if_icmpne 54
            ldc "\\n"
            goto 55
      StackMap locals:
      StackMap stack:
        54: new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            iload 7 /* v */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        55: astore 8 /* ichar */
        start local 8 // java.lang.String ichar
        56: .line 974
            new javax.management.MalformedObjectNameException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid character `"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        57: .line 975
            aload 8 /* ichar */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' in value"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        58: .line 973
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        end local 8 // java.lang.String ichar
        59: .line 977
      StackMap locals:
      StackMap stack:
            iload 3 /* next */
            iconst_1
            isub
            istore 4 /* endValue */
        60: .line 978
            goto 65
        61: .line 980
      StackMap locals:
      StackMap stack:
            iload 3 /* next */
            iload 5 /* len */
            if_icmpge 62
            goto 64
        62: .line 981
      StackMap locals:
      StackMap stack:
            iload 3 /* next */
            istore 4 /* endValue */
        63: .line 983
            goto 65
        end local 7 // char v
        64: .line 960
      StackMap locals:
      StackMap stack:
            iload 3 /* next */
            iload 5 /* len */
            if_icmplt 47
        65: .line 986
      StackMap locals:
      StackMap stack:
            iconst_2
            newarray 10
            dup
            iconst_0
            iload 4 /* endValue */
            iastore
            dup
            iconst_1
            iload 2 /* value_pattern */
            ifeq 66
            iconst_1
            goto 67
      StackMap locals: char[] int int int int int int
      StackMap stack: int[] int[] int
        66: iconst_0
      StackMap locals: char[] int int int int int int
      StackMap stack: int[] int[] int int
        67: iastore
            areturn
        end local 6 // char q
        end local 5 // int len
        end local 4 // int endValue
        end local 3 // int next
        end local 2 // boolean value_pattern
        end local 1 // int startValue
        end local 0 // char[] s
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   68     0              s  [C
            0   68     1     startValue  I
            1   68     2  value_pattern  Z
            2   68     3           next  I
            3   68     4       endValue  I
            4   68     5            len  I
            5   68     6              q  C
           10   41     7           last  C
           48   64     7              v  C
           56   59     8          ichar  Ljava/lang/String;
    Exceptions:
      throws javax.management.MalformedObjectNameException
    MethodParameters:
            Name  Flags
      s           final
      startValue  final

  private static boolean checkValue(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // java.lang.String val
         0: .line 997
            aload 0 /* val */
            ifnonnull 3
         1: .line 998
            new java.lang.NullPointerException
            dup
            ldc "Invalid value (null)"
         2: .line 997
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 1000
      StackMap locals:
      StackMap stack:
            aload 0 /* val */
            invokevirtual java.lang.String.length:()I
            istore 1 /* len */
        start local 1 // int len
         4: .line 1001
            iload 1 /* len */
            ifne 6
         5: .line 1002
            iconst_0
            ireturn
         6: .line 1004
      StackMap locals: int
      StackMap stack:
            aload 0 /* val */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 2 /* s */
        start local 2 // char[] s
         7: .line 1005
            aload 2 /* s */
            iconst_0
            invokestatic javax.management.ObjectName.parseValue:([CI)[I
            astore 3 /* result */
        start local 3 // int[] result
         8: .line 1006
            aload 3 /* result */
            iconst_0
            iaload
            istore 4 /* endValue */
        start local 4 // int endValue
         9: .line 1007
            aload 3 /* result */
            iconst_1
            iaload
            iconst_1
            if_icmpne 10
            iconst_1
            goto 11
      StackMap locals: char[] int[] int
      StackMap stack:
        10: iconst_0
      StackMap locals:
      StackMap stack: int
        11: istore 5 /* value_pattern */
        start local 5 // boolean value_pattern
        12: .line 1008
            iload 4 /* endValue */
            iload 1 /* len */
            if_icmpge 16
        13: .line 1009
            new javax.management.MalformedObjectNameException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid character in value: `"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        14: .line 1010
            aload 2 /* s */
            iload 4 /* endValue */
            caload
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        15: .line 1008
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 1011
      StackMap locals: int
      StackMap stack:
            iload 5 /* value_pattern */
            ireturn
        end local 5 // boolean value_pattern
        end local 4 // int endValue
        end local 3 // int[] result
        end local 2 // char[] s
        end local 1 // int len
        end local 0 // java.lang.String val
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   17     0            val  Ljava/lang/String;
            4   17     1            len  I
            7   17     2              s  [C
            8   17     3         result  [I
            9   17     4       endValue  I
           12   17     5  value_pattern  Z
    Exceptions:
      throws javax.management.MalformedObjectNameException
    MethodParameters:
      Name  Flags
      val   

  private static void checkKey(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // java.lang.String key
         0: .line 1020
            aload 0 /* key */
            ifnonnull 3
         1: .line 1021
            new java.lang.NullPointerException
            dup
            ldc "Invalid key (null)"
         2: .line 1020
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 1023
      StackMap locals:
      StackMap stack:
            aload 0 /* key */
            invokevirtual java.lang.String.length:()I
            istore 1 /* len */
        start local 1 // int len
         4: .line 1024
            iload 1 /* len */
            ifne 7
         5: .line 1025
            new javax.management.MalformedObjectNameException
            dup
            ldc "Invalid key (empty)"
         6: .line 1024
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 1026
      StackMap locals: int
      StackMap stack:
            aload 0 /* key */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 2 /* k */
        start local 2 // char[] k
         8: .line 1027
            aload 2 /* k */
            iconst_0
            invokestatic javax.management.ObjectName.parseKey:([CI)I
            istore 3 /* endKey */
        start local 3 // int endKey
         9: .line 1028
            iload 3 /* endKey */
            iload 1 /* len */
            if_icmpge 13
        10: .line 1029
            new javax.management.MalformedObjectNameException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid character in value: `"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        11: .line 1030
            aload 2 /* k */
            iload 3 /* endKey */
            caload
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        12: .line 1028
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 1031
      StackMap locals: char[] int
      StackMap stack:
            return
        end local 3 // int endKey
        end local 2 // char[] k
        end local 1 // int len
        end local 0 // java.lang.String key
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0     key  Ljava/lang/String;
            4   14     1     len  I
            8   14     2       k  [C
            9   14     3  endKey  I
    Exceptions:
      throws javax.management.MalformedObjectNameException, java.lang.NullPointerException
    MethodParameters:
      Name  Flags
      key   

  private static boolean wildmatch(char[], char[], int, int);
    descriptor: ([C[CII)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // char[] s
        start local 1 // char[] p
        start local 2 // int si
        start local 3 // int pi
         0: .line 1041
            aload 0 /* s */
            arraylength
            istore 5 /* slen */
        start local 5 // int slen
         1: .line 1042
            aload 1 /* p */
            arraylength
            istore 6 /* plen */
        start local 6 // int plen
         2: .line 1044
            goto 14
         3: .line 1045
      StackMap locals: char[] char[] int int top int int
      StackMap stack:
            aload 1 /* p */
            iload 3 /* pi */
            iinc 3 /* pi */ 1
            caload
            istore 4 /* c */
        start local 4 // char c
         4: .line 1046
            iload 4 /* c */
            bipush 63
            if_icmpne 6
         5: .line 1047
            iinc 2 /* si */ 1
            iload 2 /* si */
            iload 5 /* slen */
            if_icmple 14
            iconst_0
            ireturn
         6: .line 1048
      StackMap locals: char[] char[] int int int int int
      StackMap stack:
            iload 4 /* c */
            bipush 42
            if_icmpne 12
         7: .line 1049
            iload 3 /* pi */
            iload 6 /* plen */
            if_icmplt 8
            iconst_1
            ireturn
         8: .line 1051
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            aload 1 /* p */
            iload 2 /* si */
            iload 3 /* pi */
            invokestatic javax.management.ObjectName.wildmatch:([C[CII)Z
            ifeq 9
            iconst_1
            ireturn
         9: .line 1052
      StackMap locals:
      StackMap stack:
            iinc 2 /* si */ 1
            iload 2 /* si */
            iload 5 /* slen */
        10: .line 1050
            if_icmplt 8
        11: .line 1053
            iconst_0
            ireturn
        12: .line 1055
      StackMap locals:
      StackMap stack:
            iload 2 /* si */
            iload 5 /* slen */
            if_icmpge 13
            iload 4 /* c */
            aload 0 /* s */
            iload 2 /* si */
            iinc 2 /* si */ 1
            caload
            if_icmpeq 14
      StackMap locals:
      StackMap stack:
        13: iconst_0
            ireturn
        end local 4 // char c
        14: .line 1044
      StackMap locals: char[] char[] int int top int int
      StackMap stack:
            iload 3 /* pi */
            iload 6 /* plen */
            if_icmplt 3
        15: .line 1058
            iload 2 /* si */
            iload 5 /* slen */
            if_icmpne 16
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        16: iconst_0
            ireturn
        end local 6 // int plen
        end local 5 // int slen
        end local 3 // int pi
        end local 2 // int si
        end local 1 // char[] p
        end local 0 // char[] s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0     s  [C
            0   17     1     p  [C
            0   17     2    si  I
            0   17     3    pi  I
            4   14     4     c  C
            1   17     5  slen  I
            2   17     6  plen  I
    MethodParameters:
      Name  Flags
      s     
      p     
      si    
      pi    

  private boolean isDomain(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // java.lang.String domain
         0: .line 1069
            aload 1 /* domain */
            ifnonnull 1
            iconst_1
            ireturn
         1: .line 1070
      StackMap locals:
      StackMap stack:
            aload 1 /* domain */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 2 /* d */
        start local 2 // char[] d
         2: .line 1071
            aload 2 /* d */
            arraylength
            istore 3 /* len */
        start local 3 // int len
         3: .line 1072
            iconst_0
            istore 4 /* next */
        start local 4 // int next
         4: .line 1073
            goto 9
         5: .line 1074
      StackMap locals: char[] int int
      StackMap stack:
            aload 2 /* d */
            iload 4 /* next */
            iinc 4 /* next */ 1
            caload
            istore 5 /* c */
        start local 5 // char c
         6: .line 1075
            iload 5 /* c */
            lookupswitch { // 4
                   10: 7
                   42: 8
                   58: 7
                   63: 8
              default: 9
          }
         7: .line 1078
      StackMap locals: int
      StackMap stack:
            iconst_0
            ireturn
         8: .line 1081
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield javax.management.ObjectName._domain_pattern:Z
        end local 5 // char c
         9: .line 1073
      StackMap locals:
      StackMap stack:
            iload 4 /* next */
            iload 3 /* len */
            if_icmplt 5
        10: .line 1085
            iconst_1
            ireturn
        end local 4 // int next
        end local 3 // int len
        end local 2 // char[] d
        end local 1 // java.lang.String domain
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Ljavax/management/ObjectName;
            0   11     1  domain  Ljava/lang/String;
            2   11     2       d  [C
            3   11     3     len  I
            4   11     4    next  I
            6    9     5       c  C
    MethodParameters:
        Name  Flags
      domain  

  private void readObject(java.io.ObjectInputStream);
    descriptor: (Ljava/io/ObjectInputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // java.io.ObjectInputStream in
         0: .line 1154
            getstatic javax.management.ObjectName.compat:Z
            ifeq 14
         1: .line 1158
            aload 1 /* in */
            invokevirtual java.io.ObjectInputStream.readFields:()Ljava/io/ObjectInputStream$GetField;
            astore 3 /* fields */
        start local 3 // java.io.ObjectInputStream$GetField fields
         2: .line 1160
            aload 3 /* fields */
            ldc "propertyListString"
            ldc ""
            invokevirtual java.io.ObjectInputStream$GetField.get:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
         3: .line 1159
            astore 4 /* propListString */
        start local 4 // java.lang.String propListString
         4: .line 1164
            aload 3 /* fields */
            ldc "propertyPattern"
            iconst_0
            invokevirtual java.io.ObjectInputStream$GetField.get:(Ljava/lang/String;Z)Z
         5: .line 1163
            istore 5 /* propPattern */
        start local 5 // boolean propPattern
         6: .line 1165
            iload 5 /* propPattern */
            ifeq 10
         7: .line 1167
            aload 4 /* propListString */
            invokevirtual java.lang.String.length:()I
            ifne 8
            ldc "*"
            goto 9
      StackMap locals: javax.management.ObjectName java.io.ObjectInputStream top java.io.ObjectInputStream$GetField java.lang.String int
      StackMap stack:
         8: new java.lang.StringBuilder
            dup
            aload 4 /* propListString */
            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;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         9: .line 1166
      StackMap locals:
      StackMap stack: java.lang.String
            astore 4 /* propListString */
        10: .line 1170
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 3 /* fields */
            ldc "domain"
            ldc "default"
            invokevirtual java.io.ObjectInputStream$GetField.get:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        11: .line 1171
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* propListString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        12: .line 1170
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* cn */
        end local 5 // boolean propPattern
        end local 4 // java.lang.String propListString
        end local 3 // java.io.ObjectInputStream$GetField fields
        start local 2 // java.lang.String cn
        13: .line 1172
            goto 16
        end local 2 // java.lang.String cn
        14: .line 1175
      StackMap locals: javax.management.ObjectName java.io.ObjectInputStream
      StackMap stack:
            aload 1 /* in */
            invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
        15: .line 1176
            aload 1 /* in */
            invokevirtual java.io.ObjectInputStream.readObject:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* cn */
        start local 2 // java.lang.String cn
        16: .line 1180
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 2 /* cn */
            invokevirtual javax.management.ObjectName.construct:(Ljava/lang/String;)V
        17: .line 1181
            goto 22
      StackMap locals:
      StackMap stack: java.lang.NullPointerException
        18: astore 3 /* e */
        start local 3 // java.lang.NullPointerException e
        19: .line 1182
            new java.io.InvalidObjectException
            dup
            aload 3 /* e */
            invokevirtual java.lang.NullPointerException.toString:()Ljava/lang/String;
            invokespecial java.io.InvalidObjectException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // java.lang.NullPointerException e
        20: .line 1183
      StackMap locals:
      StackMap stack: javax.management.MalformedObjectNameException
            astore 3 /* e */
        start local 3 // javax.management.MalformedObjectNameException e
        21: .line 1184
            new java.io.InvalidObjectException
            dup
            aload 3 /* e */
            invokevirtual javax.management.MalformedObjectNameException.toString:()Ljava/lang/String;
            invokespecial java.io.InvalidObjectException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // javax.management.MalformedObjectNameException e
        22: .line 1186
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String cn
        end local 1 // java.io.ObjectInputStream in
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   23     0            this  Ljavax/management/ObjectName;
            0   23     1              in  Ljava/io/ObjectInputStream;
           13   14     2              cn  Ljava/lang/String;
           16   23     2              cn  Ljava/lang/String;
            2   13     3          fields  Ljava/io/ObjectInputStream$GetField;
            4   13     4  propListString  Ljava/lang/String;
            6   13     5     propPattern  Z
           19   20     3               e  Ljava/lang/NullPointerException;
           21   22     3               e  Ljavax/management/MalformedObjectNameException;
      Exception table:
        from    to  target  type
          16    17      18  Class java.lang.NullPointerException
          16    17      20  Class javax.management.MalformedObjectNameException
    Exceptions:
      throws java.io.IOException, java.lang.ClassNotFoundException
    MethodParameters:
      Name  Flags
      in    

  private void writeObject(java.io.ObjectOutputStream);
    descriptor: (Ljava/io/ObjectOutputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // java.io.ObjectOutputStream out
         0: .line 1250
            getstatic javax.management.ObjectName.compat:Z
            ifeq 12
         1: .line 1254
            aload 1 /* out */
            invokevirtual java.io.ObjectOutputStream.putFields:()Ljava/io/ObjectOutputStream$PutField;
            astore 2 /* fields */
        start local 2 // java.io.ObjectOutputStream$PutField fields
         2: .line 1255
            aload 2 /* fields */
            ldc "domain"
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            iconst_0
            aload 0 /* this */
            getfield javax.management.ObjectName._domain_length:I
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.io.ObjectOutputStream$PutField.put:(Ljava/lang/String;Ljava/lang/Object;)V
         3: .line 1256
            aload 2 /* fields */
            ldc "propertyList"
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getKeyPropertyList:()Ljava/util/Hashtable;
            invokevirtual java.io.ObjectOutputStream$PutField.put:(Ljava/lang/String;Ljava/lang/Object;)V
         4: .line 1257
            aload 2 /* fields */
            ldc "propertyListString"
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getKeyPropertyListString:()Ljava/lang/String;
            invokevirtual java.io.ObjectOutputStream$PutField.put:(Ljava/lang/String;Ljava/lang/Object;)V
         5: .line 1258
            aload 2 /* fields */
            ldc "canonicalName"
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            invokevirtual java.io.ObjectOutputStream$PutField.put:(Ljava/lang/String;Ljava/lang/Object;)V
         6: .line 1259
            aload 2 /* fields */
            ldc "pattern"
            aload 0 /* this */
            getfield javax.management.ObjectName._domain_pattern:Z
            ifne 7
            aload 0 /* this */
            getfield javax.management.ObjectName._property_list_pattern:Z
            ifne 7
            iconst_0
            goto 8
      StackMap locals: javax.management.ObjectName java.io.ObjectOutputStream java.io.ObjectOutputStream$PutField
      StackMap stack: java.io.ObjectOutputStream$PutField java.lang.String
         7: iconst_1
      StackMap locals: javax.management.ObjectName java.io.ObjectOutputStream java.io.ObjectOutputStream$PutField
      StackMap stack: java.io.ObjectOutputStream$PutField java.lang.String int
         8: invokevirtual java.io.ObjectOutputStream$PutField.put:(Ljava/lang/String;Z)V
         9: .line 1260
            aload 2 /* fields */
            ldc "propertyPattern"
            aload 0 /* this */
            getfield javax.management.ObjectName._property_list_pattern:Z
            invokevirtual java.io.ObjectOutputStream$PutField.put:(Ljava/lang/String;Z)V
        10: .line 1261
            aload 1 /* out */
            invokevirtual java.io.ObjectOutputStream.writeFields:()V
        end local 2 // java.io.ObjectOutputStream$PutField fields
        11: .line 1262
            goto 14
        12: .line 1267
      StackMap locals:
      StackMap stack:
            aload 1 /* out */
            invokevirtual java.io.ObjectOutputStream.defaultWriteObject:()V
        13: .line 1268
            aload 1 /* out */
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getSerializedNameString:()Ljava/lang/String;
            invokevirtual java.io.ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
        14: .line 1270
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.io.ObjectOutputStream out
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   15     0    this  Ljavax/management/ObjectName;
            0   15     1     out  Ljava/io/ObjectOutputStream;
            2   11     2  fields  Ljava/io/ObjectOutputStream$PutField;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      out   

  public static javax.management.ObjectName getInstance(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljavax/management/ObjectName;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 1300
            new javax.management.ObjectName
            dup
            aload 0 /* name */
            invokespecial javax.management.ObjectName.<init>:(Ljava/lang/String;)V
            areturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  name  Ljava/lang/String;
    Exceptions:
      throws javax.management.MalformedObjectNameException, java.lang.NullPointerException
    MethodParameters:
      Name  Flags
      name  

  public static javax.management.ObjectName getInstance(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljavax/management/ObjectName;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.lang.String domain
        start local 1 // java.lang.String key
        start local 2 // java.lang.String value
         0: .line 1328
            new javax.management.ObjectName
            dup
            aload 0 /* domain */
            aload 1 /* key */
            aload 2 /* value */
            invokespecial javax.management.ObjectName.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
            areturn
        end local 2 // java.lang.String value
        end local 1 // java.lang.String key
        end local 0 // java.lang.String domain
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  domain  Ljava/lang/String;
            0    1     1     key  Ljava/lang/String;
            0    1     2   value  Ljava/lang/String;
    Exceptions:
      throws javax.management.MalformedObjectNameException, java.lang.NullPointerException
    MethodParameters:
        Name  Flags
      domain  
      key     
      value   

  public static javax.management.ObjectName getInstance(java.lang.String, java.util.Hashtable<java.lang.String, java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/util/Hashtable;)Ljavax/management/ObjectName;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.String domain
        start local 1 // java.util.Hashtable table
         0: .line 1359
            new javax.management.ObjectName
            dup
            aload 0 /* domain */
            aload 1 /* table */
            invokespecial javax.management.ObjectName.<init>:(Ljava/lang/String;Ljava/util/Hashtable;)V
            areturn
        end local 1 // java.util.Hashtable table
        end local 0 // java.lang.String domain
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  domain  Ljava/lang/String;
            0    1     1   table  Ljava/util/Hashtable<Ljava/lang/String;Ljava/lang/String;>;
    Exceptions:
      throws javax.management.MalformedObjectNameException, java.lang.NullPointerException
    Signature: (Ljava/lang/String;Ljava/util/Hashtable<Ljava/lang/String;Ljava/lang/String;>;)Ljavax/management/ObjectName;
    MethodParameters:
        Name  Flags
      domain  
      table   

  public static javax.management.ObjectName getInstance(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // javax.management.ObjectName name
         0: .line 1393
            aload 0 /* name */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc Ljavax/management/ObjectName;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 1394
            aload 0 /* name */
            areturn
         2: .line 1396
      StackMap locals:
      StackMap stack:
            new javax.management.ObjectName
            dup
            aload 0 /* name */
            invokevirtual javax.management.ObjectName.getSerializedNameString:()Ljava/lang/String;
            invokespecial javax.management.ObjectName.<init>:(Ljava/lang/String;)V
         3: areturn
         4: .line 1397
      StackMap locals:
      StackMap stack: javax.management.MalformedObjectNameException
            astore 1 /* e */
        start local 1 // javax.management.MalformedObjectNameException e
         5: .line 1398
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unexpected: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // javax.management.MalformedObjectNameException e
        end local 0 // javax.management.ObjectName name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  name  Ljavax/management/ObjectName;
            5    6     1     e  Ljavax/management/MalformedObjectNameException;
      Exception table:
        from    to  target  type
           2     3       4  Class javax.management.MalformedObjectNameException
    Exceptions:
      throws java.lang.NullPointerException
    MethodParameters:
      Name  Flags
      name  

  public void <init>(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // java.lang.String name
         0: .line 1413
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 369
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._domain_length:I
         2: .line 381
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._domain_pattern:Z
         3: .line 387
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._property_list_pattern:Z
         4: .line 393
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._property_value_pattern:Z
         5: .line 1415
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.construct:(Ljava/lang/String;)V
         6: .line 1416
            return
        end local 1 // java.lang.String name
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljavax/management/ObjectName;
            0    7     1  name  Ljava/lang/String;
    Exceptions:
      throws javax.management.MalformedObjectNameException, java.lang.NullPointerException
    MethodParameters:
      Name  Flags
      name  

  public void <init>(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // javax.management.ObjectName this
        start local 1 // java.lang.String domain
        start local 2 // java.lang.String key
        start local 3 // java.lang.String value
         0: .line 1431
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 369
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._domain_length:I
         2: .line 381
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._domain_pattern:Z
         3: .line 387
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._property_list_pattern:Z
         4: .line 393
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._property_value_pattern:Z
         5: .line 1436
            aload 2 /* key */
            aload 3 /* value */
            invokestatic java.util.Collections.singletonMap:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map;
            astore 4 /* table */
        start local 4 // java.util.Map table
         6: .line 1437
            aload 0 /* this */
            aload 1 /* domain */
            aload 4 /* table */
            invokevirtual javax.management.ObjectName.construct:(Ljava/lang/String;Ljava/util/Map;)V
         7: .line 1438
            return
        end local 4 // java.util.Map table
        end local 3 // java.lang.String value
        end local 2 // java.lang.String key
        end local 1 // java.lang.String domain
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Ljavax/management/ObjectName;
            0    8     1  domain  Ljava/lang/String;
            0    8     2     key  Ljava/lang/String;
            0    8     3   value  Ljava/lang/String;
            6    8     4   table  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
    Exceptions:
      throws javax.management.MalformedObjectNameException, java.lang.NullPointerException
    MethodParameters:
        Name  Flags
      domain  
      key     
      value   

  public void <init>(java.lang.String, java.util.Hashtable<java.lang.String, java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/util/Hashtable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // javax.management.ObjectName this
        start local 1 // java.lang.String domain
        start local 2 // java.util.Hashtable table
         0: .line 1456
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 369
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._domain_length:I
         2: .line 381
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._domain_pattern:Z
         3: .line 387
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._property_list_pattern:Z
         4: .line 393
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._property_value_pattern:Z
         5: .line 1458
            aload 0 /* this */
            aload 1 /* domain */
            aload 2 /* table */
            invokevirtual javax.management.ObjectName.construct:(Ljava/lang/String;Ljava/util/Map;)V
         6: .line 1463
            return
        end local 2 // java.util.Hashtable table
        end local 1 // java.lang.String domain
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Ljavax/management/ObjectName;
            0    7     1  domain  Ljava/lang/String;
            0    7     2   table  Ljava/util/Hashtable<Ljava/lang/String;Ljava/lang/String;>;
    Exceptions:
      throws javax.management.MalformedObjectNameException, java.lang.NullPointerException
    Signature: (Ljava/lang/String;Ljava/util/Hashtable<Ljava/lang/String;Ljava/lang/String;>;)V
    MethodParameters:
        Name  Flags
      domain  
      table   

  public boolean isPattern();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1479
            aload 0 /* this */
            getfield javax.management.ObjectName._domain_pattern:Z
            ifne 4
         1: .line 1480
            aload 0 /* this */
            getfield javax.management.ObjectName._property_list_pattern:Z
            ifne 4
         2: .line 1481
            aload 0 /* this */
            getfield javax.management.ObjectName._property_value_pattern:Z
            ifne 4
         3: .line 1479
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_1
            ireturn
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljavax/management/ObjectName;

  public boolean isDomainPattern();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1491
            aload 0 /* this */
            getfield javax.management.ObjectName._domain_pattern:Z
            ireturn
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/ObjectName;

  public boolean isPropertyPattern();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1504
            aload 0 /* this */
            getfield javax.management.ObjectName._property_list_pattern:Z
            ifne 1
            aload 0 /* this */
            getfield javax.management.ObjectName._property_value_pattern:Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/management/ObjectName;

  public boolean isPropertyListPattern();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1518
            aload 0 /* this */
            getfield javax.management.ObjectName._property_list_pattern:Z
            ireturn
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/ObjectName;

  public boolean isPropertyValuePattern();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1533
            aload 0 /* this */
            getfield javax.management.ObjectName._property_value_pattern:Z
            ireturn
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/ObjectName;

  public boolean isPropertyValuePattern(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // java.lang.String property
         0: .line 1553
            aload 1 /* property */
            ifnonnull 2
         1: .line 1554
            new java.lang.NullPointerException
            dup
            ldc "key property can't be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1555
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 9
         4: .line 1556
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.ObjectName._ca_array:[Ljavax/management/ObjectName$Property;
            iload 2 /* i */
            aaload
            astore 3 /* prop */
        start local 3 // javax.management.ObjectName$Property prop
         5: .line 1557
            aload 3 /* prop */
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            invokevirtual javax.management.ObjectName$Property.getKeyString:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* key */
        start local 4 // java.lang.String key
         6: .line 1558
            aload 4 /* key */
            aload 1 /* property */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         7: .line 1559
            aload 3 /* prop */
            instanceof javax.management.ObjectName$PatternProperty
            ireturn
        end local 4 // java.lang.String key
        end local 3 // javax.management.ObjectName$Property prop
         8: .line 1555
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 2 /* i */
            aload 0 /* this */
            getfield javax.management.ObjectName._ca_array:[Ljavax/management/ObjectName$Property;
            arraylength
            if_icmplt 4
        end local 2 // int i
        10: .line 1561
            new java.lang.IllegalArgumentException
            dup
            ldc "key property not found"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.String property
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Ljavax/management/ObjectName;
            0   11     1  property  Ljava/lang/String;
            3   10     2         i  I
            5    8     3      prop  Ljavax/management/ObjectName$Property;
            6    8     4       key  Ljava/lang/String;
    Exceptions:
      throws java.lang.NullPointerException, java.lang.IllegalArgumentException
    MethodParameters:
          Name  Flags
      property  

  public java.lang.String getCanonicalName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1591
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            areturn
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/ObjectName;

  public java.lang.String getDomain();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1600
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            iconst_0
            aload 0 /* this */
            getfield javax.management.ObjectName._domain_length:I
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            areturn
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/ObjectName;

  public java.lang.String getKeyProperty(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // java.lang.String property
         0: .line 1614
            aload 0 /* this */
            invokevirtual javax.management.ObjectName._getKeyPropertyList:()Ljava/util/Map;
            aload 1 /* property */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
        end local 1 // java.lang.String property
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Ljavax/management/ObjectName;
            0    1     1  property  Ljava/lang/String;
    Exceptions:
      throws java.lang.NullPointerException
    MethodParameters:
          Name  Flags
      property  

  private java.util.Map<java.lang.String, java.lang.String> _getKeyPropertyList();
    descriptor: ()Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1628
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         1: .line 1629
            aload 0 /* this */
            getfield javax.management.ObjectName._propertyList:Ljava/util/Map;
            ifnonnull 12
         2: .line 1632
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield javax.management.ObjectName._propertyList:Ljava/util/Map;
         3: .line 1633
            aload 0 /* this */
            getfield javax.management.ObjectName._ca_array:[Ljavax/management/ObjectName$Property;
            arraylength
            istore 2 /* len */
        start local 2 // int len
         4: .line 1635
            iload 2 /* len */
            iconst_1
            isub
            istore 4 /* i */
        start local 4 // int i
         5: goto 11
         6: .line 1636
      StackMap locals: javax.management.ObjectName javax.management.ObjectName int top int
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.ObjectName._ca_array:[Ljavax/management/ObjectName$Property;
            iload 4 /* i */
            aaload
            astore 3 /* prop */
        start local 3 // javax.management.ObjectName$Property prop
         7: .line 1637
            aload 0 /* this */
            getfield javax.management.ObjectName._propertyList:Ljava/util/Map;
            aload 3 /* prop */
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            invokevirtual javax.management.ObjectName$Property.getKeyString:(Ljava/lang/String;)Ljava/lang/String;
         8: .line 1638
            aload 3 /* prop */
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            invokevirtual javax.management.ObjectName$Property.getValueString:(Ljava/lang/String;)Ljava/lang/String;
         9: .line 1637
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 1635
            iinc 4 /* i */ -1
        end local 3 // javax.management.ObjectName$Property prop
      StackMap locals:
      StackMap stack:
        11: iload 4 /* i */
            ifge 6
        end local 4 // int i
        end local 2 // int len
        12: .line 1628
      StackMap locals: javax.management.ObjectName javax.management.ObjectName
      StackMap stack:
            aload 1
            monitorexit
        13: goto 16
      StackMap locals:
      StackMap stack: java.lang.Throwable
        14: aload 1
            monitorexit
        15: athrow
        16: .line 1642
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.ObjectName._propertyList:Ljava/util/Map;
            areturn
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0  this  Ljavax/management/ObjectName;
            4   12     2   len  I
            7   11     3  prop  Ljavax/management/ObjectName$Property;
            5   12     4     i  I
      Exception table:
        from    to  target  type
           1    13      14  any
          14    15      14  any
    Signature: ()Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;

  public java.util.Hashtable<java.lang.String, java.lang.String> getKeyPropertyList();
    descriptor: ()Ljava/util/Hashtable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1658
            new java.util.Hashtable
            dup
            aload 0 /* this */
            invokevirtual javax.management.ObjectName._getKeyPropertyList:()Ljava/util/Map;
            invokespecial java.util.Hashtable.<init>:(Ljava/util/Map;)V
            areturn
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/ObjectName;
    Signature: ()Ljava/util/Hashtable<Ljava/lang/String;Ljava/lang/String;>;

  public java.lang.String getKeyPropertyListString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1673
            aload 0 /* this */
            getfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
            arraylength
            ifne 1
            ldc ""
            areturn
         1: .line 1677
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            aload 0 /* this */
            getfield javax.management.ObjectName._domain_length:I
            isub
            iconst_1
            isub
         2: .line 1678
            aload 0 /* this */
            getfield javax.management.ObjectName._property_list_pattern:Z
            ifeq 3
            iconst_2
            goto 4
      StackMap locals:
      StackMap stack: int
         3: iconst_0
         4: .line 1677
      StackMap locals: javax.management.ObjectName
      StackMap stack: int int
            isub
            istore 1 /* total_size */
        start local 1 // int total_size
         5: .line 1680
            iload 1 /* total_size */
            newarray 5
            astore 2 /* dest_chars */
        start local 2 // char[] dest_chars
         6: .line 1681
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 3 /* value */
        start local 3 // char[] value
         7: .line 1682
            aload 0 /* this */
            aload 3 /* value */
            aload 2 /* dest_chars */
            iconst_0
            invokevirtual javax.management.ObjectName.writeKeyPropertyListString:([C[CI)I
            pop
         8: .line 1683
            new java.lang.String
            dup
            aload 2 /* dest_chars */
            invokespecial java.lang.String.<init>:([C)V
            areturn
        end local 3 // char[] value
        end local 2 // char[] dest_chars
        end local 1 // int total_size
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Ljavax/management/ObjectName;
            5    9     1  total_size  I
            6    9     2  dest_chars  [C
            7    9     3       value  [C

  private java.lang.String getSerializedNameString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1699
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            istore 1 /* total_size */
        start local 1 // int total_size
         1: .line 1700
            iload 1 /* total_size */
            newarray 5
            astore 2 /* dest_chars */
        start local 2 // char[] dest_chars
         2: .line 1701
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 3 /* value */
        start local 3 // char[] value
         3: .line 1702
            aload 0 /* this */
            getfield javax.management.ObjectName._domain_length:I
            iconst_1
            iadd
            istore 4 /* offset */
        start local 4 // int offset
         4: .line 1706
            aload 3 /* value */
            iconst_0
            aload 2 /* dest_chars */
            iconst_0
            iload 4 /* offset */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         5: .line 1709
            aload 0 /* this */
            aload 3 /* value */
            aload 2 /* dest_chars */
            iload 4 /* offset */
            invokevirtual javax.management.ObjectName.writeKeyPropertyListString:([C[CI)I
            istore 5 /* end */
        start local 5 // int end
         6: .line 1712
            aload 0 /* this */
            getfield javax.management.ObjectName._property_list_pattern:Z
            ifeq 12
         7: .line 1713
            iload 5 /* end */
            iload 4 /* offset */
            if_icmpne 10
         8: .line 1715
            aload 2 /* dest_chars */
            iload 5 /* end */
            bipush 42
            castore
         9: .line 1716
            goto 12
        10: .line 1718
      StackMap locals: javax.management.ObjectName int char[] char[] int int
      StackMap stack:
            aload 2 /* dest_chars */
            iload 5 /* end */
            bipush 44
            castore
        11: .line 1719
            aload 2 /* dest_chars */
            iload 5 /* end */
            iconst_1
            iadd
            bipush 42
            castore
        12: .line 1723
      StackMap locals:
      StackMap stack:
            new java.lang.String
            dup
            aload 2 /* dest_chars */
            invokespecial java.lang.String.<init>:([C)V
            areturn
        end local 5 // int end
        end local 4 // int offset
        end local 3 // char[] value
        end local 2 // char[] dest_chars
        end local 1 // int total_size
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0        this  Ljavax/management/ObjectName;
            1   13     1  total_size  I
            2   13     2  dest_chars  [C
            3   13     3       value  [C
            4   13     4      offset  I
            6   13     5         end  I

  private int writeKeyPropertyListString(char[], char[], int);
    descriptor: ([C[CI)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=12, args_size=4
        start local 0 // javax.management.ObjectName this
        start local 1 // char[] canonicalChars
        start local 2 // char[] data
        start local 3 // int offset
         0: .line 1738
            aload 0 /* this */
            getfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
            arraylength
            ifne 1
            iload 3 /* offset */
            ireturn
         1: .line 1740
      StackMap locals:
      StackMap stack:
            aload 2 /* data */
            astore 4 /* dest_chars */
        start local 4 // char[] dest_chars
         2: .line 1741
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 5 /* value */
        start local 5 // char[] value
         3: .line 1743
            iload 3 /* offset */
            istore 6 /* index */
        start local 6 // int index
         4: .line 1744
            aload 0 /* this */
            getfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
            arraylength
            istore 7 /* len */
        start local 7 // int len
         5: .line 1745
            iload 7 /* len */
            iconst_1
            isub
            istore 8 /* last */
        start local 8 // int last
         6: .line 1746
            iconst_0
            istore 9 /* i */
        start local 9 // int i
         7: goto 16
         8: .line 1747
      StackMap locals: javax.management.ObjectName char[] char[] int char[] char[] int int int int
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
            iload 9 /* i */
            aaload
            astore 10 /* prop */
        start local 10 // javax.management.ObjectName$Property prop
         9: .line 1748
            aload 10 /* prop */
            getfield javax.management.ObjectName$Property._key_length:I
            aload 10 /* prop */
            getfield javax.management.ObjectName$Property._value_length:I
            iadd
            iconst_1
            iadd
            istore 11 /* prop_len */
        start local 11 // int prop_len
        10: .line 1749
            aload 5 /* value */
            aload 10 /* prop */
            getfield javax.management.ObjectName$Property._key_index:I
            aload 4 /* dest_chars */
            iload 6 /* index */
        11: .line 1750
            iload 11 /* prop_len */
        12: .line 1749
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        13: .line 1751
            iload 6 /* index */
            iload 11 /* prop_len */
            iadd
            istore 6 /* index */
        14: .line 1752
            iload 9 /* i */
            iload 8 /* last */
            if_icmpge 15
            aload 4 /* dest_chars */
            iload 6 /* index */
            iinc 6 /* index */ 1
            bipush 44
            castore
        end local 11 // int prop_len
        end local 10 // javax.management.ObjectName$Property prop
        15: .line 1746
      StackMap locals:
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 9 /* i */
            iload 7 /* len */
            if_icmplt 8
        end local 9 // int i
        17: .line 1754
            iload 6 /* index */
            ireturn
        end local 8 // int last
        end local 7 // int len
        end local 6 // int index
        end local 5 // char[] value
        end local 4 // char[] dest_chars
        end local 3 // int offset
        end local 2 // char[] data
        end local 1 // char[] canonicalChars
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   18     0            this  Ljavax/management/ObjectName;
            0   18     1  canonicalChars  [C
            0   18     2            data  [C
            0   18     3          offset  I
            2   18     4      dest_chars  [C
            3   18     5           value  [C
            4   18     6           index  I
            5   18     7             len  I
            6   18     8            last  I
            7   17     9               i  I
            9   15    10            prop  Ljavax/management/ObjectName$Property;
           10   15    11        prop_len  I
    MethodParameters:
                Name  Flags
      canonicalChars  
      data            
      offset          

  public java.lang.String getCanonicalKeyPropertyListString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1771
            aload 0 /* this */
            getfield javax.management.ObjectName._ca_array:[Ljavax/management/ObjectName$Property;
            arraylength
            ifne 1
            ldc ""
            areturn
         1: .line 1773
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            istore 1 /* len */
        start local 1 // int len
         2: .line 1774
            aload 0 /* this */
            getfield javax.management.ObjectName._property_list_pattern:Z
            ifeq 3
            iinc 1 /* len */ -2
         3: .line 1775
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            aload 0 /* this */
            getfield javax.management.ObjectName._domain_length:I
            iconst_1
            iadd
            iload 1 /* len */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            areturn
        end local 1 // int len
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavax/management/ObjectName;
            2    4     1   len  I

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1790
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getSerializedNameString:()Ljava/lang/String;
            areturn
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/ObjectName;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // java.lang.Object object
         0: .line 1809
            aload 0 /* this */
            aload 1 /* object */
            if_acmpne 1
            iconst_1
            ireturn
         1: .line 1812
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            instanceof javax.management.ObjectName
            ifne 2
            iconst_0
            ireturn
         2: .line 1816
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            checkcast javax.management.ObjectName
            astore 2 /* on */
        start local 2 // javax.management.ObjectName on
         3: .line 1817
            aload 2 /* on */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            astore 3 /* on_string */
        start local 3 // java.lang.String on_string
         4: .line 1818
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            aload 3 /* on_string */
            if_acmpne 5
            iconst_1
            ireturn
         5: .line 1822
      StackMap locals: javax.management.ObjectName java.lang.String
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // java.lang.String on_string
        end local 2 // javax.management.ObjectName on
        end local 1 // java.lang.Object object
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Ljavax/management/ObjectName;
            0    6     1     object  Ljava/lang/Object;
            3    6     2         on  Ljavax/management/ObjectName;
            4    6     3  on_string  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      object  

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1831
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            invokevirtual java.lang.String.hashCode:()I
            ireturn
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/ObjectName;

  public static java.lang.String quote(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // java.lang.String s
         0: .line 1866
            new java.lang.StringBuilder
            dup
            ldc "\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 1 /* buf */
        start local 1 // java.lang.StringBuilder buf
         1: .line 1867
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            istore 2 /* len */
        start local 2 // int len
         2: .line 1868
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 12
         4: .line 1869
      StackMap locals: java.lang.StringBuilder int int
      StackMap stack:
            aload 0 /* s */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 4 /* c */
        start local 4 // char c
         5: .line 1870
            iload 4 /* c */
            lookupswitch { // 5
                   10: 6
                   34: 9
                   42: 9
                   63: 9
                   92: 9
              default: 10
          }
         6: .line 1872
      StackMap locals: int
      StackMap stack:
            bipush 110
            istore 4 /* c */
         7: .line 1873
            aload 1 /* buf */
            bipush 92
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         8: .line 1874
            goto 10
         9: .line 1879
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            bipush 92
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        10: .line 1882
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            iload 4 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 4 // char c
        11: .line 1868
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 3 /* i */
            iload 2 /* len */
            if_icmplt 4
        end local 3 // int i
        13: .line 1884
            aload 1 /* buf */
            bipush 34
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        14: .line 1885
            aload 1 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // int len
        end local 1 // java.lang.StringBuilder buf
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0     s  Ljava/lang/String;
            1   15     1   buf  Ljava/lang/StringBuilder;
            2   15     2   len  I
            3   13     3     i  I
            5   11     4     c  C
    Exceptions:
      throws java.lang.NullPointerException
    MethodParameters:
      Name  Flags
      s     

  public static java.lang.String unquote(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // java.lang.String q
         0: .line 1911
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* buf */
        start local 1 // java.lang.StringBuilder buf
         1: .line 1912
            aload 0 /* q */
            invokevirtual java.lang.String.length:()I
            istore 2 /* len */
        start local 2 // int len
         2: .line 1913
            iload 2 /* len */
            iconst_2
            if_icmplt 3
            aload 0 /* q */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 34
            if_icmpne 3
            aload 0 /* q */
            iload 2 /* len */
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            bipush 34
            if_icmpeq 4
         3: .line 1914
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Argument not quoted"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1915
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 3 /* i */
        start local 3 // int i
         5: goto 27
         6: .line 1916
      StackMap locals: int
      StackMap stack:
            aload 0 /* q */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 4 /* c */
        start local 4 // char c
         7: .line 1917
            iload 4 /* c */
            bipush 92
            if_icmpne 19
         8: .line 1918
            iload 3 /* i */
            iload 2 /* len */
            iconst_2
            isub
            if_icmpne 10
         9: .line 1919
            new java.lang.IllegalArgumentException
            dup
            ldc "Trailing backslash"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 1920
      StackMap locals: int
      StackMap stack:
            aload 0 /* q */
            iinc 3 /* i */ 1
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 4 /* c */
        11: .line 1921
            iload 4 /* c */
            lookupswitch { // 5
                   34: 14
                   42: 14
                   63: 14
                   92: 14
                  110: 12
              default: 15
          }
        12: .line 1923
      StackMap locals:
      StackMap stack:
            bipush 10
            istore 4 /* c */
        13: .line 1924
            goto 25
        14: .line 1929
      StackMap locals:
      StackMap stack:
            goto 25
        15: .line 1931
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
        16: .line 1932
            new java.lang.StringBuilder
            dup
            ldc "Bad character '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "' after backslash"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        17: .line 1931
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        18: .line 1934
      StackMap locals:
      StackMap stack:
            goto 25
        19: .line 1935
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            lookupswitch { // 4
                   10: 20
                   34: 20
                   42: 20
                   63: 20
              default: 25
          }
        20: .line 1940
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
        21: .line 1941
            new java.lang.StringBuilder
            dup
            ldc "Invalid unescaped character '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
        22: .line 1942
            ldc "' in the string to unquote"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        23: .line 1941
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        24: .line 1940
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        25: .line 1945
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            iload 4 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 4 // char c
        26: .line 1915
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        27: iload 3 /* i */
            iload 2 /* len */
            iconst_1
            isub
            if_icmplt 6
        end local 3 // int i
        28: .line 1947
            aload 1 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // int len
        end local 1 // java.lang.StringBuilder buf
        end local 0 // java.lang.String q
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   29     0     q  Ljava/lang/String;
            1   29     1   buf  Ljava/lang/StringBuilder;
            2   29     2   len  I
            5   28     3     i  I
            7   26     4     c  C
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.NullPointerException
    MethodParameters:
      Name  Flags
      q     

  public boolean apply(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // javax.management.ObjectName name
         0: .line 1987
            aload 1 /* name */
            ifnonnull 1
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         1: .line 1989
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            getfield javax.management.ObjectName._domain_pattern:Z
            ifne 4
         2: .line 1990
            aload 1 /* name */
            getfield javax.management.ObjectName._property_list_pattern:Z
            ifne 4
         3: .line 1991
            aload 1 /* name */
            getfield javax.management.ObjectName._property_value_pattern:Z
            ifeq 5
         4: .line 1992
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         5: .line 1995
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.ObjectName._domain_pattern:Z
            ifne 9
         6: .line 1996
            aload 0 /* this */
            getfield javax.management.ObjectName._property_list_pattern:Z
            ifne 9
         7: .line 1997
            aload 0 /* this */
            getfield javax.management.ObjectName._property_value_pattern:Z
            ifne 9
         8: .line 1998
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            aload 1 /* name */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ireturn
         9: .line 2000
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.matchDomains:(Ljavax/management/ObjectName;)Z
            ifeq 10
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.matchKeys:(Ljavax/management/ObjectName;)Z
            ifeq 10
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        10: iconst_0
            ireturn
        end local 1 // javax.management.ObjectName name
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Ljavax/management/ObjectName;
            0   11     1  name  Ljavax/management/ObjectName;
    Exceptions:
      throws java.lang.NullPointerException
    MethodParameters:
      Name  Flags
      name  

  private final boolean matchDomains(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // javax.management.ObjectName name
         0: .line 2004
            aload 0 /* this */
            getfield javax.management.ObjectName._domain_pattern:Z
            ifeq 4
         1: .line 2006
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getDomain:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 2 /* dom_pattern */
        start local 2 // char[] dom_pattern
         2: .line 2007
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.getDomain:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 3 /* dom_string */
        start local 3 // char[] dom_string
         3: .line 2008
            aload 3 /* dom_string */
            aload 2 /* dom_pattern */
            iconst_0
            iconst_0
            invokestatic javax.management.ObjectName.wildmatch:([C[CII)Z
            ireturn
        end local 3 // char[] dom_string
        end local 2 // char[] dom_pattern
         4: .line 2010
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getDomain:()Ljava/lang/String;
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.getDomain:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // javax.management.ObjectName name
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Ljavax/management/ObjectName;
            0    5     1         name  Ljavax/management/ObjectName;
            2    4     2  dom_pattern  [C
            3    4     3   dom_string  [C
    MethodParameters:
      Name  Flags
      name  

  private final boolean matchKeys(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=4, locals=11, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // javax.management.ObjectName name
         0: .line 2017
            aload 0 /* this */
            getfield javax.management.ObjectName._property_value_pattern:Z
            ifeq 4
         1: .line 2018
            aload 0 /* this */
            getfield javax.management.ObjectName._property_list_pattern:Z
            ifne 4
         2: .line 2019
            aload 1 /* name */
            getfield javax.management.ObjectName._ca_array:[Ljavax/management/ObjectName$Property;
            arraylength
            aload 0 /* this */
            getfield javax.management.ObjectName._ca_array:[Ljavax/management/ObjectName$Property;
            arraylength
            if_icmpeq 4
         3: .line 2020
            iconst_0
            ireturn
         4: .line 2025
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.ObjectName._property_value_pattern:Z
            ifne 5
            aload 0 /* this */
            getfield javax.management.ObjectName._property_list_pattern:Z
            ifeq 26
         5: .line 2026
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            invokevirtual javax.management.ObjectName._getKeyPropertyList:()Ljava/util/Map;
            astore 2 /* nameProps */
        start local 2 // java.util.Map nameProps
         6: .line 2027
            aload 0 /* this */
            getfield javax.management.ObjectName._ca_array:[Ljavax/management/ObjectName$Property;
            astore 3 /* props */
        start local 3 // javax.management.ObjectName$Property[] props
         7: .line 2028
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            astore 4 /* cn */
        start local 4 // java.lang.String cn
         8: .line 2029
            aload 3 /* props */
            arraylength
            iconst_1
            isub
            istore 5 /* i */
        start local 5 // int i
         9: goto 24
        10: .line 2033
      StackMap locals: javax.management.ObjectName javax.management.ObjectName java.util.Map javax.management.ObjectName$Property[] java.lang.String int
      StackMap stack:
            aload 3 /* props */
            iload 5 /* i */
            aaload
            astore 6 /* p */
        start local 6 // javax.management.ObjectName$Property p
        11: .line 2034
            aload 6 /* p */
            aload 4 /* cn */
            invokevirtual javax.management.ObjectName$Property.getKeyString:(Ljava/lang/String;)Ljava/lang/String;
            astore 7 /* k */
        start local 7 // java.lang.String k
        12: .line 2035
            aload 2 /* nameProps */
            aload 7 /* k */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 8 /* v */
        start local 8 // java.lang.String v
        13: .line 2038
            aload 8 /* v */
            ifnonnull 14
            iconst_0
            ireturn
        14: .line 2041
      StackMap locals: javax.management.ObjectName$Property java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.ObjectName._property_value_pattern:Z
            ifeq 21
            aload 6 /* p */
            instanceof javax.management.ObjectName$PatternProperty
            ifeq 21
        15: .line 2044
            aload 6 /* p */
            aload 4 /* cn */
            invokevirtual javax.management.ObjectName$Property.getValueString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
        16: .line 2043
            astore 9 /* val_pattern */
        start local 9 // char[] val_pattern
        17: .line 2045
            aload 8 /* v */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 10 /* val_string */
        start local 10 // char[] val_string
        18: .line 2046
            aload 10 /* val_string */
            aload 9 /* val_pattern */
            iconst_0
            iconst_0
            invokestatic javax.management.ObjectName.wildmatch:([C[CII)Z
            ifeq 20
        19: .line 2047
            goto 23
        20: .line 2049
      StackMap locals: char[] char[]
      StackMap stack:
            iconst_0
            ireturn
        end local 10 // char[] val_string
        end local 9 // char[] val_pattern
        21: .line 2051
      StackMap locals:
      StackMap stack:
            aload 8 /* v */
            aload 6 /* p */
            aload 4 /* cn */
            invokevirtual javax.management.ObjectName$Property.getValueString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 22
            goto 23
        22: .line 2052
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 8 // java.lang.String v
        end local 7 // java.lang.String k
        end local 6 // javax.management.ObjectName$Property p
        23: .line 2029
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ -1
      StackMap locals:
      StackMap stack:
        24: iload 5 /* i */
            ifge 10
        end local 5 // int i
        25: .line 2054
            iconst_1
            ireturn
        end local 4 // java.lang.String cn
        end local 3 // javax.management.ObjectName$Property[] props
        end local 2 // java.util.Map nameProps
        26: .line 2059
      StackMap locals: javax.management.ObjectName javax.management.ObjectName
      StackMap stack:
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.getCanonicalKeyPropertyListString:()Ljava/lang/String;
            astore 2 /* p1 */
        start local 2 // java.lang.String p1
        27: .line 2060
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getCanonicalKeyPropertyListString:()Ljava/lang/String;
            astore 3 /* p2 */
        start local 3 // java.lang.String p2
        28: .line 2061
            aload 2 /* p1 */
            aload 3 /* p2 */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 3 // java.lang.String p2
        end local 2 // java.lang.String p1
        end local 1 // javax.management.ObjectName name
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   29     0         this  Ljavax/management/ObjectName;
            0   29     1         name  Ljavax/management/ObjectName;
            6   26     2    nameProps  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            7   26     3        props  [Ljavax/management/ObjectName$Property;
            8   26     4           cn  Ljava/lang/String;
            9   25     5            i  I
           11   23     6            p  Ljavax/management/ObjectName$Property;
           12   23     7            k  Ljava/lang/String;
           13   23     8            v  Ljava/lang/String;
           17   21     9  val_pattern  [C
           18   21    10   val_string  [C
           27   29     2           p1  Ljava/lang/String;
           28   29     3           p2  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public void setMBeanServer(javax.management.MBeanServer);
    descriptor: (Ljavax/management/MBeanServer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // javax.management.MBeanServer mbs
         0: .line 2068
            return
        end local 1 // javax.management.MBeanServer mbs
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/ObjectName;
            0    1     1   mbs  Ljavax/management/MBeanServer;
    MethodParameters:
      Name  Flags
      mbs   

  public int compareTo(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // javax.management.ObjectName name
         0: .line 2120
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getDomain:()Ljava/lang/String;
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.getDomain:()Ljava/lang/String;
            invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
            istore 2 /* domainValue */
        start local 2 // int domainValue
         1: .line 2121
            iload 2 /* domainValue */
            ifeq 3
         2: .line 2122
            iload 2 /* domainValue */
            ireturn
         3: .line 2132
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            ldc "type"
            invokevirtual javax.management.ObjectName.getKeyProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* thisTypeKey */
        start local 3 // java.lang.String thisTypeKey
         4: .line 2133
            aload 1 /* name */
            ldc "type"
            invokevirtual javax.management.ObjectName.getKeyProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* anotherTypeKey */
        start local 4 // java.lang.String anotherTypeKey
         5: .line 2134
            aload 3 /* thisTypeKey */
            ifnonnull 7
         6: .line 2135
            ldc ""
            astore 3 /* thisTypeKey */
         7: .line 2136
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 4 /* anotherTypeKey */
            ifnonnull 9
         8: .line 2137
            ldc ""
            astore 4 /* anotherTypeKey */
         9: .line 2138
      StackMap locals:
      StackMap stack:
            aload 3 /* thisTypeKey */
            aload 4 /* anotherTypeKey */
            invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
            istore 5 /* typeKeyValue */
        start local 5 // int typeKeyValue
        10: .line 2139
            iload 5 /* typeKeyValue */
            ifeq 12
        11: .line 2140
            iload 5 /* typeKeyValue */
            ireturn
        12: .line 2144
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getCanonicalName:()Ljava/lang/String;
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.getCanonicalName:()Ljava/lang/String;
            invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
            ireturn
        end local 5 // int typeKeyValue
        end local 4 // java.lang.String anotherTypeKey
        end local 3 // java.lang.String thisTypeKey
        end local 2 // int domainValue
        end local 1 // javax.management.ObjectName name
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   13     0            this  Ljavax/management/ObjectName;
            0   13     1            name  Ljavax/management/ObjectName;
            1   13     2     domainValue  I
            4   13     3     thisTypeKey  Ljava/lang/String;
            5   13     4  anotherTypeKey  Ljava/lang/String;
           10   13     5    typeKeyValue  I
    MethodParameters:
      Name  Flags
      name  

  public int compareTo(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast javax.management.ObjectName
            invokevirtual javax.management.ObjectName.compareTo:(Ljavax/management/ObjectName;)I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Ljava/lang/Object;Ljava/lang/Comparable<Ljavax/management/ObjectName;>;Ljavax/management/QueryExp;
SourceFile: "ObjectName.java"
NestMembers:
  javax.management.ObjectName$PatternProperty  javax.management.ObjectName$Property
InnerClasses:
  public abstract GetField = java.io.ObjectInputStream$GetField of java.io.ObjectInputStream
  public abstract PutField = java.io.ObjectOutputStream$PutField of java.io.ObjectOutputStream
  public abstract Entry = java.util.Map$Entry of java.util.Map
  private PatternProperty = javax.management.ObjectName$PatternProperty of javax.management.ObjectName
  private Property = javax.management.ObjectName$Property of javax.management.ObjectName