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 int DOMAIN_PATTERN;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -2147483648

  private static final int PROPLIST_PATTERN;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1073741824

  private static final int PROPVAL_PATTERN;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 536870912

  private static final int FLAG_MASK;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -536870912

  private static final int DOMAIN_LENGTH_MASK;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 536870911

  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 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 int _compressed_storage;
    descriptor: I
    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 312
            bipush 6
            anewarray java.io.ObjectStreamField
            dup
            iconst_0
         1: .line 313
            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 314
            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 315
            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 316
            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 317
            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 318
            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 311
            putstatic javax.management.ObjectName.oldSerialPersistentFields:[Ljava/io/ObjectStreamField;
         8: .line 322
            iconst_0
            anewarray java.io.ObjectStreamField
            putstatic javax.management.ObjectName.newSerialPersistentFields:[Ljava/io/ObjectStreamField;
         9: .line 327
            iconst_0
            putstatic javax.management.ObjectName.compat:Z
        10: .line 330
            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 331
            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 332
            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 333
            goto 17
      StackMap locals:
      StackMap stack: java.lang.Exception
        16: pop
        17: .line 336
      StackMap locals:
      StackMap stack:
            getstatic javax.management.ObjectName.compat:Z
            ifeq 21
        18: .line 337
            getstatic javax.management.ObjectName.oldSerialPersistentFields:[Ljava/io/ObjectStreamField;
            putstatic javax.management.ObjectName.serialPersistentFields:[Ljava/io/ObjectStreamField;
        19: .line 338
            ldc -5467795090068647408
            putstatic javax.management.ObjectName.serialVersionUID:J
        20: .line 339
            goto 23
        21: .line 340
      StackMap locals:
      StackMap stack:
            getstatic javax.management.ObjectName.newSerialPersistentFields:[Ljava/io/ObjectStreamField;
            putstatic javax.management.ObjectName.serialPersistentFields:[Ljava/io/ObjectStreamField;
        22: .line 341
            ldc 1081892073854801359
            putstatic javax.management.ObjectName.serialVersionUID:J
        23: .line 353
      StackMap locals:
      StackMap stack:
            iconst_0
            anewarray javax.management.ObjectName$Property
            putstatic javax.management.ObjectName._Empty_property_array:[Ljavax/management/ObjectName$Property;
        24: .line 1982
            ldc "*:*"
            invokestatic com.sun.jmx.mbeanserver.Util.newObjectName:(Ljava/lang/String;)Ljavax/management/ObjectName;
            putstatic javax.management.ObjectName.WILDCARD:Ljavax/management/ObjectName;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
           11   15     0   act  Lcom/sun/jmx/mbeanserver/GetPropertyAction;
           12   15     1  form  Ljava/lang/String;
      Exception table:
        from    to  target  type
          10    15      16  Class java.lang.Exception

  private void construct(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=23, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // java.lang.String name
         0: .line 422
            aload 1 /* name */
            ifnonnull 2
         1: .line 423
            new java.lang.NullPointerException
            dup
            ldc "name cannot be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 426
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            invokevirtual java.lang.String.length:()I
            ifne 12
         3: .line 428
            aload 0 /* this */
            ldc "*:*"
            putfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
         4: .line 429
            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 430
            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 431
            aload 0 /* this */
            iconst_1
            invokevirtual javax.management.ObjectName.setDomainLength:(I)V
         7: .line 432
            aload 0 /* this */
            aconst_null
            putfield javax.management.ObjectName._propertyList:Ljava/util/Map;
         8: .line 433
            aload 0 /* this */
            iconst_1
            invokevirtual javax.management.ObjectName.setDomainPattern:(Z)V
         9: .line 434
            aload 0 /* this */
            iconst_1
            invokevirtual javax.management.ObjectName.setPropertyListPattern:(Z)V
        10: .line 435
            aload 0 /* this */
            iconst_0
            invokevirtual javax.management.ObjectName.setPropertyValuePattern:(Z)V
        11: .line 436
            return
        12: .line 440
      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 441
            aload 2 /* name_chars */
            arraylength
            istore 3 /* len */
        start local 3 // int len
        14: .line 442
            iload 3 /* len */
            newarray 5
            astore 4 /* canonical_chars */
        start local 4 // char[] canonical_chars
        15: .line 444
            iconst_0
            istore 5 /* cname_index */
        start local 5 // int cname_index
        16: .line 445
            iconst_0
            istore 6 /* index */
        start local 6 // int index
        17: .line 450
            goto 36
        18: .line 451
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int
      StackMap stack:
            aload 2 /* name_chars */
            iload 6 /* index */
            caload
            lookupswitch { // 5
                   10: 29
                   42: 32
                   58: 19
                   61: 21
                   63: 32
              default: 35
          }
        19: .line 453
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 6 /* index */
            iinc 6 /* index */ 1
            invokevirtual javax.management.ObjectName.setDomainLength:(I)V
        20: .line 454
            goto 37
        21: .line 463
      StackMap locals:
      StackMap stack:
            iinc 6 /* index */ 1
            iload 6 /* index */
            istore 9 /* i */
        start local 9 // int i
        22: .line 464
            goto 27
        23: .line 465
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int top top int
      StackMap stack:
            iload 9 /* i */
            iload 3 /* len */
            if_icmpne 27
        24: .line 466
            new javax.management.MalformedObjectNameException
            dup
        25: .line 467
            ldc "Domain part must be specified"
        26: .line 466
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        27: .line 464
      StackMap locals:
      StackMap stack:
            iload 9 /* i */
            iload 3 /* len */
            if_icmpge 36
            aload 2 /* name_chars */
            iload 9 /* i */
            iinc 9 /* i */ 1
            caload
            bipush 58
            if_icmpne 23
        28: .line 468
            goto 36
        end local 9 // int i
        29: .line 470
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int
      StackMap stack:
            new javax.management.MalformedObjectNameException
            dup
        30: .line 471
            ldc "Invalid character '\\n' in domain name"
        31: .line 470
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        32: .line 474
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual javax.management.ObjectName.setDomainPattern:(Z)V
        33: .line 475
            iinc 6 /* index */ 1
        34: .line 476
            goto 36
        35: .line 478
      StackMap locals:
      StackMap stack:
            iinc 6 /* index */ 1
        36: .line 450
      StackMap locals:
      StackMap stack:
            iload 6 /* index */
            iload 3 /* len */
            if_icmplt 18
        37: .line 484
      StackMap locals:
      StackMap stack:
            iload 6 /* index */
            iload 3 /* len */
            if_icmpne 41
        38: .line 485
            new javax.management.MalformedObjectNameException
            dup
        39: .line 486
            ldc "Key properties cannot be empty"
        40: .line 485
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        41: .line 489
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getDomainLength:()I
            istore 9 /* _domain_length */
        start local 9 // int _domain_length
        42: .line 490
            aload 2 /* name_chars */
            iconst_0
            aload 4 /* canonical_chars */
            iconst_0
            iload 9 /* _domain_length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        43: .line 491
            aload 4 /* canonical_chars */
            iload 9 /* _domain_length */
            bipush 58
            castore
        44: .line 492
            iload 9 /* _domain_length */
            iconst_1
            iadd
            istore 5 /* cname_index */
        45: .line 496
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 11 /* keys_map */
        start local 11 // java.util.Map keys_map
        46: .line 500
            iconst_0
            istore 15 /* property_index */
        start local 15 // int property_index
        47: .line 504
            bipush 10
            anewarray java.lang.String
            astore 12 /* keys */
        start local 12 // java.lang.String[] keys
        48: .line 505
            aload 0 /* this */
            bipush 10
            anewarray javax.management.ObjectName$Property
            putfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
        49: .line 506
            aload 0 /* this */
            iconst_0
            invokevirtual javax.management.ObjectName.setPropertyListPattern:(Z)V
        50: .line 507
            aload 0 /* this */
            iconst_0
            invokevirtual javax.management.ObjectName.setPropertyValuePattern:(Z)V
        51: .line 509
            goto 167
        52: .line 510
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int top top int 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 513
            iload 7 /* c */
            bipush 42
            if_icmpne 71
        54: .line 514
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.isPropertyListPattern:()Z
            ifeq 58
        55: .line 515
            new javax.management.MalformedObjectNameException
            dup
        56: .line 516
            ldc "Cannot have several '*' characters in pattern property list"
        57: .line 515
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        58: .line 519
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int top int top java.util.Map java.lang.String[] top top int
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual javax.management.ObjectName.setPropertyListPattern:(Z)V
        59: .line 520
            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 521
            new javax.management.MalformedObjectNameException
            dup
        61: .line 522
            ldc "Invalid character found after '*': end of name or ',' expected"
        62: .line 521
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        63: .line 524
      StackMap locals:
      StackMap stack:
            iload 6 /* index */
            iload 3 /* len */
            if_icmpne 69
        64: .line 525
            iload 15 /* property_index */
            ifne 168
        65: .line 527
            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 528
            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 529
            aload 0 /* this */
            invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
            putfield javax.management.ObjectName._propertyList:Ljava/util/Map;
        68: .line 531
            goto 168
        69: .line 534
      StackMap locals:
      StackMap stack:
            iinc 6 /* index */ 1
        70: .line 535
            goto 167
        71: .line 541
      StackMap locals:
      StackMap stack:
            iload 6 /* index */
            istore 16 /* in_index */
        start local 16 // int in_index
        72: .line 542
            iload 16 /* in_index */
            istore 17 /* key_index */
        start local 17 // int key_index
        73: .line 543
            aload 2 /* name_chars */
            iload 16 /* in_index */
            caload
            bipush 61
            if_icmpne 84
        74: .line 544
            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 546
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int 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 553
      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 21 /* ichar */
        start local 21 // java.lang.String ichar
        79: .line 554
            new javax.management.MalformedObjectNameException
            dup
        80: .line 555
            new java.lang.StringBuilder
            dup
            ldc "Invalid character '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 21 /* ichar */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        81: .line 556
            ldc "' in key part of property"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        82: .line 555
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        83: .line 554
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        end local 21 // java.lang.String ichar
        end local 8 // char c1
        84: .line 545
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int top int top java.util.Map java.lang.String[] top top int int int
      StackMap stack:
            iload 16 /* in_index */
            iload 3 /* len */
            if_icmpge 86
            aload 2 /* name_chars */
            iload 16 /* in_index */
            iinc 16 /* 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 558
      StackMap locals:
      StackMap stack:
            aload 2 /* name_chars */
            iload 16 /* in_index */
            iconst_1
            isub
            caload
            bipush 61
            if_icmpeq 90
        87: .line 559
            new javax.management.MalformedObjectNameException
            dup
        88: .line 560
            ldc "Unterminated key property part"
        89: .line 559
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        90: .line 561
      StackMap locals:
      StackMap stack:
            iload 16 /* in_index */
            istore 19 /* value_index */
        start local 19 // int value_index
        91: .line 562
            iload 19 /* value_index */
            iload 17 /* key_index */
            isub
            iconst_1
            isub
            istore 18 /* key_length */
        start local 18 // int key_length
        92: .line 565
            iconst_0
            istore 21 /* value_pattern */
        start local 21 // boolean value_pattern
        93: .line 566
            iload 16 /* in_index */
            iload 3 /* len */
            if_icmpge 124
            aload 2 /* name_chars */
            iload 16 /* in_index */
            caload
            bipush 34
            if_icmpne 124
        94: .line 567
            iconst_1
            istore 14 /* quoted_value */
        start local 14 // boolean quoted_value
        95: .line 570
            goto 115
        start local 8 // char c1
        96: .line 573
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int 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 574
            iinc 16 /* in_index */ 1
            iload 16 /* in_index */
            iload 3 /* len */
            if_icmpne 101
        98: .line 575
            new javax.management.MalformedObjectNameException
            dup
        99: .line 576
            ldc "Unterminated quoted value"
       100: .line 575
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
       101: .line 577
      StackMap locals:
      StackMap stack:
            aload 2 /* name_chars */
            iload 16 /* in_index */
            caload
            dup
            istore 8 /* c1 */
            lookupswitch { // 5
                   34: 102
                   42: 102
                   63: 102
                   92: 102
                  110: 102
              default: 103
          }
       102: .line 583
      StackMap locals:
      StackMap stack:
            goto 115
       103: .line 585
      StackMap locals:
      StackMap stack:
            new javax.management.MalformedObjectNameException
            dup
       104: .line 586
            new java.lang.StringBuilder
            dup
            ldc "Invalid escape sequence '\\"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
       105: .line 587
            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 586
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       107: .line 585
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
       108: .line 589
      StackMap locals:
      StackMap stack:
            goto 115
      StackMap locals:
      StackMap stack:
       109: iload 8 /* c1 */
            bipush 10
            if_icmpne 113
       110: .line 590
            new javax.management.MalformedObjectNameException
            dup
       111: .line 591
            ldc "Newline in quoted value"
       112: .line 590
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
       113: .line 593
      StackMap locals:
      StackMap stack:
            iload 8 /* c1 */
            lookupswitch { // 2
                   42: 114
                   63: 114
              default: 115
          }
       114: .line 596
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 21 /* value_pattern */
        end local 8 // char c1
       115: .line 570
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int top int top java.util.Map java.lang.String[] top int int int int int int top int
      StackMap stack:
            iinc 16 /* in_index */ 1
            iload 16 /* in_index */
            iload 3 /* len */
            if_icmpge 118
       116: .line 571
            aload 2 /* name_chars */
            iload 16 /* 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 601
      StackMap locals:
      StackMap stack:
            iload 16 /* in_index */
            iload 3 /* len */
            if_icmpne 122
       119: .line 602
            new javax.management.MalformedObjectNameException
            dup
       120: .line 603
            ldc "Unterminated quoted value"
       121: .line 602
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
       122: .line 604
      StackMap locals:
      StackMap stack:
            iinc 16 /* in_index */ 1
            iload 16 /* in_index */
            iload 19 /* value_index */
            isub
            istore 20 /* value_length */
        start local 20 // int value_length
       123: .line 605
            goto 142
        end local 20 // int value_length
        end local 14 // boolean quoted_value
       124: .line 607
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int top int top java.util.Map java.lang.String[] top top int int int int int top int
      StackMap stack:
            iconst_0
            istore 14 /* quoted_value */
        start local 14 // boolean quoted_value
       125: .line 608
            goto 139
        start local 8 // char c1
       126: .line 609
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int 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: 138
          }
       127: .line 613
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 21 /* value_pattern */
       128: .line 614
            iinc 16 /* in_index */ 1
       129: .line 615
            goto 139
       130: .line 620
      StackMap locals:
      StackMap stack:
            iload 8 /* c1 */
            bipush 10
            if_icmpne 131
            ldc "\\n"
            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;
      StackMap locals:
      StackMap stack: java.lang.String
       132: astore 22 /* ichar */
        start local 22 // java.lang.String ichar
       133: .line 621
            new javax.management.MalformedObjectNameException
            dup
       134: .line 622
            new java.lang.StringBuilder
            dup
            ldc "Invalid character '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 22 /* ichar */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
       135: .line 623
            ldc "' in value part of property"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
       136: .line 622
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       137: .line 621
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        end local 22 // java.lang.String ichar
       138: .line 625
      StackMap locals:
      StackMap stack:
            iinc 16 /* in_index */ 1
        end local 8 // char c1
       139: .line 608
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int top int top java.util.Map java.lang.String[] top int int int int int int top int
      StackMap stack:
            iload 16 /* in_index */
            iload 3 /* len */
            if_icmpge 141
            aload 2 /* name_chars */
            iload 16 /* in_index */
            caload
            dup
            istore 8 /* c1 */
        start local 8 // char c1
       140: bipush 44
            if_icmpne 126
        end local 8 // char c1
       141: .line 628
      StackMap locals:
      StackMap stack:
            iload 16 /* in_index */
            iload 19 /* value_index */
            isub
            istore 20 /* value_length */
        start local 20 // int value_length
       142: .line 632
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int top int top java.util.Map java.lang.String[] top int int int int int int int int
      StackMap stack:
            iload 16 /* in_index */
            iload 3 /* len */
            iconst_1
            isub
            if_icmpne 152
       143: .line 633
            iload 14 /* quoted_value */
            ifeq 149
       144: .line 634
            new javax.management.MalformedObjectNameException
            dup
       145: .line 635
            new java.lang.StringBuilder
            dup
            ldc "Invalid ending character `"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
       146: .line 636
            aload 2 /* name_chars */
            iload 16 /* in_index */
            caload
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
       147: .line 635
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       148: .line 634
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
       149: .line 637
      StackMap locals:
      StackMap stack:
            new javax.management.MalformedObjectNameException
            dup
       150: .line 638
            ldc "Invalid ending comma"
       151: .line 637
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
       152: .line 639
      StackMap locals:
      StackMap stack:
            iinc 16 /* in_index */ 1
       153: .line 642
            iload 21 /* value_pattern */
            ifne 156
       154: .line 643
            new javax.management.ObjectName$Property
            dup
            iload 17 /* key_index */
            iload 18 /* key_length */
            iload 20 /* value_length */
            invokespecial javax.management.ObjectName$Property.<init>:(III)V
            astore 10 /* prop */
        start local 10 // javax.management.ObjectName$Property prop
       155: .line 644
            goto 158
        end local 10 // javax.management.ObjectName$Property prop
       156: .line 645
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual javax.management.ObjectName.setPropertyValuePattern:(Z)V
       157: .line 646
            new javax.management.ObjectName$PatternProperty
            dup
            iload 17 /* key_index */
            iload 18 /* key_length */
            iload 20 /* value_length */
            invokespecial javax.management.ObjectName$PatternProperty.<init>:(III)V
            astore 10 /* prop */
        start local 10 // javax.management.ObjectName$Property prop
       158: .line 648
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int top int 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 17 /* key_index */
            iload 17 /* key_index */
            iload 18 /* key_length */
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 13 /* key_name */
        start local 13 // java.lang.String key_name
       159: .line 650
            iload 15 /* property_index */
            aload 12 /* keys */
            arraylength
            if_icmpne 163
       160: .line 651
            iload 15 /* property_index */
            bipush 10
            iadd
            anewarray java.lang.String
            astore 22 /* tmp_string_array */
        start local 22 // java.lang.String[] tmp_string_array
       161: .line 652
            aload 12 /* keys */
            iconst_0
            aload 22 /* tmp_string_array */
            iconst_0
            iload 15 /* property_index */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
       162: .line 653
            aload 22 /* tmp_string_array */
            astore 12 /* keys */
        end local 22 // java.lang.String[] tmp_string_array
       163: .line 655
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int int top int javax.management.ObjectName$Property java.util.Map java.lang.String[] java.lang.String int int int int int int int int
      StackMap stack:
            aload 12 /* keys */
            iload 15 /* property_index */
            aload 13 /* key_name */
            aastore
       164: .line 657
            aload 0 /* this */
            aload 10 /* prop */
            iload 15 /* property_index */
            aload 11 /* keys_map */
            aload 13 /* key_name */
            invokevirtual javax.management.ObjectName.addProperty:(Ljavax/management/ObjectName$Property;ILjava/util/Map;Ljava/lang/String;)V
       165: .line 658
            iinc 15 /* property_index */ 1
       166: .line 659
            iload 16 /* in_index */
            istore 6 /* index */
        end local 21 // boolean value_pattern
        end local 20 // int value_length
        end local 19 // int value_index
        end local 18 // int key_length
        end local 17 // int key_index
        end local 16 // int in_index
        end local 14 // boolean quoted_value
        end local 13 // java.lang.String key_name
        end local 10 // javax.management.ObjectName$Property prop
        end local 7 // char c
       167: .line 509
      StackMap locals: javax.management.ObjectName java.lang.String char[] int char[] int int top top int top java.util.Map java.lang.String[] top top int
      StackMap stack:
            iload 6 /* index */
            iload 3 /* len */
            if_icmplt 52
       168: .line 663
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* name_chars */
            aload 4 /* canonical_chars */
            aload 12 /* keys */
       169: .line 664
            aload 11 /* keys_map */
            iload 5 /* cname_index */
            iload 15 /* property_index */
       170: .line 663
            invokevirtual javax.management.ObjectName.setCanonicalName:([C[C[Ljava/lang/String;Ljava/util/Map;II)V
       171: .line 665
            return
        end local 15 // int property_index
        end local 12 // java.lang.String[] keys
        end local 11 // java.util.Map keys_map
        end local 9 // int _domain_length
        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  172     0              this  Ljavax/management/ObjectName;
            0  172     1              name  Ljava/lang/String;
           13  172     2        name_chars  [C
           14  172     3               len  I
           15  172     4   canonical_chars  [C
           16  172     5       cname_index  I
           17  172     6             index  I
           53  167     7                 c  C
           75   84     8                c1  C
           85   86     8                c1  C
           96  115     8                c1  C
          117  118     8                c1  C
          126  139     8                c1  C
          140  141     8                c1  C
           22   29     9                 i  I
           42  172     9    _domain_length  I
          155  156    10              prop  Ljavax/management/ObjectName$Property;
          158  167    10              prop  Ljavax/management/ObjectName$Property;
           46  172    11          keys_map  Ljava/util/Map<Ljava/lang/String;Ljavax/management/ObjectName$Property;>;
           48  172    12              keys  [Ljava/lang/String;
          159  167    13          key_name  Ljava/lang/String;
           95  124    14      quoted_value  Z
          125  167    14      quoted_value  Z
           47  172    15    property_index  I
           72  167    16          in_index  I
           73  167    17         key_index  I
           92  167    18        key_length  I
           91  167    19       value_index  I
          123  124    20      value_length  I
          142  167    20      value_length  I
           79   84    21             ichar  Ljava/lang/String;
           93  167    21     value_pattern  Z
          133  138    22             ichar  Ljava/lang/String;
          161  163    22  tmp_string_array  [Ljava/lang/String;
    Exceptions:
      throws javax.management.MalformedObjectNameException
    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 684
            aload 1 /* domain */
            ifnonnull 2
         1: .line 685
            new java.lang.NullPointerException
            dup
            ldc "domain cannot be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 688
      StackMap locals:
      StackMap stack:
            aload 2 /* props */
            ifnonnull 4
         3: .line 689
            new java.lang.NullPointerException
            dup
            ldc "key property list cannot be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 692
      StackMap locals:
      StackMap stack:
            aload 2 /* props */
            invokeinterface java.util.Map.isEmpty:()Z
            ifeq 8
         5: .line 693
            new javax.management.MalformedObjectNameException
            dup
         6: .line 694
            ldc "key property list cannot be empty"
         7: .line 693
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 697
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* domain */
            invokevirtual javax.management.ObjectName.isDomain:(Ljava/lang/String;)Z
            ifne 10
         9: .line 698
            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 701
      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 702
            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 703
            aload 0 /* this */
            aload 1 /* domain */
            invokevirtual java.lang.String.length:()I
            invokevirtual javax.management.ObjectName.setDomainLength:(I)V
        13: .line 706
            aload 2 /* props */
            invokeinterface java.util.Map.size:()I
            istore 4 /* nb_props */
        start local 4 // int nb_props
        14: .line 707
            aload 0 /* this */
            iload 4 /* nb_props */
            anewarray javax.management.ObjectName$Property
            putfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
        15: .line 709
            iload 4 /* nb_props */
            anewarray java.lang.String
            astore 5 /* keys */
        start local 5 // java.lang.String[] keys
        16: .line 710
            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 713
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        18: .line 714
            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 715
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 22
        21: .line 716
            aload 3 /* sb */
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        22: .line 717
      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 720
            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 721
            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 722
            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 724
      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 725
            aload 12 /* key */
            invokestatic javax.management.ObjectName.checkKey:(Ljava/lang/String;)V
        29: .line 726
            aload 3 /* sb */
            aload 12 /* key */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        30: .line 727
            aload 5 /* keys */
            iload 9 /* i */
            aload 12 /* key */
            aastore
        31: .line 728
            aload 3 /* sb */
            ldc "="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        32: .line 729
            aload 13 /* value */
            invokestatic javax.management.ObjectName.checkValue:(Ljava/lang/String;)Z
            istore 14 /* value_pattern */
        start local 14 // boolean value_pattern
        33: .line 730
            aload 3 /* sb */
            aload 13 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        34: .line 731
            iload 14 /* value_pattern */
            ifne 40
        35: .line 732
            new javax.management.ObjectName$Property
            dup
            iload 8 /* key_index */
        36: .line 733
            aload 12 /* key */
            invokevirtual java.lang.String.length:()I
        37: .line 734
            aload 13 /* value */
            invokevirtual java.lang.String.length:()I
        38: .line 732
            invokespecial javax.management.ObjectName$Property.<init>:(III)V
            astore 7 /* prop */
        start local 7 // javax.management.ObjectName$Property prop
        39: .line 735
            goto 45
        end local 7 // javax.management.ObjectName$Property prop
        40: .line 736
      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
            invokevirtual javax.management.ObjectName.setPropertyValuePattern:(Z)V
        41: .line 737
            new javax.management.ObjectName$PatternProperty
            dup
            iload 8 /* key_index */
        42: .line 738
            aload 12 /* key */
            invokevirtual java.lang.String.length:()I
        43: .line 739
            aload 13 /* value */
            invokevirtual java.lang.String.length:()I
        44: .line 737
            invokespecial javax.management.ObjectName$PatternProperty.<init>:(III)V
            astore 7 /* prop */
        start local 7 // javax.management.ObjectName$Property prop
        45: .line 741
      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 742
            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 714
      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 746
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            istore 10 /* len */
        start local 10 // int len
        49: .line 747
            iload 10 /* len */
            newarray 5
            astore 11 /* initial_chars */
        start local 11 // char[] initial_chars
        50: .line 748
            aload 3 /* sb */
            iconst_0
            iload 10 /* len */
            aload 11 /* initial_chars */
            iconst_0
            invokevirtual java.lang.StringBuilder.getChars:(II[CI)V
        51: .line 749
            iload 10 /* len */
            newarray 5
            astore 12 /* canonical_chars */
        start local 12 // char[] canonical_chars
        52: .line 750
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getDomainLength:()I
            iconst_1
            iadd
            istore 13 /* copyLen */
        start local 13 // int copyLen
        53: .line 751
            aload 11 /* initial_chars */
            iconst_0
            aload 12 /* canonical_chars */
            iconst_0
            iload 13 /* copyLen */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        54: .line 752
            aload 0 /* this */
            aload 11 /* initial_chars */
            aload 12 /* canonical_chars */
            aload 5 /* keys */
            aload 6 /* keys_map */
        55: .line 753
            iload 13 /* copyLen */
            aload 0 /* this */
            getfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
            arraylength
        56: .line 752
            invokevirtual javax.management.ObjectName.setCanonicalName:([C[C[Ljava/lang/String;Ljava/util/Map;II)V
        57: .line 754
            return
        end local 13 // int copyLen
        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   58     0             this  Ljavax/management/ObjectName;
            0   58     1           domain  Ljava/lang/String;
            0   58     2            props  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
           11   58     3               sb  Ljava/lang/StringBuilder;
           14   58     4         nb_props  I
           16   58     5             keys  [Ljava/lang/String;
           17   58     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   58     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   58    10              len  I
           50   58    11    initial_chars  [C
           52   58    12  canonical_chars  [C
           53   58    13          copyLen  I
      Exception table:
        from    to  target  type
          23    24      25  Class java.lang.ClassCastException
    Exceptions:
      throws javax.management.MalformedObjectNameException
    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 767
            aload 3 /* keys_map */
            aload 4 /* key_name */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 4
         1: .line 768
            new javax.management.MalformedObjectNameException
            dup
            new java.lang.StringBuilder
            dup
            ldc "key `"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 769
            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 767
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 772
      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 773
            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 774
            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 775
            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 777
      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 778
            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 779
            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 792
            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 793
            iload 6 /* nb_props */
            anewarray java.lang.String
            astore 7 /* tmp_keys */
        start local 7 // java.lang.String[] tmp_keys
         2: .line 794
            iload 6 /* nb_props */
            anewarray javax.management.ObjectName$Property
            astore 8 /* tmp_props */
        start local 8 // javax.management.ObjectName$Property[] tmp_props
         3: .line 796
            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 797
            aload 7 /* tmp_keys */
            invokestatic java.util.Arrays.sort:([Ljava/lang/Object;)V
         5: .line 798
            aload 7 /* tmp_keys */
            astore 3 /* keys */
         6: .line 799
            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 800
            aload 0 /* this */
            aload 8 /* tmp_props */
            putfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
         8: .line 801
            aload 0 /* this */
            iload 6 /* nb_props */
            anewarray javax.management.ObjectName$Property
            putfield javax.management.ObjectName._ca_array:[Ljavax/management/ObjectName$Property;
         9: .line 805
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        10: goto 13
        11: .line 806
      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 805
            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 810
            iload 6 /* nb_props */
            iconst_1
            isub
            istore 9 /* last_index */
        start local 9 // int last_index
        15: .line 813
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        16: goto 28
        17: .line 814
      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 816
            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 817
            aload 1 /* specified_chars */
            aload 11 /* prop */
            getfield javax.management.ObjectName$Property._key_index:I
        20: .line 818
            aload 2 /* canonical_chars */
            iload 5 /* prop_index */
            iload 10 /* prop_len */
        21: .line 817
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        22: .line 819
            aload 11 /* prop */
            iload 5 /* prop_index */
            invokevirtual javax.management.ObjectName$Property.setKeyIndex:(I)V
        23: .line 820
            iload 5 /* prop_index */
            iload 10 /* prop_len */
            iadd
            istore 5 /* prop_index */
        24: .line 821
            iload 12 /* i */
            iload 9 /* last_index */
            if_icmpeq 27
        25: .line 822
            aload 2 /* canonical_chars */
            iload 5 /* prop_index */
            bipush 44
            castore
        26: .line 823
            iinc 5 /* prop_index */ 1
        27: .line 813
      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 829
      StackMap locals: javax.management.ObjectName char[] char[] java.lang.String[] java.util.Map int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.isPropertyListPattern:()Z
            ifeq 33
        30: .line 830
            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 831
            aload 2 /* canonical_chars */
            iload 5 /* prop_index */
            iinc 5 /* prop_index */ 1
            bipush 44
            castore
        32: .line 832
      StackMap locals:
      StackMap stack:
            aload 2 /* canonical_chars */
            iload 5 /* prop_index */
            iinc 5 /* prop_index */ 1
            bipush 42
            castore
        33: .line 836
      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 837
            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 851
            iload 1 /* startKey */
            istore 2 /* next */
        start local 2 // int next
         1: .line 852
            iload 1 /* startKey */
            istore 3 /* endKey */
        start local 3 // int endKey
         2: .line 853
            aload 0 /* s */
            arraylength
            istore 4 /* len */
        start local 4 // int len
         3: .line 854
            goto 17
         4: .line 855
      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 856
            iload 5 /* k */
            lookupswitch { // 6
                   10: 6
                   42: 6
                   44: 6
                   58: 6
                   61: 12
                   63: 6
              default: 14
          }
         6: .line 862
      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 864
            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 865
            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 863
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // java.lang.String ichar
        12: .line 868
      StackMap locals:
      StackMap stack:
            iload 2 /* next */
            iconst_1
            isub
            istore 3 /* endKey */
        13: .line 869
            goto 18
        14: .line 871
      StackMap locals:
      StackMap stack:
            iload 2 /* next */
            iload 4 /* len */
            if_icmpge 15
            goto 17
        15: .line 872
      StackMap locals:
      StackMap stack:
            iload 2 /* next */
            istore 3 /* endKey */
        16: .line 874
            goto 18
        end local 5 // char k
        17: .line 854
      StackMap locals:
      StackMap stack:
            iload 2 /* next */
            iload 4 /* len */
            if_icmplt 4
        18: .line 876
      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 895
            iconst_0
            istore 2 /* value_pattern */
        start local 2 // boolean value_pattern
         1: .line 897
            iload 1 /* startValue */
            istore 3 /* next */
        start local 3 // int next
         2: .line 898
            iload 1 /* startValue */
            istore 4 /* endValue */
        start local 4 // int endValue
         3: .line 900
            aload 0 /* s */
            arraylength
            istore 5 /* len */
        start local 5 // int len
         4: .line 901
            aload 0 /* s */
            iload 1 /* startValue */
            caload
            istore 6 /* q */
        start local 6 // char q
         5: .line 903
            iload 6 /* q */
            bipush 34
            if_icmpne 64
         6: .line 905
            iinc 3 /* next */ 1
            iload 3 /* next */
            iload 5 /* len */
            if_icmpne 41
         7: .line 906
            new javax.management.MalformedObjectNameException
            dup
            ldc "Invalid quote"
         8: .line 905
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 908
      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 909
            iload 7 /* last */
            bipush 92
            if_icmpne 28
        11: .line 910
            iinc 3 /* next */ 1
            iload 3 /* next */
            iload 5 /* len */
            if_icmpne 15
        12: .line 911
            new javax.management.MalformedObjectNameException
            dup
        13: .line 912
            ldc "Invalid unterminated quoted character sequence"
        14: .line 910
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        15: .line 913
      StackMap locals: int
      StackMap stack:
            aload 0 /* s */
            iload 3 /* next */
            caload
            istore 7 /* last */
        16: .line 914
            iload 7 /* last */
            lookupswitch { // 5
                   34: 18
                   42: 17
                   63: 17
                   92: 17
                  110: 17
              default: 22
          }
        17: .line 919
      StackMap locals:
      StackMap stack:
            goto 37
        18: .line 925
      StackMap locals:
      StackMap stack:
            iload 3 /* next */
            iconst_1
            iadd
            iload 5 /* len */
            if_icmpne 37
        19: .line 926
            new javax.management.MalformedObjectNameException
            dup
        20: .line 927
            ldc "Missing termination quote"
        21: .line 925
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        22: .line 931
      StackMap locals:
      StackMap stack:
            new javax.management.MalformedObjectNameException
            dup
        23: .line 932
            new java.lang.StringBuilder
            dup
            ldc "Invalid quoted character sequence '\\"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        24: .line 933
            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 932
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        26: .line 930
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        27: .line 935
      StackMap locals:
      StackMap stack:
            goto 37
      StackMap locals:
      StackMap stack:
        28: iload 7 /* last */
            bipush 10
            if_icmpne 32
        29: .line 936
            new javax.management.MalformedObjectNameException
            dup
        30: .line 937
            ldc "Newline in quoted value"
        31: .line 936
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        32: .line 938
      StackMap locals:
      StackMap stack:
            iload 7 /* last */
            bipush 34
            if_icmpne 35
        33: .line 939
            iinc 3 /* next */ 1
        34: .line 940
            goto 42
        35: .line 942
      StackMap locals:
      StackMap stack:
            iload 7 /* last */
            lookupswitch { // 2
                   42: 36
                   63: 36
              default: 37
          }
        36: .line 945
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 2 /* value_pattern */
        37: .line 949
      StackMap locals:
      StackMap stack:
            iinc 3 /* next */ 1
        38: .line 955
            iload 3 /* next */
            iload 5 /* len */
            if_icmplt 41
            iload 7 /* last */
            bipush 34
            if_icmpeq 41
        39: .line 956
            new javax.management.MalformedObjectNameException
            dup
            ldc "Missing termination quote"
        40: .line 955
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        end local 7 // char last
        41: .line 907
      StackMap locals:
      StackMap stack:
            iload 3 /* next */
            iload 5 /* len */
            if_icmplt 9
        42: .line 958
      StackMap locals:
      StackMap stack:
            iload 3 /* next */
            istore 4 /* endValue */
        43: .line 959
            iload 3 /* next */
            iload 5 /* len */
            if_icmpge 65
        44: .line 960
            aload 0 /* s */
            iload 3 /* next */
            iinc 3 /* next */ 1
            caload
            bipush 44
            if_icmpeq 65
        45: .line 961
            new javax.management.MalformedObjectNameException
            dup
            ldc "Invalid quote"
        46: .line 960
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        47: .line 966
      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 967
            iload 7 /* v */
            lookupswitch { // 6
                   10: 53
                   42: 49
                   44: 59
                   58: 53
                   61: 53
                   63: 49
              default: 61
          }
        49: .line 970
      StackMap locals: int
      StackMap stack:
            iconst_1
            istore 2 /* value_pattern */
        50: .line 971
            iload 3 /* next */
            iload 5 /* len */
            if_icmpge 51
            goto 64
        51: .line 972
      StackMap locals:
      StackMap stack:
            iload 3 /* next */
            istore 4 /* endValue */
        52: .line 973
            goto 65
        53: .line 977
      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 979
            new javax.management.MalformedObjectNameException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid character `"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        57: .line 980
            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 978
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        end local 8 // java.lang.String ichar
        59: .line 982
      StackMap locals:
      StackMap stack:
            iload 3 /* next */
            iconst_1
            isub
            istore 4 /* endValue */
        60: .line 983
            goto 65
        61: .line 985
      StackMap locals:
      StackMap stack:
            iload 3 /* next */
            iload 5 /* len */
            if_icmpge 62
            goto 64
        62: .line 986
      StackMap locals:
      StackMap stack:
            iload 3 /* next */
            istore 4 /* endValue */
        63: .line 988
            goto 65
        end local 7 // char v
        64: .line 965
      StackMap locals:
      StackMap stack:
            iload 3 /* next */
            iload 5 /* len */
            if_icmplt 47
        65: .line 991
      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 1002
            aload 0 /* val */
            ifnonnull 3
         1: .line 1003
            new java.lang.NullPointerException
            dup
            ldc "Invalid value (null)"
         2: .line 1002
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 1005
      StackMap locals:
      StackMap stack:
            aload 0 /* val */
            invokevirtual java.lang.String.length:()I
            istore 1 /* len */
        start local 1 // int len
         4: .line 1006
            iload 1 /* len */
            ifne 6
         5: .line 1007
            iconst_0
            ireturn
         6: .line 1009
      StackMap locals: int
      StackMap stack:
            aload 0 /* val */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 2 /* s */
        start local 2 // char[] s
         7: .line 1010
            aload 2 /* s */
            iconst_0
            invokestatic javax.management.ObjectName.parseValue:([CI)[I
            astore 3 /* result */
        start local 3 // int[] result
         8: .line 1011
            aload 3 /* result */
            iconst_0
            iaload
            istore 4 /* endValue */
        start local 4 // int endValue
         9: .line 1012
            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 1013
            iload 4 /* endValue */
            iload 1 /* len */
            if_icmpge 16
        13: .line 1014
            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 1015
            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 1013
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 1016
      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 1025
            aload 0 /* key */
            ifnonnull 3
         1: .line 1026
            new java.lang.NullPointerException
            dup
            ldc "Invalid key (null)"
         2: .line 1025
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 1028
      StackMap locals:
      StackMap stack:
            aload 0 /* key */
            invokevirtual java.lang.String.length:()I
            istore 1 /* len */
        start local 1 // int len
         4: .line 1029
            iload 1 /* len */
            ifne 7
         5: .line 1030
            new javax.management.MalformedObjectNameException
            dup
            ldc "Invalid key (empty)"
         6: .line 1029
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 1031
      StackMap locals: int
      StackMap stack:
            aload 0 /* key */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 2 /* k */
        start local 2 // char[] k
         8: .line 1032
            aload 2 /* k */
            iconst_0
            invokestatic javax.management.ObjectName.parseKey:([CI)I
            istore 3 /* endKey */
        start local 3 // int endKey
         9: .line 1033
            iload 3 /* endKey */
            iload 1 /* len */
            if_icmpge 13
        10: .line 1034
            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 1035
            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 1033
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 1036
      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
    MethodParameters:
      Name  Flags
      key   

  private boolean isDomain(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // java.lang.String domain
         0: .line 1047
            aload 1 /* domain */
            ifnonnull 1
            iconst_1
            ireturn
         1: .line 1048
      StackMap locals:
      StackMap stack:
            aload 1 /* domain */
            invokevirtual java.lang.String.length:()I
            istore 2 /* len */
        start local 2 // int len
         2: .line 1049
            iconst_0
            istore 3 /* next */
        start local 3 // int next
         3: .line 1050
            goto 8
         4: .line 1051
      StackMap locals: int int
      StackMap stack:
            aload 1 /* domain */
            iload 3 /* next */
            iinc 3 /* next */ 1
            invokevirtual java.lang.String.charAt:(I)C
            istore 4 /* c */
        start local 4 // char c
         5: .line 1052
            iload 4 /* c */
            lookupswitch { // 4
                   10: 6
                   42: 7
                   58: 6
                   63: 7
              default: 8
          }
         6: .line 1055
      StackMap locals: int
      StackMap stack:
            iconst_0
            ireturn
         7: .line 1058
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual javax.management.ObjectName.setDomainPattern:(Z)V
        end local 4 // char c
         8: .line 1050
      StackMap locals:
      StackMap stack:
            iload 3 /* next */
            iload 2 /* len */
            if_icmplt 4
         9: .line 1062
            iconst_1
            ireturn
        end local 3 // int next
        end local 2 // int len
        end local 1 // java.lang.String domain
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Ljavax/management/ObjectName;
            0   10     1  domain  Ljava/lang/String;
            2   10     2     len  I
            3   10     3    next  I
            5    8     4       c  C
    MethodParameters:
        Name  Flags
      domain  

  private int getDomainLength();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1066
            aload 0 /* this */
            getfield javax.management.ObjectName._compressed_storage:I
            ldc 536870911
            iand
            ireturn
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/ObjectName;

  private void setDomainLength(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // int length
         0: .line 1076
            iload 1 /* length */
            ldc -536870912
            iand
            ifeq 4
         1: .line 1077
            new javax.management.MalformedObjectNameException
            dup
         2: .line 1078
            ldc "Domain name too long. Maximum allowed domain name length is:536870911"
         3: .line 1077
            invokespecial javax.management.MalformedObjectNameException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1081
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.management.ObjectName._compressed_storage:I
            ldc -536870912
            iand
            iload 1 /* length */
            ior
            putfield javax.management.ObjectName._compressed_storage:I
         5: .line 1082
            return
        end local 1 // int length
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Ljavax/management/ObjectName;
            0    6     1  length  I
    Exceptions:
      throws javax.management.MalformedObjectNameException
    MethodParameters:
        Name  Flags
      length  

  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 1150
            getstatic javax.management.ObjectName.compat:Z
            ifeq 14
         1: .line 1154
            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 1156
            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 1155
            astore 4 /* propListString */
        start local 4 // java.lang.String propListString
         4: .line 1160
            aload 3 /* fields */
            ldc "propertyPattern"
            iconst_0
            invokevirtual java.io.ObjectInputStream$GetField.get:(Ljava/lang/String;Z)Z
         5: .line 1159
            istore 5 /* propPattern */
        start local 5 // boolean propPattern
         6: .line 1161
            iload 5 /* propPattern */
            ifeq 10
         7: .line 1163
            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 1162
      StackMap locals:
      StackMap stack: java.lang.String
            astore 4 /* propListString */
        10: .line 1166
      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 1167
            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 1166
            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 1168
            goto 16
        end local 2 // java.lang.String cn
        14: .line 1171
      StackMap locals: javax.management.ObjectName java.io.ObjectInputStream
      StackMap stack:
            aload 1 /* in */
            invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
        15: .line 1172
            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 1176
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 2 /* cn */
            invokevirtual javax.management.ObjectName.construct:(Ljava/lang/String;)V
        17: .line 1177
            goto 22
      StackMap locals:
      StackMap stack: java.lang.NullPointerException
        18: astore 3 /* e */
        start local 3 // java.lang.NullPointerException e
        19: .line 1178
            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 1179
      StackMap locals:
      StackMap stack: javax.management.MalformedObjectNameException
            astore 3 /* e */
        start local 3 // javax.management.MalformedObjectNameException e
        21: .line 1180
            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 1182
      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 1246
            getstatic javax.management.ObjectName.compat:Z
            ifeq 12
         1: .line 1250
            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 1251
            aload 2 /* fields */
            ldc "domain"
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            iconst_0
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getDomainLength:()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 1252
            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 1253
            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 1254
            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 1255
            aload 2 /* fields */
            ldc "pattern"
            aload 0 /* this */
            getfield javax.management.ObjectName._compressed_storage:I
            ldc -1073741824
            iand
            ifeq 7
            iconst_1
            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_0
      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 1256
            aload 2 /* fields */
            ldc "propertyPattern"
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.isPropertyListPattern:()Z
            invokevirtual java.io.ObjectOutputStream$PutField.put:(Ljava/lang/String;Z)V
        10: .line 1257
            aload 1 /* out */
            invokevirtual java.io.ObjectOutputStream.writeFields:()V
        end local 2 // java.io.ObjectOutputStream$PutField fields
        11: .line 1258
            goto 14
        12: .line 1263
      StackMap locals:
      StackMap stack:
            aload 1 /* out */
            invokevirtual java.io.ObjectOutputStream.defaultWriteObject:()V
        13: .line 1264
            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 1266
      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 1296
            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 1325
            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
    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 1356
            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
    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=2, locals=1, args_size=1
        start local 0 // javax.management.ObjectName name
         0: .line 1389
            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 1390
            aload 0 /* name */
            areturn
         2: .line 1391
      StackMap locals:
      StackMap stack:
            aload 0 /* name */
            invokevirtual javax.management.ObjectName.getSerializedNameString:()Ljava/lang/String;
            invokestatic com.sun.jmx.mbeanserver.Util.newObjectName:(Ljava/lang/String;)Ljavax/management/ObjectName;
            areturn
        end local 0 // javax.management.ObjectName name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  name  Ljavax/management/ObjectName;
    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 1404
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 396
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._compressed_storage:I
         2: .line 1406
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.construct:(Ljava/lang/String;)V
         3: .line 1407
            return
        end local 1 // java.lang.String name
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavax/management/ObjectName;
            0    4     1  name  Ljava/lang/String;
    Exceptions:
      throws javax.management.MalformedObjectNameException
    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 1423
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 396
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._compressed_storage:I
         2: .line 1428
            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
         3: .line 1429
            aload 0 /* this */
            aload 1 /* domain */
            aload 4 /* table */
            invokevirtual javax.management.ObjectName.construct:(Ljava/lang/String;Ljava/util/Map;)V
         4: .line 1430
            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    5     0    this  Ljavax/management/ObjectName;
            0    5     1  domain  Ljava/lang/String;
            0    5     2     key  Ljava/lang/String;
            0    5     3   value  Ljava/lang/String;
            3    5     4   table  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
    Exceptions:
      throws javax.management.MalformedObjectNameException
    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 1448
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 396
            aload 0 /* this */
            iconst_0
            putfield javax.management.ObjectName._compressed_storage:I
         2: .line 1450
            aload 0 /* this */
            aload 1 /* domain */
            aload 2 /* table */
            invokevirtual javax.management.ObjectName.construct:(Ljava/lang/String;Ljava/util/Map;)V
         3: .line 1455
            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    4     0    this  Ljavax/management/ObjectName;
            0    4     1  domain  Ljava/lang/String;
            0    4     2   table  Ljava/util/Hashtable<Ljava/lang/String;Ljava/lang/String;>;
    Exceptions:
      throws javax.management.MalformedObjectNameException
    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=2, locals=1, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1471
            aload 0 /* this */
            getfield javax.management.ObjectName._compressed_storage:I
            ldc -536870912
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/management/ObjectName;

  public boolean isDomainPattern();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1481
            aload 0 /* this */
            getfield javax.management.ObjectName._compressed_storage:I
            ldc -2147483648
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/management/ObjectName;

  private void setDomainPattern(boolean);
    descriptor: (Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // boolean value
         0: .line 1490
            iload 1 /* value */
            ifeq 3
         1: .line 1491
            aload 0 /* this */
            dup
            getfield javax.management.ObjectName._compressed_storage:I
            ldc -2147483648
            ior
            putfield javax.management.ObjectName._compressed_storage:I
         2: .line 1492
            goto 4
         3: .line 1493
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield javax.management.ObjectName._compressed_storage:I
            ldc 2147483647
            iand
            putfield javax.management.ObjectName._compressed_storage:I
         4: .line 1495
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean value
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Ljavax/management/ObjectName;
            0    5     1  value  Z
    MethodParameters:
       Name  Flags
      value  

  public boolean isPropertyPattern();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1507
            aload 0 /* this */
            getfield javax.management.ObjectName._compressed_storage:I
            ldc 1610612736
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            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=2, locals=1, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1521
            aload 0 /* this */
            getfield javax.management.ObjectName._compressed_storage:I
            ldc 1073741824
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/management/ObjectName;

  private void setPropertyListPattern(boolean);
    descriptor: (Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // boolean value
         0: .line 1530
            iload 1 /* value */
            ifeq 3
         1: .line 1531
            aload 0 /* this */
            dup
            getfield javax.management.ObjectName._compressed_storage:I
            ldc 1073741824
            ior
            putfield javax.management.ObjectName._compressed_storage:I
         2: .line 1532
            goto 4
         3: .line 1533
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield javax.management.ObjectName._compressed_storage:I
            ldc -1073741825
            iand
            putfield javax.management.ObjectName._compressed_storage:I
         4: .line 1535
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean value
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Ljavax/management/ObjectName;
            0    5     1  value  Z
    MethodParameters:
       Name  Flags
      value  

  public boolean isPropertyValuePattern();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.management.ObjectName this
         0: .line 1549
            aload 0 /* this */
            getfield javax.management.ObjectName._compressed_storage:I
            ldc 536870912
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/management/ObjectName;

  private void setPropertyValuePattern(boolean);
    descriptor: (Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // boolean value
         0: .line 1558
            iload 1 /* value */
            ifeq 3
         1: .line 1559
            aload 0 /* this */
            dup
            getfield javax.management.ObjectName._compressed_storage:I
            ldc 536870912
            ior
            putfield javax.management.ObjectName._compressed_storage:I
         2: .line 1560
            goto 4
         3: .line 1561
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield javax.management.ObjectName._compressed_storage:I
            ldc -536870913
            iand
            putfield javax.management.ObjectName._compressed_storage:I
         4: .line 1563
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean value
        end local 0 // javax.management.ObjectName this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Ljavax/management/ObjectName;
            0    5     1  value  Z
    MethodParameters:
       Name  Flags
      value  

  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 1581
            aload 1 /* property */
            ifnonnull 2
         1: .line 1582
            new java.lang.NullPointerException
            dup
            ldc "key property can't be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1583
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 9
         4: .line 1584
      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 1585
            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 1586
            aload 4 /* key */
            aload 1 /* property */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         7: .line 1587
            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 1583
      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 1589
            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;
    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 1619
            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 1628
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            iconst_0
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getDomainLength:()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 1642
            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;
    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 1656
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         1: .line 1657
            aload 0 /* this */
            getfield javax.management.ObjectName._propertyList:Ljava/util/Map;
            ifnonnull 12
         2: .line 1660
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield javax.management.ObjectName._propertyList:Ljava/util/Map;
         3: .line 1661
            aload 0 /* this */
            getfield javax.management.ObjectName._ca_array:[Ljavax/management/ObjectName$Property;
            arraylength
            istore 2 /* len */
        start local 2 // int len
         4: .line 1663
            iload 2 /* len */
            iconst_1
            isub
            istore 4 /* i */
        start local 4 // int i
         5: goto 11
         6: .line 1664
      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 1665
            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 1666
            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 1665
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 1663
            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 1656
      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 1670
      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 1686
            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 1701
            aload 0 /* this */
            getfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
            arraylength
            ifne 1
            ldc ""
            areturn
         1: .line 1705
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getDomainLength:()I
            isub
            iconst_1
            isub
         2: .line 1706
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.isPropertyListPattern:()Z
            ifeq 3
            iconst_2
            goto 4
      StackMap locals:
      StackMap stack: int
         3: iconst_0
         4: .line 1705
      StackMap locals: javax.management.ObjectName
      StackMap stack: int int
            isub
            istore 1 /* total_size */
        start local 1 // int total_size
         5: .line 1708
            iload 1 /* total_size */
            newarray 5
            astore 2 /* dest_chars */
        start local 2 // char[] dest_chars
         6: .line 1709
            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 1710
            aload 0 /* this */
            aload 3 /* value */
            aload 2 /* dest_chars */
            iconst_0
            invokevirtual javax.management.ObjectName.writeKeyPropertyListString:([C[CI)I
            pop
         8: .line 1711
            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 1727
            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 1728
            iload 1 /* total_size */
            newarray 5
            astore 2 /* dest_chars */
        start local 2 // char[] dest_chars
         2: .line 1729
            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 1730
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getDomainLength:()I
            iconst_1
            iadd
            istore 4 /* offset */
        start local 4 // int offset
         4: .line 1734
            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 1737
            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 1740
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.isPropertyListPattern:()Z
            ifeq 12
         7: .line 1741
            iload 5 /* end */
            iload 4 /* offset */
            if_icmpne 10
         8: .line 1743
            aload 2 /* dest_chars */
            iload 5 /* end */
            bipush 42
            castore
         9: .line 1744
            goto 12
        10: .line 1746
      StackMap locals: javax.management.ObjectName int char[] char[] int int
      StackMap stack:
            aload 2 /* dest_chars */
            iload 5 /* end */
            bipush 44
            castore
        11: .line 1747
            aload 2 /* dest_chars */
            iload 5 /* end */
            iconst_1
            iadd
            bipush 42
            castore
        12: .line 1751
      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 1766
            aload 0 /* this */
            getfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
            arraylength
            ifne 1
            iload 3 /* offset */
            ireturn
         1: .line 1768
      StackMap locals:
      StackMap stack:
            aload 2 /* data */
            astore 4 /* dest_chars */
        start local 4 // char[] dest_chars
         2: .line 1769
            aload 1 /* canonicalChars */
            astore 5 /* value */
        start local 5 // char[] value
         3: .line 1771
            iload 3 /* offset */
            istore 6 /* index */
        start local 6 // int index
         4: .line 1772
            aload 0 /* this */
            getfield javax.management.ObjectName._kp_array:[Ljavax/management/ObjectName$Property;
            arraylength
            istore 7 /* len */
        start local 7 // int len
         5: .line 1773
            iload 7 /* len */
            iconst_1
            isub
            istore 8 /* last */
        start local 8 // int last
         6: .line 1774
            iconst_0
            istore 9 /* i */
        start local 9 // int i
         7: goto 16
         8: .line 1775
      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 1776
            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 1777
            aload 5 /* value */
            aload 10 /* prop */
            getfield javax.management.ObjectName$Property._key_index:I
            aload 4 /* dest_chars */
            iload 6 /* index */
        11: .line 1778
            iload 11 /* prop_len */
        12: .line 1777
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        13: .line 1779
            iload 6 /* index */
            iload 11 /* prop_len */
            iadd
            istore 6 /* index */
        14: .line 1780
            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 1774
      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 1782
            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 1799
            aload 0 /* this */
            getfield javax.management.ObjectName._ca_array:[Ljavax/management/ObjectName$Property;
            arraylength
            ifne 1
            ldc ""
            areturn
         1: .line 1801
      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 1802
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.isPropertyListPattern:()Z
            ifeq 3
            iinc 1 /* len */ -2
         3: .line 1803
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getDomainLength:()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 1819
            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 1838
            aload 0 /* this */
            aload 1 /* object */
            if_acmpne 1
            iconst_1
            ireturn
         1: .line 1841
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            instanceof javax.management.ObjectName
            ifne 2
            iconst_0
            ireturn
         2: .line 1845
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            checkcast javax.management.ObjectName
            astore 2 /* on */
        start local 2 // javax.management.ObjectName on
         3: .line 1846
            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 1847
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            aload 3 /* on_string */
            if_acmpne 5
            iconst_1
            ireturn
         5: .line 1851
      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 1860
            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 1894
            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 1895
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            istore 2 /* len */
        start local 2 // int len
         2: .line 1896
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 12
         4: .line 1897
      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 1898
            iload 4 /* c */
            lookupswitch { // 5
                   10: 6
                   34: 9
                   42: 9
                   63: 9
                   92: 9
              default: 10
          }
         6: .line 1900
      StackMap locals: int
      StackMap stack:
            bipush 110
            istore 4 /* c */
         7: .line 1901
            aload 1 /* buf */
            bipush 92
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         8: .line 1902
            goto 10
         9: .line 1907
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            bipush 92
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        10: .line 1910
      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 1896
            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 1912
            aload 1 /* buf */
            bipush 34
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        14: .line 1913
            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
    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 1938
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* buf */
        start local 1 // java.lang.StringBuilder buf
         1: .line 1939
            aload 0 /* q */
            invokevirtual java.lang.String.length:()I
            istore 2 /* len */
        start local 2 // int len
         2: .line 1940
            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 1941
      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 1942
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 3 /* i */
        start local 3 // int i
         5: goto 27
         6: .line 1943
      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 1944
            iload 4 /* c */
            bipush 92
            if_icmpne 19
         8: .line 1945
            iload 3 /* i */
            iload 2 /* len */
            iconst_2
            isub
            if_icmpne 10
         9: .line 1946
            new java.lang.IllegalArgumentException
            dup
            ldc "Trailing backslash"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 1947
      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 1948
            iload 4 /* c */
            lookupswitch { // 5
                   34: 14
                   42: 14
                   63: 14
                   92: 14
                  110: 12
              default: 15
          }
        12: .line 1950
      StackMap locals:
      StackMap stack:
            bipush 10
            istore 4 /* c */
        13: .line 1951
            goto 25
        14: .line 1956
      StackMap locals:
      StackMap stack:
            goto 25
        15: .line 1958
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
        16: .line 1959
            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 1958
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        18: .line 1961
      StackMap locals:
      StackMap stack:
            goto 25
        19: .line 1962
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            lookupswitch { // 4
                   10: 20
                   34: 20
                   42: 20
                   63: 20
              default: 25
          }
        20: .line 1967
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
        21: .line 1968
            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 1969
            ldc "' in the string to unquote"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        23: .line 1968
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        24: .line 1967
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        25: .line 1972
      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 1942
            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 1974
            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
    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 2007
            aload 1 /* name */
            ifnonnull 1
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         1: .line 2009
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.isPattern:()Z
            ifeq 3
         2: .line 2010
            iconst_0
            ireturn
         3: .line 2013
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.isPattern:()Z
            ifne 5
         4: .line 2014
            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
         5: .line 2016
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.matchDomains:(Ljavax/management/ObjectName;)Z
            ifeq 6
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.matchKeys:(Ljavax/management/ObjectName;)Z
            ifeq 6
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         6: iconst_0
            ireturn
        end local 1 // javax.management.ObjectName 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  Ljavax/management/ObjectName;
    MethodParameters:
      Name  Flags
      name  

  private final boolean matchDomains(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // javax.management.ObjectName name
         0: .line 2020
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.isDomainPattern:()Z
            ifeq 2
         1: .line 2024
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.getDomain:()Ljava/lang/String;
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getDomain:()Ljava/lang/String;
            invokestatic com.sun.jmx.mbeanserver.Util.wildmatch:(Ljava/lang/String;Ljava/lang/String;)Z
            ireturn
         2: .line 2026
      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    3     0  this  Ljavax/management/ObjectName;
            0    3     1  name  Ljavax/management/ObjectName;
    MethodParameters:
      Name  Flags
      name  

  private final boolean matchKeys(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=3, locals=9, args_size=2
        start local 0 // javax.management.ObjectName this
        start local 1 // javax.management.ObjectName name
         0: .line 2033
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.isPropertyValuePattern:()Z
            ifeq 4
         1: .line 2034
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.isPropertyListPattern:()Z
            ifne 4
         2: .line 2035
            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 2036
            iconst_0
            ireturn
         4: .line 2041
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.isPropertyPattern:()Z
            ifeq 23
         5: .line 2042
            aload 1 /* name */
            invokevirtual javax.management.ObjectName._getKeyPropertyList:()Ljava/util/Map;
            astore 2 /* nameProps */
        start local 2 // java.util.Map nameProps
         6: .line 2043
            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 2044
            aload 0 /* this */
            getfield javax.management.ObjectName._canonicalName:Ljava/lang/String;
            astore 4 /* cn */
        start local 4 // java.lang.String cn
         8: .line 2045
            aload 3 /* props */
            arraylength
            iconst_1
            isub
            istore 5 /* i */
        start local 5 // int i
         9: goto 21
        10: .line 2049
      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 2050
            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 2051
            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 2054
            aload 8 /* v */
            ifnonnull 14
            iconst_0
            ireturn
        14: .line 2057
      StackMap locals: javax.management.ObjectName$Property java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.isPropertyValuePattern:()Z
            ifeq 18
            aload 6 /* p */
            instanceof javax.management.ObjectName$PatternProperty
            ifeq 18
        15: .line 2060
            aload 8 /* v */
            aload 6 /* p */
            aload 4 /* cn */
            invokevirtual javax.management.ObjectName$Property.getValueString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic com.sun.jmx.mbeanserver.Util.wildmatch:(Ljava/lang/String;Ljava/lang/String;)Z
            ifeq 17
        16: .line 2061
            goto 20
        17: .line 2063
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        18: .line 2065
      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 19
            goto 20
        19: .line 2066
      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
        20: .line 2045
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ -1
      StackMap locals:
      StackMap stack:
        21: iload 5 /* i */
            ifge 10
        end local 5 // int i
        22: .line 2068
            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
        23: .line 2073
      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
        24: .line 2074
            aload 0 /* this */
            invokevirtual javax.management.ObjectName.getCanonicalKeyPropertyListString:()Ljava/lang/String;
            astore 3 /* p2 */
        start local 3 // java.lang.String p2
        25: .line 2075
            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   26     0       this  Ljavax/management/ObjectName;
            0   26     1       name  Ljavax/management/ObjectName;
            6   23     2  nameProps  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            7   23     3      props  [Ljavax/management/ObjectName$Property;
            8   23     4         cn  Ljava/lang/String;
            9   22     5          i  I
           11   20     6          p  Ljavax/management/ObjectName$Property;
           12   20     7          k  Ljava/lang/String;
           13   20     8          v  Ljava/lang/String;
           24   26     2         p1  Ljava/lang/String;
           25   26     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 2082
            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 2134
            aload 1 /* name */
            aload 0 /* this */
            if_acmpne 1
            iconst_0
            ireturn
         1: .line 2138
      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.compareTo:(Ljava/lang/String;)I
            istore 2 /* domainValue */
        start local 2 // int domainValue
         2: .line 2139
            iload 2 /* domainValue */
            ifeq 4
         3: .line 2140
            iload 2 /* domainValue */
            ireturn
         4: .line 2150
      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
         5: .line 2151
            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
         6: .line 2152
            aload 3 /* thisTypeKey */
            ifnonnull 8
         7: .line 2153
            ldc ""
            astore 3 /* thisTypeKey */
         8: .line 2154
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 4 /* anotherTypeKey */
            ifnonnull 10
         9: .line 2155
            ldc ""
            astore 4 /* anotherTypeKey */
        10: .line 2156
      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
        11: .line 2157
            iload 5 /* typeKeyValue */
            ifeq 13
        12: .line 2158
            iload 5 /* typeKeyValue */
            ireturn
        13: .line 2162
      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   14     0            this  Ljavax/management/ObjectName;
            0   14     1            name  Ljavax/management/ObjectName;
            2   14     2     domainValue  I
            5   14     3     thisTypeKey  Ljava/lang/String;
            6   14     4  anotherTypeKey  Ljava/lang/String;
           11   14     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