public class javax.management.StandardMBean implements javax.management.DynamicMBean, javax.management.MBeanRegistration
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.management.StandardMBean
  super_class: java.lang.Object
{
  private static final com.sun.jmx.mbeanserver.DescriptorCache descriptors;
    descriptor: Lcom/sun/jmx/mbeanserver/DescriptorCache;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private volatile com.sun.jmx.mbeanserver.MBeanSupport<?> mbean;
    descriptor: Lcom/sun/jmx/mbeanserver/MBeanSupport;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
    Signature: Lcom/sun/jmx/mbeanserver/MBeanSupport<*>;

  private volatile javax.management.MBeanInfo cachedMBeanInfo;
    descriptor: Ljavax/management/MBeanInfo;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private static final java.util.Map<java.lang.Class<?>, java.lang.Boolean> mbeanInfoSafeMap;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Class<*>;Ljava/lang/Boolean;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 129
            getstatic javax.management.JMX.proof:Ljavax/management/JMX;
            invokestatic com.sun.jmx.mbeanserver.DescriptorCache.getInstance:(Ljavax/management/JMX;)Lcom/sun/jmx/mbeanserver/DescriptorCache;
         1: .line 128
            putstatic javax.management.StandardMBean.descriptors:Lcom/sun/jmx/mbeanserver/DescriptorCache;
         2: .line 1148
            new java.util.WeakHashMap
            dup
            invokespecial java.util.WeakHashMap.<init>:()V
         3: .line 1147
            putstatic javax.management.StandardMBean.mbeanInfoSafeMap:Ljava/util/Map;
         4: .line 1148
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private <T> void construct(T, java.lang.Class<T>, boolean, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Class;ZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // javax.management.StandardMBean this
        start local 1 // java.lang.Object implementation
        start local 2 // java.lang.Class mbeanInterface
        start local 3 // boolean nullImplementationAllowed
        start local 4 // boolean isMXBean
         0: .line 163
            aload 1 /* implementation */
            ifnonnull 4
         1: .line 166
            iload 3 /* nullImplementationAllowed */
            ifeq 3
         2: .line 167
            aload 0 /* this */
            invokestatic com.sun.jmx.mbeanserver.Util.cast:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 1 /* implementation */
            goto 4
         3: .line 168
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "implementation is null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 170
      StackMap locals:
      StackMap stack:
            iload 4 /* isMXBean */
            ifeq 10
         5: .line 171
            aload 2 /* mbeanInterface */
            ifnonnull 8
         6: .line 173
            aload 1 /* implementation */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
         7: .line 172
            invokestatic com.sun.jmx.mbeanserver.Introspector.getMXBeanInterface:(Ljava/lang/Class;)Ljava/lang/Class;
            invokestatic com.sun.jmx.mbeanserver.Util.cast:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Class
            astore 2 /* mbeanInterface */
         8: .line 175
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new com.sun.jmx.mbeanserver.MXBeanSupport
            dup
            aload 1 /* implementation */
            aload 2 /* mbeanInterface */
            invokespecial com.sun.jmx.mbeanserver.MXBeanSupport.<init>:(Ljava/lang/Object;Ljava/lang/Class;)V
            putfield javax.management.StandardMBean.mbean:Lcom/sun/jmx/mbeanserver/MBeanSupport;
         9: .line 176
            goto 16
        10: .line 177
      StackMap locals:
      StackMap stack:
            aload 2 /* mbeanInterface */
            ifnonnull 13
        11: .line 179
            aload 1 /* implementation */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
        12: .line 178
            invokestatic com.sun.jmx.mbeanserver.Introspector.getStandardMBeanInterface:(Ljava/lang/Class;)Ljava/lang/Class;
            invokestatic com.sun.jmx.mbeanserver.Util.cast:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Class
            astore 2 /* mbeanInterface */
        13: .line 181
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        14: .line 182
            new com.sun.jmx.mbeanserver.StandardMBeanSupport
            dup
            aload 1 /* implementation */
            aload 2 /* mbeanInterface */
            invokespecial com.sun.jmx.mbeanserver.StandardMBeanSupport.<init>:(Ljava/lang/Object;Ljava/lang/Class;)V
        15: .line 181
            putfield javax.management.StandardMBean.mbean:Lcom/sun/jmx/mbeanserver/MBeanSupport;
        16: .line 184
      StackMap locals:
      StackMap stack:
            return
        end local 4 // boolean isMXBean
        end local 3 // boolean nullImplementationAllowed
        end local 2 // java.lang.Class mbeanInterface
        end local 1 // java.lang.Object implementation
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0   17     0                       this  Ljavax/management/StandardMBean;
            0   17     1             implementation  TT;
            0   17     2             mbeanInterface  Ljava/lang/Class<TT;>;
            0   17     3  nullImplementationAllowed  Z
            0   17     4                   isMXBean  Z
    Exceptions:
      throws javax.management.NotCompliantMBeanException
    Signature: <T:Ljava/lang/Object;>(TT;Ljava/lang/Class<TT;>;ZZ)V
    MethodParameters:
                           Name  Flags
      implementation             
      mbeanInterface             
      nullImplementationAllowed  
      isMXBean                   

  public <T> void <init>(T, java.lang.Class<T>);
    descriptor: (Ljava/lang/Object;Ljava/lang/Class;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // javax.management.StandardMBean this
        start local 1 // java.lang.Object implementation
        start local 2 // java.lang.Class mbeanInterface
         0: .line 210
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 212
            aload 0 /* this */
            aload 1 /* implementation */
            aload 2 /* mbeanInterface */
            iconst_0
            iconst_0
            invokevirtual javax.management.StandardMBean.construct:(Ljava/lang/Object;Ljava/lang/Class;ZZ)V
         2: .line 213
            return
        end local 2 // java.lang.Class mbeanInterface
        end local 1 // java.lang.Object implementation
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Ljavax/management/StandardMBean;
            0    3     1  implementation  TT;
            0    3     2  mbeanInterface  Ljava/lang/Class<TT;>;
    Exceptions:
      throws javax.management.NotCompliantMBeanException
    Signature: <T:Ljava/lang/Object;>(TT;Ljava/lang/Class<TT;>;)V
    MethodParameters:
                Name  Flags
      implementation  
      mbeanInterface  

  protected void <init>(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // java.lang.Class mbeanInterface
         0: .line 230
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 232
            aload 0 /* this */
            aconst_null
            aload 1 /* mbeanInterface */
            iconst_1
            iconst_0
            invokevirtual javax.management.StandardMBean.construct:(Ljava/lang/Object;Ljava/lang/Class;ZZ)V
         2: .line 233
            return
        end local 1 // java.lang.Class mbeanInterface
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Ljavax/management/StandardMBean;
            0    3     1  mbeanInterface  Ljava/lang/Class<*>;
    Exceptions:
      throws javax.management.NotCompliantMBeanException
    Signature: (Ljava/lang/Class<*>;)V
    MethodParameters:
                Name  Flags
      mbeanInterface  

  public <T> void <init>(T, java.lang.Class<T>, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Class;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // javax.management.StandardMBean this
        start local 1 // java.lang.Object implementation
        start local 2 // java.lang.Class mbeanInterface
        start local 3 // boolean isMXBean
         0: .line 266
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 269
            aload 0 /* this */
            aload 1 /* implementation */
            aload 2 /* mbeanInterface */
            iconst_0
            iload 3 /* isMXBean */
            invokevirtual javax.management.StandardMBean.construct:(Ljava/lang/Object;Ljava/lang/Class;ZZ)V
         2: .line 270
            goto 5
      StackMap locals: javax.management.StandardMBean java.lang.Object java.lang.Class int
      StackMap stack: javax.management.NotCompliantMBeanException
         3: astore 4 /* e */
        start local 4 // javax.management.NotCompliantMBeanException e
         4: .line 271
            new java.lang.IllegalArgumentException
            dup
            aload 4 /* e */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 4 // javax.management.NotCompliantMBeanException e
         5: .line 273
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean isMXBean
        end local 2 // java.lang.Class mbeanInterface
        end local 1 // java.lang.Object implementation
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0            this  Ljavax/management/StandardMBean;
            0    6     1  implementation  TT;
            0    6     2  mbeanInterface  Ljava/lang/Class<TT;>;
            0    6     3        isMXBean  Z
            4    5     4               e  Ljavax/management/NotCompliantMBeanException;
      Exception table:
        from    to  target  type
           1     2       3  Class javax.management.NotCompliantMBeanException
    Signature: <T:Ljava/lang/Object;>(TT;Ljava/lang/Class<TT;>;Z)V
    MethodParameters:
                Name  Flags
      implementation  
      mbeanInterface  
      isMXBean        

  protected void <init>(java.lang.Class<?>, );
    descriptor: (Ljava/lang/Class;Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // javax.management.StandardMBean this
        start local 1 // java.lang.Class mbeanInterface
        start local 2 // boolean isMXBean
         0: .line 298
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 300
            aload 0 /* this */
            aconst_null
            aload 1 /* mbeanInterface */
            iconst_1
            iload 2 /* isMXBean */
            invokevirtual javax.management.StandardMBean.construct:(Ljava/lang/Object;Ljava/lang/Class;ZZ)V
         2: .line 301
            goto 5
      StackMap locals: javax.management.StandardMBean java.lang.Class int
      StackMap stack: javax.management.NotCompliantMBeanException
         3: astore 3 /* e */
        start local 3 // javax.management.NotCompliantMBeanException e
         4: .line 302
            new java.lang.IllegalArgumentException
            dup
            aload 3 /* e */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 3 // javax.management.NotCompliantMBeanException e
         5: .line 304
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean isMXBean
        end local 1 // java.lang.Class mbeanInterface
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0            this  Ljavax/management/StandardMBean;
            0    6     1  mbeanInterface  Ljava/lang/Class<*>;
            0    6     2        isMXBean  Z
            4    5     3               e  Ljavax/management/NotCompliantMBeanException;
      Exception table:
        from    to  target  type
           1     2       3  Class javax.management.NotCompliantMBeanException
    Signature: (Ljava/lang/Class<*>;Z)V
    MethodParameters:
                Name  Flags
      mbeanInterface  
      isMXBean        

  public void setImplementation(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // java.lang.Object implementation
         0: .line 327
            aload 1 /* implementation */
            ifnonnull 2
         1: .line 328
            new java.lang.IllegalArgumentException
            dup
            ldc "implementation is null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 330
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.management.StandardMBean.isMXBean:()Z
            ifeq 7
         3: .line 331
            aload 0 /* this */
            new com.sun.jmx.mbeanserver.MXBeanSupport
            dup
            aload 1 /* implementation */
         4: .line 332
            aload 0 /* this */
            invokevirtual javax.management.StandardMBean.getMBeanInterface:()Ljava/lang/Class;
            invokestatic com.sun.jmx.mbeanserver.Util.cast:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Class
            invokespecial com.sun.jmx.mbeanserver.MXBeanSupport.<init>:(Ljava/lang/Object;Ljava/lang/Class;)V
         5: .line 331
            putfield javax.management.StandardMBean.mbean:Lcom/sun/jmx/mbeanserver/MBeanSupport;
         6: .line 333
            goto 10
         7: .line 334
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new com.sun.jmx.mbeanserver.StandardMBeanSupport
            dup
            aload 1 /* implementation */
         8: .line 335
            aload 0 /* this */
            invokevirtual javax.management.StandardMBean.getMBeanInterface:()Ljava/lang/Class;
            invokestatic com.sun.jmx.mbeanserver.Util.cast:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Class
            invokespecial com.sun.jmx.mbeanserver.StandardMBeanSupport.<init>:(Ljava/lang/Object;Ljava/lang/Class;)V
         9: .line 334
            putfield javax.management.StandardMBean.mbean:Lcom/sun/jmx/mbeanserver/MBeanSupport;
        10: .line 337
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object implementation
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   11     0            this  Ljavax/management/StandardMBean;
            0   11     1  implementation  Ljava/lang/Object;
    Exceptions:
      throws javax.management.NotCompliantMBeanException
    MethodParameters:
                Name  Flags
      implementation  

  public java.lang.Object getImplementation();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.StandardMBean this
         0: .line 346
            aload 0 /* this */
            getfield javax.management.StandardMBean.mbean:Lcom/sun/jmx/mbeanserver/MBeanSupport;
            invokevirtual com.sun.jmx.mbeanserver.MBeanSupport.getResource:()Ljava/lang/Object;
            areturn
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/StandardMBean;

  public final java.lang.Class<?> getMBeanInterface();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.StandardMBean this
         0: .line 354
            aload 0 /* this */
            getfield javax.management.StandardMBean.mbean:Lcom/sun/jmx/mbeanserver/MBeanSupport;
            invokevirtual com.sun.jmx.mbeanserver.MBeanSupport.getMBeanInterface:()Ljava/lang/Class;
            areturn
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/StandardMBean;
    Signature: ()Ljava/lang/Class<*>;

  public java.lang.Class<?> getImplementationClass();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.StandardMBean this
         0: .line 362
            aload 0 /* this */
            getfield javax.management.StandardMBean.mbean:Lcom/sun/jmx/mbeanserver/MBeanSupport;
            invokevirtual com.sun.jmx.mbeanserver.MBeanSupport.getResource:()Ljava/lang/Object;
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            areturn
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/StandardMBean;
    Signature: ()Ljava/lang/Class<*>;

  public java.lang.Object getAttribute(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // java.lang.String attribute
         0: .line 372
            aload 0 /* this */
            getfield javax.management.StandardMBean.mbean:Lcom/sun/jmx/mbeanserver/MBeanSupport;
            aload 1 /* attribute */
            invokevirtual com.sun.jmx.mbeanserver.MBeanSupport.getAttribute:(Ljava/lang/String;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.String attribute
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Ljavax/management/StandardMBean;
            0    1     1  attribute  Ljava/lang/String;
    Exceptions:
      throws javax.management.AttributeNotFoundException, javax.management.MBeanException, javax.management.ReflectionException
    MethodParameters:
           Name  Flags
      attribute  

  public void setAttribute(javax.management.Attribute);
    descriptor: (Ljavax/management/Attribute;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.Attribute attribute
         0: .line 383
            aload 0 /* this */
            getfield javax.management.StandardMBean.mbean:Lcom/sun/jmx/mbeanserver/MBeanSupport;
            aload 1 /* attribute */
            invokevirtual com.sun.jmx.mbeanserver.MBeanSupport.setAttribute:(Ljavax/management/Attribute;)V
         1: .line 384
            return
        end local 1 // javax.management.Attribute attribute
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Ljavax/management/StandardMBean;
            0    2     1  attribute  Ljavax/management/Attribute;
    Exceptions:
      throws javax.management.AttributeNotFoundException, javax.management.InvalidAttributeValueException, javax.management.MBeanException, javax.management.ReflectionException
    MethodParameters:
           Name  Flags
      attribute  

  public javax.management.AttributeList getAttributes(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)Ljavax/management/AttributeList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // java.lang.String[] attributes
         0: .line 390
            aload 0 /* this */
            getfield javax.management.StandardMBean.mbean:Lcom/sun/jmx/mbeanserver/MBeanSupport;
            aload 1 /* attributes */
            invokevirtual com.sun.jmx.mbeanserver.MBeanSupport.getAttributes:([Ljava/lang/String;)Ljavax/management/AttributeList;
            areturn
        end local 1 // java.lang.String[] attributes
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Ljavax/management/StandardMBean;
            0    1     1  attributes  [Ljava/lang/String;
    MethodParameters:
            Name  Flags
      attributes  

  public javax.management.AttributeList setAttributes(javax.management.AttributeList);
    descriptor: (Ljavax/management/AttributeList;)Ljavax/management/AttributeList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.AttributeList attributes
         0: .line 397
            aload 0 /* this */
            getfield javax.management.StandardMBean.mbean:Lcom/sun/jmx/mbeanserver/MBeanSupport;
            aload 1 /* attributes */
            invokevirtual com.sun.jmx.mbeanserver.MBeanSupport.setAttributes:(Ljavax/management/AttributeList;)Ljavax/management/AttributeList;
            areturn
        end local 1 // javax.management.AttributeList attributes
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Ljavax/management/StandardMBean;
            0    1     1  attributes  Ljavax/management/AttributeList;
    MethodParameters:
            Name  Flags
      attributes  

  public java.lang.Object invoke(java.lang.String, java.lang.Object[], java.lang.String[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // javax.management.StandardMBean this
        start local 1 // java.lang.String actionName
        start local 2 // java.lang.Object[] params
        start local 3 // java.lang.String[] signature
         0: .line 405
            aload 0 /* this */
            getfield javax.management.StandardMBean.mbean:Lcom/sun/jmx/mbeanserver/MBeanSupport;
            aload 1 /* actionName */
            aload 2 /* params */
            aload 3 /* signature */
            invokevirtual com.sun.jmx.mbeanserver.MBeanSupport.invoke:(Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;)Ljava/lang/Object;
            areturn
        end local 3 // java.lang.String[] signature
        end local 2 // java.lang.Object[] params
        end local 1 // java.lang.String actionName
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Ljavax/management/StandardMBean;
            0    1     1  actionName  Ljava/lang/String;
            0    1     2      params  [Ljava/lang/Object;
            0    1     3   signature  [Ljava/lang/String;
    Exceptions:
      throws javax.management.MBeanException, javax.management.ReflectionException
    MethodParameters:
            Name  Flags
      actionName  
      params      
      signature   

  public javax.management.MBeanInfo getMBeanInfo();
    descriptor: ()Ljavax/management/MBeanInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=14, args_size=1
        start local 0 // javax.management.StandardMBean this
         0: .line 432
            aload 0 /* this */
            invokevirtual javax.management.StandardMBean.getCachedMBeanInfo:()Ljavax/management/MBeanInfo;
            astore 1 /* cached */
        start local 1 // javax.management.MBeanInfo cached
         1: .line 433
            aload 1 /* cached */
            ifnull 8
            aload 1 /* cached */
         2: areturn
        end local 1 // javax.management.MBeanInfo cached
         3: .line 434
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
            astore 1 /* x */
        start local 1 // java.lang.RuntimeException x
         4: .line 435
            getstatic com.sun.jmx.defaults.JmxProperties.MISC_LOGGER:Ljava/lang/System$Logger;
            getstatic java.lang.System$Logger$Level.DEBUG:Ljava/lang/System$Logger$Level;
            invokeinterface java.lang.System$Logger.isLoggable:(Ljava/lang/System$Logger$Level;)Z
            ifeq 8
         5: .line 436
            getstatic com.sun.jmx.defaults.JmxProperties.MISC_LOGGER:Ljava/lang/System$Logger;
            getstatic java.lang.System$Logger$Level.DEBUG:Ljava/lang/System$Logger$Level;
         6: .line 437
            ldc "Failed to get cached MBeanInfo"
            aload 1 /* x */
         7: .line 436
            invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 1 // java.lang.RuntimeException x
         8: .line 441
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.MISC_LOGGER:Ljava/lang/System$Logger;
            getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
            invokeinterface java.lang.System$Logger.isLoggable:(Ljava/lang/System$Logger$Level;)Z
            ifeq 14
         9: .line 442
            getstatic com.sun.jmx.defaults.JmxProperties.MISC_LOGGER:Ljava/lang/System$Logger;
            getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
        10: .line 443
            new java.lang.StringBuilder
            dup
            ldc "Building MBeanInfo for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        11: .line 444
            aload 0 /* this */
            invokevirtual javax.management.StandardMBean.getImplementationClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        12: .line 443
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        13: .line 442
            invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
        14: .line 447
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.StandardMBean.mbean:Lcom/sun/jmx/mbeanserver/MBeanSupport;
            astore 1 /* msupport */
        start local 1 // com.sun.jmx.mbeanserver.MBeanSupport msupport
        15: .line 448
            aload 1 /* msupport */
            invokevirtual com.sun.jmx.mbeanserver.MBeanSupport.getMBeanInfo:()Ljavax/management/MBeanInfo;
            astore 2 /* bi */
        start local 2 // javax.management.MBeanInfo bi
        16: .line 449
            aload 1 /* msupport */
            invokevirtual com.sun.jmx.mbeanserver.MBeanSupport.getResource:()Ljava/lang/Object;
            astore 3 /* impl */
        start local 3 // java.lang.Object impl
        17: .line 451
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokestatic javax.management.StandardMBean.immutableInfo:(Ljava/lang/Class;)Z
            istore 4 /* immutableInfo */
        start local 4 // boolean immutableInfo
        18: .line 453
            aload 0 /* this */
            aload 2 /* bi */
            invokevirtual javax.management.StandardMBean.getClassName:(Ljavax/management/MBeanInfo;)Ljava/lang/String;
            astore 5 /* cname */
        start local 5 // java.lang.String cname
        19: .line 454
            aload 0 /* this */
            aload 2 /* bi */
            invokevirtual javax.management.StandardMBean.getDescription:(Ljavax/management/MBeanInfo;)Ljava/lang/String;
            astore 6 /* text */
        start local 6 // java.lang.String text
        20: .line 455
            aload 0 /* this */
            aload 2 /* bi */
            aload 3 /* impl */
            invokevirtual javax.management.StandardMBean.getConstructors:(Ljavax/management/MBeanInfo;Ljava/lang/Object;)[Ljavax/management/MBeanConstructorInfo;
            astore 7 /* ctors */
        start local 7 // javax.management.MBeanConstructorInfo[] ctors
        21: .line 456
            aload 0 /* this */
            aload 2 /* bi */
            invokevirtual javax.management.StandardMBean.getAttributes:(Ljavax/management/MBeanInfo;)[Ljavax/management/MBeanAttributeInfo;
            astore 8 /* attrs */
        start local 8 // javax.management.MBeanAttributeInfo[] attrs
        22: .line 457
            aload 0 /* this */
            aload 2 /* bi */
            invokevirtual javax.management.StandardMBean.getOperations:(Ljavax/management/MBeanInfo;)[Ljavax/management/MBeanOperationInfo;
            astore 9 /* ops */
        start local 9 // javax.management.MBeanOperationInfo[] ops
        23: .line 458
            aload 0 /* this */
            aload 2 /* bi */
            invokevirtual javax.management.StandardMBean.getNotifications:(Ljavax/management/MBeanInfo;)[Ljavax/management/MBeanNotificationInfo;
            astore 10 /* ntfs */
        start local 10 // javax.management.MBeanNotificationInfo[] ntfs
        24: .line 459
            aload 0 /* this */
            aload 2 /* bi */
            iload 4 /* immutableInfo */
            invokevirtual javax.management.StandardMBean.getDescriptor:(Ljavax/management/MBeanInfo;Z)Ljavax/management/Descriptor;
            astore 11 /* desc */
        start local 11 // javax.management.Descriptor desc
        25: .line 461
            new javax.management.MBeanInfo
            dup
        26: .line 462
            aload 5 /* cname */
            aload 6 /* text */
            aload 8 /* attrs */
            aload 7 /* ctors */
            aload 9 /* ops */
            aload 10 /* ntfs */
            aload 11 /* desc */
        27: .line 461
            invokespecial javax.management.MBeanInfo.<init>:(Ljava/lang/String;Ljava/lang/String;[Ljavax/management/MBeanAttributeInfo;[Ljavax/management/MBeanConstructorInfo;[Ljavax/management/MBeanOperationInfo;[Ljavax/management/MBeanNotificationInfo;Ljavax/management/Descriptor;)V
            astore 12 /* nmbi */
        start local 12 // javax.management.MBeanInfo nmbi
        28: .line 464
            aload 0 /* this */
            aload 12 /* nmbi */
            invokevirtual javax.management.StandardMBean.cacheMBeanInfo:(Ljavax/management/MBeanInfo;)V
        29: .line 465
            goto 35
      StackMap locals: javax.management.StandardMBean com.sun.jmx.mbeanserver.MBeanSupport javax.management.MBeanInfo java.lang.Object int java.lang.String java.lang.String javax.management.MBeanConstructorInfo[] javax.management.MBeanAttributeInfo[] javax.management.MBeanOperationInfo[] javax.management.MBeanNotificationInfo[] javax.management.Descriptor javax.management.MBeanInfo
      StackMap stack: java.lang.RuntimeException
        30: astore 13 /* x */
        start local 13 // java.lang.RuntimeException x
        31: .line 466
            getstatic com.sun.jmx.defaults.JmxProperties.MISC_LOGGER:Ljava/lang/System$Logger;
            getstatic java.lang.System$Logger$Level.DEBUG:Ljava/lang/System$Logger$Level;
            invokeinterface java.lang.System$Logger.isLoggable:(Ljava/lang/System$Logger$Level;)Z
            ifeq 35
        32: .line 467
            getstatic com.sun.jmx.defaults.JmxProperties.MISC_LOGGER:Ljava/lang/System$Logger;
            getstatic java.lang.System$Logger$Level.DEBUG:Ljava/lang/System$Logger$Level;
        33: .line 468
            ldc "Failed to cache MBeanInfo"
            aload 13 /* x */
        34: .line 467
            invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 13 // java.lang.RuntimeException x
        35: .line 472
      StackMap locals:
      StackMap stack:
            aload 12 /* nmbi */
            areturn
        end local 12 // javax.management.MBeanInfo nmbi
        end local 11 // javax.management.Descriptor desc
        end local 10 // javax.management.MBeanNotificationInfo[] ntfs
        end local 9 // javax.management.MBeanOperationInfo[] ops
        end local 8 // javax.management.MBeanAttributeInfo[] attrs
        end local 7 // javax.management.MBeanConstructorInfo[] ctors
        end local 6 // java.lang.String text
        end local 5 // java.lang.String cname
        end local 4 // boolean immutableInfo
        end local 3 // java.lang.Object impl
        end local 2 // javax.management.MBeanInfo bi
        end local 1 // com.sun.jmx.mbeanserver.MBeanSupport msupport
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   36     0           this  Ljavax/management/StandardMBean;
            1    3     1         cached  Ljavax/management/MBeanInfo;
            4    8     1              x  Ljava/lang/RuntimeException;
           15   36     1       msupport  Lcom/sun/jmx/mbeanserver/MBeanSupport<*>;
           16   36     2             bi  Ljavax/management/MBeanInfo;
           17   36     3           impl  Ljava/lang/Object;
           18   36     4  immutableInfo  Z
           19   36     5          cname  Ljava/lang/String;
           20   36     6           text  Ljava/lang/String;
           21   36     7          ctors  [Ljavax/management/MBeanConstructorInfo;
           22   36     8          attrs  [Ljavax/management/MBeanAttributeInfo;
           23   36     9            ops  [Ljavax/management/MBeanOperationInfo;
           24   36    10           ntfs  [Ljavax/management/MBeanNotificationInfo;
           25   36    11           desc  Ljavax/management/Descriptor;
           28   36    12           nmbi  Ljavax/management/MBeanInfo;
           31   35    13              x  Ljava/lang/RuntimeException;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.RuntimeException
          28    29      30  Class java.lang.RuntimeException

  protected java.lang.String getClassName(javax.management.MBeanInfo);
    descriptor: (Ljavax/management/MBeanInfo;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanInfo info
         0: .line 487
            aload 1 /* info */
            ifnonnull 1
            aload 0 /* this */
            invokevirtual javax.management.StandardMBean.getImplementationClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            areturn
         1: .line 488
      StackMap locals:
      StackMap stack:
            aload 1 /* info */
            invokevirtual javax.management.MBeanInfo.getClassName:()Ljava/lang/String;
            areturn
        end local 1 // javax.management.MBeanInfo info
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/management/StandardMBean;
            0    2     1  info  Ljavax/management/MBeanInfo;
    MethodParameters:
      Name  Flags
      info  

  protected java.lang.String getDescription(javax.management.MBeanInfo);
    descriptor: (Ljavax/management/MBeanInfo;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanInfo info
         0: .line 503
            aload 1 /* info */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 504
      StackMap locals:
      StackMap stack:
            aload 1 /* info */
            invokevirtual javax.management.MBeanInfo.getDescription:()Ljava/lang/String;
            areturn
        end local 1 // javax.management.MBeanInfo info
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/management/StandardMBean;
            0    2     1  info  Ljavax/management/MBeanInfo;
    MethodParameters:
      Name  Flags
      info  

  protected java.lang.String getDescription(javax.management.MBeanFeatureInfo);
    descriptor: (Ljavax/management/MBeanFeatureInfo;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanFeatureInfo info
         0: .line 526
            aload 1 /* info */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 527
      StackMap locals:
      StackMap stack:
            aload 1 /* info */
            invokevirtual javax.management.MBeanFeatureInfo.getDescription:()Ljava/lang/String;
            areturn
        end local 1 // javax.management.MBeanFeatureInfo info
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/management/StandardMBean;
            0    2     1  info  Ljavax/management/MBeanFeatureInfo;
    MethodParameters:
      Name  Flags
      info  

  protected java.lang.String getDescription(javax.management.MBeanAttributeInfo);
    descriptor: (Ljavax/management/MBeanAttributeInfo;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanAttributeInfo info
         0: .line 543
            aload 0 /* this */
            aload 1 /* info */
            invokevirtual javax.management.StandardMBean.getDescription:(Ljavax/management/MBeanFeatureInfo;)Ljava/lang/String;
            areturn
        end local 1 // javax.management.MBeanAttributeInfo info
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/StandardMBean;
            0    1     1  info  Ljavax/management/MBeanAttributeInfo;
    MethodParameters:
      Name  Flags
      info  

  protected java.lang.String getDescription(javax.management.MBeanConstructorInfo);
    descriptor: (Ljavax/management/MBeanConstructorInfo;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanConstructorInfo info
         0: .line 560
            aload 0 /* this */
            aload 1 /* info */
            invokevirtual javax.management.StandardMBean.getDescription:(Ljavax/management/MBeanFeatureInfo;)Ljava/lang/String;
            areturn
        end local 1 // javax.management.MBeanConstructorInfo info
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/StandardMBean;
            0    1     1  info  Ljavax/management/MBeanConstructorInfo;
    MethodParameters:
      Name  Flags
      info  

  protected java.lang.String getDescription(javax.management.MBeanConstructorInfo, javax.management.MBeanParameterInfo, int);
    descriptor: (Ljavax/management/MBeanConstructorInfo;Ljavax/management/MBeanParameterInfo;I)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=4, args_size=4
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanConstructorInfo ctor
        start local 2 // javax.management.MBeanParameterInfo param
        start local 3 // int sequence
         0: .line 582
            aload 2 /* param */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 583
      StackMap locals:
      StackMap stack:
            aload 2 /* param */
            invokevirtual javax.management.MBeanParameterInfo.getDescription:()Ljava/lang/String;
            areturn
        end local 3 // int sequence
        end local 2 // javax.management.MBeanParameterInfo param
        end local 1 // javax.management.MBeanConstructorInfo ctor
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Ljavax/management/StandardMBean;
            0    2     1      ctor  Ljavax/management/MBeanConstructorInfo;
            0    2     2     param  Ljavax/management/MBeanParameterInfo;
            0    2     3  sequence  I
    MethodParameters:
          Name  Flags
      ctor      
      param     
      sequence  

  protected java.lang.String getParameterName(javax.management.MBeanConstructorInfo, javax.management.MBeanParameterInfo, int);
    descriptor: (Ljavax/management/MBeanConstructorInfo;Ljavax/management/MBeanParameterInfo;I)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=4, args_size=4
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanConstructorInfo ctor
        start local 2 // javax.management.MBeanParameterInfo param
        start local 3 // int sequence
         0: .line 605
            aload 2 /* param */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 606
      StackMap locals:
      StackMap stack:
            aload 2 /* param */
            invokevirtual javax.management.MBeanParameterInfo.getName:()Ljava/lang/String;
            areturn
        end local 3 // int sequence
        end local 2 // javax.management.MBeanParameterInfo param
        end local 1 // javax.management.MBeanConstructorInfo ctor
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Ljavax/management/StandardMBean;
            0    2     1      ctor  Ljavax/management/MBeanConstructorInfo;
            0    2     2     param  Ljavax/management/MBeanParameterInfo;
            0    2     3  sequence  I
    MethodParameters:
          Name  Flags
      ctor      
      param     
      sequence  

  protected java.lang.String getDescription(javax.management.MBeanOperationInfo);
    descriptor: (Ljavax/management/MBeanOperationInfo;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanOperationInfo info
         0: .line 622
            aload 0 /* this */
            aload 1 /* info */
            invokevirtual javax.management.StandardMBean.getDescription:(Ljavax/management/MBeanFeatureInfo;)Ljava/lang/String;
            areturn
        end local 1 // javax.management.MBeanOperationInfo info
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/StandardMBean;
            0    1     1  info  Ljavax/management/MBeanOperationInfo;
    MethodParameters:
      Name  Flags
      info  

  protected int getImpact(javax.management.MBeanOperationInfo);
    descriptor: (Ljavax/management/MBeanOperationInfo;)I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanOperationInfo info
         0: .line 637
            aload 1 /* info */
            ifnonnull 1
            iconst_3
            ireturn
         1: .line 638
      StackMap locals:
      StackMap stack:
            aload 1 /* info */
            invokevirtual javax.management.MBeanOperationInfo.getImpact:()I
            ireturn
        end local 1 // javax.management.MBeanOperationInfo info
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/management/StandardMBean;
            0    2     1  info  Ljavax/management/MBeanOperationInfo;
    MethodParameters:
      Name  Flags
      info  

  protected java.lang.String getParameterName(javax.management.MBeanOperationInfo, javax.management.MBeanParameterInfo, int);
    descriptor: (Ljavax/management/MBeanOperationInfo;Ljavax/management/MBeanParameterInfo;I)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=4, args_size=4
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanOperationInfo op
        start local 2 // javax.management.MBeanParameterInfo param
        start local 3 // int sequence
         0: .line 660
            aload 2 /* param */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 661
      StackMap locals:
      StackMap stack:
            aload 2 /* param */
            invokevirtual javax.management.MBeanParameterInfo.getName:()Ljava/lang/String;
            areturn
        end local 3 // int sequence
        end local 2 // javax.management.MBeanParameterInfo param
        end local 1 // javax.management.MBeanOperationInfo op
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Ljavax/management/StandardMBean;
            0    2     1        op  Ljavax/management/MBeanOperationInfo;
            0    2     2     param  Ljavax/management/MBeanParameterInfo;
            0    2     3  sequence  I
    MethodParameters:
          Name  Flags
      op        
      param     
      sequence  

  protected java.lang.String getDescription(javax.management.MBeanOperationInfo, javax.management.MBeanParameterInfo, int);
    descriptor: (Ljavax/management/MBeanOperationInfo;Ljavax/management/MBeanParameterInfo;I)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=4, args_size=4
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanOperationInfo op
        start local 2 // javax.management.MBeanParameterInfo param
        start local 3 // int sequence
         0: .line 683
            aload 2 /* param */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 684
      StackMap locals:
      StackMap stack:
            aload 2 /* param */
            invokevirtual javax.management.MBeanParameterInfo.getDescription:()Ljava/lang/String;
            areturn
        end local 3 // int sequence
        end local 2 // javax.management.MBeanParameterInfo param
        end local 1 // javax.management.MBeanOperationInfo op
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Ljavax/management/StandardMBean;
            0    2     1        op  Ljavax/management/MBeanOperationInfo;
            0    2     2     param  Ljavax/management/MBeanParameterInfo;
            0    2     3  sequence  I
    MethodParameters:
          Name  Flags
      op        
      param     
      sequence  

  protected javax.management.MBeanConstructorInfo[] getConstructors(javax.management.MBeanConstructorInfo[], java.lang.Object);
    descriptor: ([Ljavax/management/MBeanConstructorInfo;Ljava/lang/Object;)[Ljavax/management/MBeanConstructorInfo;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanConstructorInfo[] ctors
        start local 2 // java.lang.Object impl
         0: .line 710
            aload 1 /* ctors */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 711
      StackMap locals:
      StackMap stack:
            aload 2 /* impl */
            ifnull 2
            aload 2 /* impl */
            aload 0 /* this */
            if_acmpeq 2
            aconst_null
            areturn
         2: .line 712
      StackMap locals:
      StackMap stack:
            aload 1 /* ctors */
            areturn
        end local 2 // java.lang.Object impl
        end local 1 // javax.management.MBeanConstructorInfo[] ctors
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljavax/management/StandardMBean;
            0    3     1  ctors  [Ljavax/management/MBeanConstructorInfo;
            0    3     2   impl  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      ctors  
      impl   

  javax.management.MBeanNotificationInfo[] getNotifications(javax.management.MBeanInfo);
    descriptor: (Ljavax/management/MBeanInfo;)[Ljavax/management/MBeanNotificationInfo;
    flags: (0x0000) 
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanInfo info
         0: .line 726
            aconst_null
            areturn
        end local 1 // javax.management.MBeanInfo info
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/StandardMBean;
            0    1     1  info  Ljavax/management/MBeanInfo;
    MethodParameters:
      Name  Flags
      info  

  javax.management.Descriptor getDescriptor(javax.management.MBeanInfo, boolean);
    descriptor: (Ljavax/management/MBeanInfo;Z)Ljavax/management/Descriptor;
    flags: (0x0000) 
    Code:
      stack=6, locals=10, args_size=3
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanInfo info
        start local 2 // boolean immutableInfo
         0: .line 751
            aload 1 /* info */
            ifnull 3
         1: .line 752
            aload 1 /* info */
            invokevirtual javax.management.MBeanInfo.getDescriptor:()Ljavax/management/Descriptor;
            ifnull 3
         2: .line 753
            aload 1 /* info */
            invokevirtual javax.management.MBeanInfo.getDescriptor:()Ljavax/management/Descriptor;
            invokeinterface javax.management.Descriptor.getFieldNames:()[Ljava/lang/String;
            arraylength
            ifne 10
         3: .line 755
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "interfaceClassName="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual javax.management.StandardMBean.getMBeanInterface:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 754
            astore 4 /* interfaceClassNameS */
        start local 4 // java.lang.String interfaceClassNameS
         5: .line 757
            new java.lang.StringBuilder
            dup
            ldc "immutableInfo="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* immutableInfo */
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         6: .line 756
            astore 5 /* immutableInfoS */
        start local 5 // java.lang.String immutableInfoS
         7: .line 758
            new javax.management.ImmutableDescriptor
            dup
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 4 /* interfaceClassNameS */
            aastore
            dup
            iconst_1
            aload 5 /* immutableInfoS */
            aastore
            invokespecial javax.management.ImmutableDescriptor.<init>:([Ljava/lang/String;)V
            astore 3 /* desc */
        start local 3 // javax.management.ImmutableDescriptor desc
         8: .line 759
            getstatic javax.management.StandardMBean.descriptors:Lcom/sun/jmx/mbeanserver/DescriptorCache;
            aload 3 /* desc */
            invokevirtual com.sun.jmx.mbeanserver.DescriptorCache.get:(Ljavax/management/ImmutableDescriptor;)Ljavax/management/ImmutableDescriptor;
            astore 3 /* desc */
        end local 5 // java.lang.String immutableInfoS
        end local 4 // java.lang.String interfaceClassNameS
         9: .line 760
            goto 21
        end local 3 // javax.management.ImmutableDescriptor desc
        10: .line 761
      StackMap locals:
      StackMap stack:
            aload 1 /* info */
            invokevirtual javax.management.MBeanInfo.getDescriptor:()Ljavax/management/Descriptor;
            astore 4 /* d */
        start local 4 // javax.management.Descriptor d
        11: .line 762
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 5 /* fields */
        start local 5 // java.util.Map fields
        12: .line 763
            aload 4 /* d */
            invokeinterface javax.management.Descriptor.getFieldNames:()[Ljava/lang/String;
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 19
      StackMap locals: javax.management.StandardMBean javax.management.MBeanInfo int top javax.management.Descriptor java.util.Map top int int java.lang.String[]
      StackMap stack:
        13: aload 9
            iload 7
            aaload
            astore 6 /* fieldName */
        start local 6 // java.lang.String fieldName
        14: .line 764
            aload 6 /* fieldName */
            ldc "immutableInfo"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 17
        15: .line 768
            aload 5 /* fields */
            aload 6 /* fieldName */
            iload 2 /* immutableInfo */
            invokestatic java.lang.Boolean.toString:(Z)Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 769
            goto 18
        17: .line 770
      StackMap locals: javax.management.StandardMBean javax.management.MBeanInfo int top javax.management.Descriptor java.util.Map java.lang.String int int java.lang.String[]
      StackMap stack:
            aload 5 /* fields */
            aload 6 /* fieldName */
            aload 4 /* d */
            aload 6 /* fieldName */
            invokeinterface javax.management.Descriptor.getFieldValue:(Ljava/lang/String;)Ljava/lang/Object;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 6 // java.lang.String fieldName
        18: .line 763
      StackMap locals: javax.management.StandardMBean javax.management.MBeanInfo int top javax.management.Descriptor java.util.Map top int int java.lang.String[]
      StackMap stack:
            iinc 7 1
      StackMap locals:
      StackMap stack:
        19: iload 7
            iload 8
            if_icmplt 13
        20: .line 773
            new javax.management.ImmutableDescriptor
            dup
            aload 5 /* fields */
            invokespecial javax.management.ImmutableDescriptor.<init>:(Ljava/util/Map;)V
            astore 3 /* desc */
        end local 5 // java.util.Map fields
        end local 4 // javax.management.Descriptor d
        start local 3 // javax.management.ImmutableDescriptor desc
        21: .line 775
      StackMap locals: javax.management.StandardMBean javax.management.MBeanInfo int javax.management.ImmutableDescriptor
      StackMap stack:
            aload 3 /* desc */
            areturn
        end local 3 // javax.management.ImmutableDescriptor desc
        end local 2 // boolean immutableInfo
        end local 1 // javax.management.MBeanInfo info
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   22     0                 this  Ljavax/management/StandardMBean;
            0   22     1                 info  Ljavax/management/MBeanInfo;
            0   22     2        immutableInfo  Z
            8   10     3                 desc  Ljavax/management/ImmutableDescriptor;
           21   22     3                 desc  Ljavax/management/ImmutableDescriptor;
            5    9     4  interfaceClassNameS  Ljava/lang/String;
            7    9     5       immutableInfoS  Ljava/lang/String;
           11   21     4                    d  Ljavax/management/Descriptor;
           12   21     5               fields  Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
           14   18     6            fieldName  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      info           
      immutableInfo  

  protected javax.management.MBeanInfo getCachedMBeanInfo();
    descriptor: ()Ljavax/management/MBeanInfo;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.StandardMBean this
         0: .line 791
            aload 0 /* this */
            getfield javax.management.StandardMBean.cachedMBeanInfo:Ljavax/management/MBeanInfo;
            areturn
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/StandardMBean;

  protected void cacheMBeanInfo(javax.management.MBeanInfo);
    descriptor: (Ljavax/management/MBeanInfo;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanInfo info
         0: .line 812
            aload 0 /* this */
            aload 1 /* info */
            putfield javax.management.StandardMBean.cachedMBeanInfo:Ljavax/management/MBeanInfo;
         1: .line 813
            return
        end local 1 // javax.management.MBeanInfo info
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/management/StandardMBean;
            0    2     1  info  Ljavax/management/MBeanInfo;
    MethodParameters:
      Name  Flags
      info  

  private boolean isMXBean();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.StandardMBean this
         0: .line 816
            aload 0 /* this */
            getfield javax.management.StandardMBean.mbean:Lcom/sun/jmx/mbeanserver/MBeanSupport;
            invokevirtual com.sun.jmx.mbeanserver.MBeanSupport.isMXBean:()Z
            ireturn
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/StandardMBean;

  private static <T> boolean identicalArrays(T[], );
    descriptor: ([Ljava/lang/Object;[Ljava/lang/Object;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.Object[] a
        start local 1 // java.lang.Object[] b
         0: .line 820
            aload 0 /* a */
            aload 1 /* b */
            if_acmpne 2
         1: .line 821
            iconst_1
            ireturn
         2: .line 822
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            ifnull 3
            aload 1 /* b */
            ifnull 3
            aload 0 /* a */
            arraylength
            aload 1 /* b */
            arraylength
            if_icmpeq 4
         3: .line 823
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         4: .line 824
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         5: goto 9
         6: .line 825
      StackMap locals: int
      StackMap stack:
            aload 0 /* a */
            iload 2 /* i */
            aaload
            aload 1 /* b */
            iload 2 /* i */
            aaload
            if_acmpeq 8
         7: .line 826
            iconst_0
            ireturn
         8: .line 824
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 2 /* i */
            aload 0 /* a */
            arraylength
            if_icmplt 6
        end local 2 // int i
        10: .line 828
            iconst_1
            ireturn
        end local 1 // java.lang.Object[] b
        end local 0 // java.lang.Object[] a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0     a  [Ljava/lang/Object;
            0   11     1     b  [Ljava/lang/Object;
            5   10     2     i  I
    Signature: <T:Ljava/lang/Object;>([TT;[TT;)Z
    MethodParameters:
      Name  Flags
      a     
      b     

  private static <T> boolean equal(T, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.Object a
        start local 1 // java.lang.Object b
         0: .line 832
            aload 0 /* a */
            aload 1 /* b */
            if_acmpne 2
         1: .line 833
            iconst_1
            ireturn
         2: .line 834
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            ifnull 3
            aload 1 /* b */
            ifnonnull 4
         3: .line 835
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         4: .line 836
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            aload 1 /* b */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.Object b
        end local 0 // java.lang.Object a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     a  TT;
            0    5     1     b  TT;
    Signature: <T:Ljava/lang/Object;>(TT;TT;)Z
    MethodParameters:
      Name  Flags
      a     
      b     

  private static javax.management.MBeanParameterInfo customize(javax.management.MBeanParameterInfo, java.lang.String, java.lang.String);
    descriptor: (Ljavax/management/MBeanParameterInfo;Ljava/lang/String;Ljava/lang/String;)Ljavax/management/MBeanParameterInfo;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // javax.management.MBeanParameterInfo pi
        start local 1 // java.lang.String name
        start local 2 // java.lang.String description
         0: .line 843
            aload 1 /* name */
            aload 0 /* pi */
            invokevirtual javax.management.MBeanParameterInfo.getName:()Ljava/lang/String;
            invokestatic javax.management.StandardMBean.equal:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 3
         1: .line 844
            aload 2 /* description */
            aload 0 /* pi */
            invokevirtual javax.management.MBeanParameterInfo.getDescription:()Ljava/lang/String;
            invokestatic javax.management.StandardMBean.equal:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 3
         2: .line 845
            aload 0 /* pi */
            areturn
         3: .line 846
      StackMap locals:
      StackMap stack:
            aload 0 /* pi */
            instanceof javax.management.openmbean.OpenMBeanParameterInfo
            ifeq 10
         4: .line 847
            aload 0 /* pi */
            checkcast javax.management.openmbean.OpenMBeanParameterInfo
            astore 3 /* opi */
        start local 3 // javax.management.openmbean.OpenMBeanParameterInfo opi
         5: .line 848
            new javax.management.openmbean.OpenMBeanParameterInfoSupport
            dup
            aload 1 /* name */
         6: .line 849
            aload 2 /* description */
         7: .line 850
            aload 3 /* opi */
            invokeinterface javax.management.openmbean.OpenMBeanParameterInfo.getOpenType:()Ljavax/management/openmbean/OpenType;
         8: .line 851
            aload 0 /* pi */
            invokevirtual javax.management.MBeanParameterInfo.getDescriptor:()Ljavax/management/Descriptor;
         9: .line 848
            invokespecial javax.management.openmbean.OpenMBeanParameterInfoSupport.<init>:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/openmbean/OpenType;Ljavax/management/Descriptor;)V
            areturn
        end local 3 // javax.management.openmbean.OpenMBeanParameterInfo opi
        10: .line 853
      StackMap locals:
      StackMap stack:
            new javax.management.MBeanParameterInfo
            dup
            aload 1 /* name */
        11: .line 854
            aload 0 /* pi */
            invokevirtual javax.management.MBeanParameterInfo.getType:()Ljava/lang/String;
        12: .line 855
            aload 2 /* description */
        13: .line 856
            aload 0 /* pi */
            invokevirtual javax.management.MBeanParameterInfo.getDescriptor:()Ljavax/management/Descriptor;
        14: .line 853
            invokespecial javax.management.MBeanParameterInfo.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljavax/management/Descriptor;)V
            areturn
        end local 2 // java.lang.String description
        end local 1 // java.lang.String name
        end local 0 // javax.management.MBeanParameterInfo pi
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   15     0           pi  Ljavax/management/MBeanParameterInfo;
            0   15     1         name  Ljava/lang/String;
            0   15     2  description  Ljava/lang/String;
            5   10     3          opi  Ljavax/management/openmbean/OpenMBeanParameterInfo;
    MethodParameters:
             Name  Flags
      pi           
      name         
      description  

  private static javax.management.MBeanConstructorInfo customize(javax.management.MBeanConstructorInfo, java.lang.String, javax.management.MBeanParameterInfo[]);
    descriptor: (Ljavax/management/MBeanConstructorInfo;Ljava/lang/String;[Ljavax/management/MBeanParameterInfo;)Ljavax/management/MBeanConstructorInfo;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // javax.management.MBeanConstructorInfo ci
        start local 1 // java.lang.String description
        start local 2 // javax.management.MBeanParameterInfo[] signature
         0: .line 864
            aload 1 /* description */
            aload 0 /* ci */
            invokevirtual javax.management.MBeanConstructorInfo.getDescription:()Ljava/lang/String;
            invokestatic javax.management.StandardMBean.equal:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 3
         1: .line 865
            aload 2 /* signature */
            aload 0 /* ci */
            invokevirtual javax.management.MBeanConstructorInfo.getSignature:()[Ljavax/management/MBeanParameterInfo;
            invokestatic javax.management.StandardMBean.identicalArrays:([Ljava/lang/Object;[Ljava/lang/Object;)Z
            ifeq 3
         2: .line 866
            aload 0 /* ci */
            areturn
         3: .line 867
      StackMap locals:
      StackMap stack:
            aload 0 /* ci */
            instanceof javax.management.openmbean.OpenMBeanConstructorInfo
            ifeq 11
         4: .line 869
            aload 2 /* signature */
            invokestatic javax.management.StandardMBean.paramsToOpenParams:([Ljavax/management/MBeanParameterInfo;)[Ljavax/management/openmbean/OpenMBeanParameterInfo;
         5: .line 868
            astore 3 /* oparams */
        start local 3 // javax.management.openmbean.OpenMBeanParameterInfo[] oparams
         6: .line 870
            new javax.management.openmbean.OpenMBeanConstructorInfoSupport
            dup
            aload 0 /* ci */
            invokevirtual javax.management.MBeanConstructorInfo.getName:()Ljava/lang/String;
         7: .line 871
            aload 1 /* description */
         8: .line 872
            aload 3 /* oparams */
         9: .line 873
            aload 0 /* ci */
            invokevirtual javax.management.MBeanConstructorInfo.getDescriptor:()Ljavax/management/Descriptor;
        10: .line 870
            invokespecial javax.management.openmbean.OpenMBeanConstructorInfoSupport.<init>:(Ljava/lang/String;Ljava/lang/String;[Ljavax/management/openmbean/OpenMBeanParameterInfo;Ljavax/management/Descriptor;)V
            areturn
        end local 3 // javax.management.openmbean.OpenMBeanParameterInfo[] oparams
        11: .line 875
      StackMap locals:
      StackMap stack:
            new javax.management.MBeanConstructorInfo
            dup
            aload 0 /* ci */
            invokevirtual javax.management.MBeanConstructorInfo.getName:()Ljava/lang/String;
        12: .line 876
            aload 1 /* description */
        13: .line 877
            aload 2 /* signature */
        14: .line 878
            aload 0 /* ci */
            invokevirtual javax.management.MBeanConstructorInfo.getDescriptor:()Ljavax/management/Descriptor;
        15: .line 875
            invokespecial javax.management.MBeanConstructorInfo.<init>:(Ljava/lang/String;Ljava/lang/String;[Ljavax/management/MBeanParameterInfo;Ljavax/management/Descriptor;)V
            areturn
        end local 2 // javax.management.MBeanParameterInfo[] signature
        end local 1 // java.lang.String description
        end local 0 // javax.management.MBeanConstructorInfo ci
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   16     0           ci  Ljavax/management/MBeanConstructorInfo;
            0   16     1  description  Ljava/lang/String;
            0   16     2    signature  [Ljavax/management/MBeanParameterInfo;
            6   11     3      oparams  [Ljavax/management/openmbean/OpenMBeanParameterInfo;
    MethodParameters:
             Name  Flags
      ci           
      description  
      signature    

  private static javax.management.MBeanOperationInfo customize(javax.management.MBeanOperationInfo, java.lang.String, javax.management.MBeanParameterInfo[], int);
    descriptor: (Ljavax/management/MBeanOperationInfo;Ljava/lang/String;[Ljavax/management/MBeanParameterInfo;I)Ljavax/management/MBeanOperationInfo;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=6, args_size=4
        start local 0 // javax.management.MBeanOperationInfo oi
        start local 1 // java.lang.String description
        start local 2 // javax.management.MBeanParameterInfo[] signature
        start local 3 // int impact
         0: .line 887
            aload 1 /* description */
            aload 0 /* oi */
            invokevirtual javax.management.MBeanOperationInfo.getDescription:()Ljava/lang/String;
            invokestatic javax.management.StandardMBean.equal:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 4
         1: .line 888
            aload 2 /* signature */
            aload 0 /* oi */
            invokevirtual javax.management.MBeanOperationInfo.getSignature:()[Ljavax/management/MBeanParameterInfo;
            invokestatic javax.management.StandardMBean.identicalArrays:([Ljava/lang/Object;[Ljava/lang/Object;)Z
            ifeq 4
         2: .line 889
            iload 3 /* impact */
            aload 0 /* oi */
            invokevirtual javax.management.MBeanOperationInfo.getImpact:()I
            if_icmpne 4
         3: .line 890
            aload 0 /* oi */
            areturn
         4: .line 891
      StackMap locals:
      StackMap stack:
            aload 0 /* oi */
            instanceof javax.management.openmbean.OpenMBeanOperationInfo
            ifeq 15
         5: .line 892
            aload 0 /* oi */
            checkcast javax.management.openmbean.OpenMBeanOperationInfo
            astore 4 /* ooi */
        start local 4 // javax.management.openmbean.OpenMBeanOperationInfo ooi
         6: .line 894
            aload 2 /* signature */
            invokestatic javax.management.StandardMBean.paramsToOpenParams:([Ljavax/management/MBeanParameterInfo;)[Ljavax/management/openmbean/OpenMBeanParameterInfo;
         7: .line 893
            astore 5 /* oparams */
        start local 5 // javax.management.openmbean.OpenMBeanParameterInfo[] oparams
         8: .line 895
            new javax.management.openmbean.OpenMBeanOperationInfoSupport
            dup
            aload 0 /* oi */
            invokevirtual javax.management.MBeanOperationInfo.getName:()Ljava/lang/String;
         9: .line 896
            aload 1 /* description */
        10: .line 897
            aload 5 /* oparams */
        11: .line 898
            aload 4 /* ooi */
            invokeinterface javax.management.openmbean.OpenMBeanOperationInfo.getReturnOpenType:()Ljavax/management/openmbean/OpenType;
        12: .line 899
            iload 3 /* impact */
        13: .line 900
            aload 0 /* oi */
            invokevirtual javax.management.MBeanOperationInfo.getDescriptor:()Ljavax/management/Descriptor;
        14: .line 895
            invokespecial javax.management.openmbean.OpenMBeanOperationInfoSupport.<init>:(Ljava/lang/String;Ljava/lang/String;[Ljavax/management/openmbean/OpenMBeanParameterInfo;Ljavax/management/openmbean/OpenType;ILjavax/management/Descriptor;)V
            areturn
        end local 5 // javax.management.openmbean.OpenMBeanParameterInfo[] oparams
        end local 4 // javax.management.openmbean.OpenMBeanOperationInfo ooi
        15: .line 902
      StackMap locals:
      StackMap stack:
            new javax.management.MBeanOperationInfo
            dup
            aload 0 /* oi */
            invokevirtual javax.management.MBeanOperationInfo.getName:()Ljava/lang/String;
        16: .line 903
            aload 1 /* description */
        17: .line 904
            aload 2 /* signature */
        18: .line 905
            aload 0 /* oi */
            invokevirtual javax.management.MBeanOperationInfo.getReturnType:()Ljava/lang/String;
        19: .line 906
            iload 3 /* impact */
        20: .line 907
            aload 0 /* oi */
            invokevirtual javax.management.MBeanOperationInfo.getDescriptor:()Ljavax/management/Descriptor;
        21: .line 902
            invokespecial javax.management.MBeanOperationInfo.<init>:(Ljava/lang/String;Ljava/lang/String;[Ljavax/management/MBeanParameterInfo;Ljava/lang/String;ILjavax/management/Descriptor;)V
            areturn
        end local 3 // int impact
        end local 2 // javax.management.MBeanParameterInfo[] signature
        end local 1 // java.lang.String description
        end local 0 // javax.management.MBeanOperationInfo oi
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   22     0           oi  Ljavax/management/MBeanOperationInfo;
            0   22     1  description  Ljava/lang/String;
            0   22     2    signature  [Ljavax/management/MBeanParameterInfo;
            0   22     3       impact  I
            6   15     4          ooi  Ljavax/management/openmbean/OpenMBeanOperationInfo;
            8   15     5      oparams  [Ljavax/management/openmbean/OpenMBeanParameterInfo;
    MethodParameters:
             Name  Flags
      oi           
      description  
      signature    
      impact       

  private static javax.management.MBeanAttributeInfo customize(javax.management.MBeanAttributeInfo, java.lang.String);
    descriptor: (Ljavax/management/MBeanAttributeInfo;Ljava/lang/String;)Ljavax/management/MBeanAttributeInfo;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=3, args_size=2
        start local 0 // javax.management.MBeanAttributeInfo ai
        start local 1 // java.lang.String description
         0: .line 914
            aload 1 /* description */
            aload 0 /* ai */
            invokevirtual javax.management.MBeanAttributeInfo.getDescription:()Ljava/lang/String;
            invokestatic javax.management.StandardMBean.equal:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 2
         1: .line 915
            aload 0 /* ai */
            areturn
         2: .line 916
      StackMap locals:
      StackMap stack:
            aload 0 /* ai */
            instanceof javax.management.openmbean.OpenMBeanAttributeInfo
            ifeq 12
         3: .line 917
            aload 0 /* ai */
            checkcast javax.management.openmbean.OpenMBeanAttributeInfo
            astore 2 /* oai */
        start local 2 // javax.management.openmbean.OpenMBeanAttributeInfo oai
         4: .line 918
            new javax.management.openmbean.OpenMBeanAttributeInfoSupport
            dup
            aload 0 /* ai */
            invokevirtual javax.management.MBeanAttributeInfo.getName:()Ljava/lang/String;
         5: .line 919
            aload 1 /* description */
         6: .line 920
            aload 2 /* oai */
            invokeinterface javax.management.openmbean.OpenMBeanAttributeInfo.getOpenType:()Ljavax/management/openmbean/OpenType;
         7: .line 921
            aload 0 /* ai */
            invokevirtual javax.management.MBeanAttributeInfo.isReadable:()Z
         8: .line 922
            aload 0 /* ai */
            invokevirtual javax.management.MBeanAttributeInfo.isWritable:()Z
         9: .line 923
            aload 0 /* ai */
            invokevirtual javax.management.MBeanAttributeInfo.isIs:()Z
        10: .line 924
            aload 0 /* ai */
            invokevirtual javax.management.MBeanAttributeInfo.getDescriptor:()Ljavax/management/Descriptor;
        11: .line 918
            invokespecial javax.management.openmbean.OpenMBeanAttributeInfoSupport.<init>:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/openmbean/OpenType;ZZZLjavax/management/Descriptor;)V
            areturn
        end local 2 // javax.management.openmbean.OpenMBeanAttributeInfo oai
        12: .line 926
      StackMap locals:
      StackMap stack:
            new javax.management.MBeanAttributeInfo
            dup
            aload 0 /* ai */
            invokevirtual javax.management.MBeanAttributeInfo.getName:()Ljava/lang/String;
        13: .line 927
            aload 0 /* ai */
            invokevirtual javax.management.MBeanAttributeInfo.getType:()Ljava/lang/String;
        14: .line 928
            aload 1 /* description */
        15: .line 929
            aload 0 /* ai */
            invokevirtual javax.management.MBeanAttributeInfo.isReadable:()Z
        16: .line 930
            aload 0 /* ai */
            invokevirtual javax.management.MBeanAttributeInfo.isWritable:()Z
        17: .line 931
            aload 0 /* ai */
            invokevirtual javax.management.MBeanAttributeInfo.isIs:()Z
        18: .line 932
            aload 0 /* ai */
            invokevirtual javax.management.MBeanAttributeInfo.getDescriptor:()Ljavax/management/Descriptor;
        19: .line 926
            invokespecial javax.management.MBeanAttributeInfo.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZZLjavax/management/Descriptor;)V
            areturn
        end local 1 // java.lang.String description
        end local 0 // javax.management.MBeanAttributeInfo ai
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   20     0           ai  Ljavax/management/MBeanAttributeInfo;
            0   20     1  description  Ljava/lang/String;
            4   12     2          oai  Ljavax/management/openmbean/OpenMBeanAttributeInfo;
    MethodParameters:
             Name  Flags
      ai           
      description  

  private static javax.management.openmbean.OpenMBeanParameterInfo[] paramsToOpenParams(javax.management.MBeanParameterInfo[]);
    descriptor: ([Ljavax/management/MBeanParameterInfo;)[Ljavax/management/openmbean/OpenMBeanParameterInfo;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // javax.management.MBeanParameterInfo[] params
         0: .line 938
            aload 0 /* params */
            instanceof javax.management.openmbean.OpenMBeanParameterInfo[]
            ifeq 2
         1: .line 939
            aload 0 /* params */
            checkcast javax.management.openmbean.OpenMBeanParameterInfo[]
            areturn
         2: .line 941
      StackMap locals:
      StackMap stack:
            aload 0 /* params */
            arraylength
            anewarray javax.management.openmbean.OpenMBeanParameterInfoSupport
         3: .line 940
            astore 1 /* oparams */
        start local 1 // javax.management.openmbean.OpenMBeanParameterInfo[] oparams
         4: .line 942
            aload 0 /* params */
            iconst_0
            aload 1 /* oparams */
            iconst_0
            aload 0 /* params */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         5: .line 943
            aload 1 /* oparams */
            areturn
        end local 1 // javax.management.openmbean.OpenMBeanParameterInfo[] oparams
        end local 0 // javax.management.MBeanParameterInfo[] params
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0   params  [Ljavax/management/MBeanParameterInfo;
            4    6     1  oparams  [Ljavax/management/openmbean/OpenMBeanParameterInfo;
    MethodParameters:
        Name  Flags
      params  

  private javax.management.MBeanConstructorInfo[] getConstructors(javax.management.MBeanInfo, java.lang.Object);
    descriptor: (Ljavax/management/MBeanInfo;Ljava/lang/Object;)[Ljavax/management/MBeanConstructorInfo;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=13, args_size=3
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanInfo info
        start local 2 // java.lang.Object impl
         0: .line 952
            aload 0 /* this */
            aload 1 /* info */
            invokevirtual javax.management.MBeanInfo.getConstructors:()[Ljavax/management/MBeanConstructorInfo;
            aload 2 /* impl */
            invokevirtual javax.management.StandardMBean.getConstructors:([Ljavax/management/MBeanConstructorInfo;Ljava/lang/Object;)[Ljavax/management/MBeanConstructorInfo;
         1: .line 951
            astore 3 /* ctors */
        start local 3 // javax.management.MBeanConstructorInfo[] ctors
         2: .line 953
            aload 3 /* ctors */
            ifnonnull 4
         3: .line 954
            aconst_null
            areturn
         4: .line 955
      StackMap locals: javax.management.MBeanConstructorInfo[]
      StackMap stack:
            aload 3 /* ctors */
            arraylength
            istore 4 /* ctorlen */
        start local 4 // int ctorlen
         5: .line 956
            iload 4 /* ctorlen */
            anewarray javax.management.MBeanConstructorInfo
            astore 5 /* nctors */
        start local 5 // javax.management.MBeanConstructorInfo[] nctors
         6: .line 957
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         7: goto 28
         8: .line 958
      StackMap locals: int javax.management.MBeanConstructorInfo[] int
      StackMap stack:
            aload 3 /* ctors */
            iload 6 /* i */
            aaload
            astore 7 /* c */
        start local 7 // javax.management.MBeanConstructorInfo c
         9: .line 959
            aload 7 /* c */
            invokevirtual javax.management.MBeanConstructorInfo.getSignature:()[Ljavax/management/MBeanParameterInfo;
            astore 8 /* params */
        start local 8 // javax.management.MBeanParameterInfo[] params
        10: .line 961
            aload 8 /* params */
            ifnull 23
        11: .line 962
            aload 8 /* params */
            arraylength
            istore 10 /* plen */
        start local 10 // int plen
        12: .line 963
            iload 10 /* plen */
            anewarray javax.management.MBeanParameterInfo
            astore 9 /* nps */
        start local 9 // javax.management.MBeanParameterInfo[] nps
        13: .line 964
            iconst_0
            istore 11 /* ii */
        start local 11 // int ii
        14: goto 21
        15: .line 965
      StackMap locals: javax.management.StandardMBean javax.management.MBeanInfo java.lang.Object javax.management.MBeanConstructorInfo[] int javax.management.MBeanConstructorInfo[] int javax.management.MBeanConstructorInfo javax.management.MBeanParameterInfo[] javax.management.MBeanParameterInfo[] int int
      StackMap stack:
            aload 8 /* params */
            iload 11 /* ii */
            aaload
            astore 12 /* p */
        start local 12 // javax.management.MBeanParameterInfo p
        16: .line 966
            aload 9 /* nps */
            iload 11 /* ii */
            aload 12 /* p */
        17: .line 967
            aload 0 /* this */
            aload 7 /* c */
            aload 12 /* p */
            iload 11 /* ii */
            invokevirtual javax.management.StandardMBean.getParameterName:(Ljavax/management/MBeanConstructorInfo;Ljavax/management/MBeanParameterInfo;I)Ljava/lang/String;
        18: .line 968
            aload 0 /* this */
            aload 7 /* c */
            aload 12 /* p */
            iload 11 /* ii */
            invokevirtual javax.management.StandardMBean.getDescription:(Ljavax/management/MBeanConstructorInfo;Ljavax/management/MBeanParameterInfo;I)Ljava/lang/String;
        19: .line 966
            invokestatic javax.management.StandardMBean.customize:(Ljavax/management/MBeanParameterInfo;Ljava/lang/String;Ljava/lang/String;)Ljavax/management/MBeanParameterInfo;
            aastore
        end local 12 // javax.management.MBeanParameterInfo p
        20: .line 964
            iinc 11 /* ii */ 1
      StackMap locals:
      StackMap stack:
        21: iload 11 /* ii */
            iload 10 /* plen */
            if_icmplt 15
        end local 11 // int ii
        end local 10 // int plen
        22: .line 970
            goto 24
        end local 9 // javax.management.MBeanParameterInfo[] nps
        23: .line 971
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 9 /* nps */
        start local 9 // javax.management.MBeanParameterInfo[] nps
        24: .line 973
      StackMap locals: javax.management.MBeanParameterInfo[]
      StackMap stack:
            aload 5 /* nctors */
            iload 6 /* i */
        25: .line 974
            aload 7 /* c */
            aload 0 /* this */
            aload 7 /* c */
            invokevirtual javax.management.StandardMBean.getDescription:(Ljavax/management/MBeanConstructorInfo;)Ljava/lang/String;
            aload 9 /* nps */
            invokestatic javax.management.StandardMBean.customize:(Ljavax/management/MBeanConstructorInfo;Ljava/lang/String;[Ljavax/management/MBeanParameterInfo;)Ljavax/management/MBeanConstructorInfo;
        26: .line 973
            aastore
        end local 9 // javax.management.MBeanParameterInfo[] nps
        end local 8 // javax.management.MBeanParameterInfo[] params
        end local 7 // javax.management.MBeanConstructorInfo c
        27: .line 957
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 6 /* i */
            iload 4 /* ctorlen */
            if_icmplt 8
        end local 6 // int i
        29: .line 976
            aload 5 /* nctors */
            areturn
        end local 5 // javax.management.MBeanConstructorInfo[] nctors
        end local 4 // int ctorlen
        end local 3 // javax.management.MBeanConstructorInfo[] ctors
        end local 2 // java.lang.Object impl
        end local 1 // javax.management.MBeanInfo info
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   30     0     this  Ljavax/management/StandardMBean;
            0   30     1     info  Ljavax/management/MBeanInfo;
            0   30     2     impl  Ljava/lang/Object;
            2   30     3    ctors  [Ljavax/management/MBeanConstructorInfo;
            5   30     4  ctorlen  I
            6   30     5   nctors  [Ljavax/management/MBeanConstructorInfo;
            7   29     6        i  I
            9   27     7        c  Ljavax/management/MBeanConstructorInfo;
           10   27     8   params  [Ljavax/management/MBeanParameterInfo;
           13   23     9      nps  [Ljavax/management/MBeanParameterInfo;
           24   27     9      nps  [Ljavax/management/MBeanParameterInfo;
           12   22    10     plen  I
           14   22    11       ii  I
           16   20    12        p  Ljavax/management/MBeanParameterInfo;
    MethodParameters:
      Name  Flags
      info  
      impl  

  private javax.management.MBeanOperationInfo[] getOperations(javax.management.MBeanInfo);
    descriptor: (Ljavax/management/MBeanInfo;)[Ljavax/management/MBeanOperationInfo;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=12, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanInfo info
         0: .line 983
            aload 1 /* info */
            invokevirtual javax.management.MBeanInfo.getOperations:()[Ljavax/management/MBeanOperationInfo;
            astore 2 /* ops */
        start local 2 // javax.management.MBeanOperationInfo[] ops
         1: .line 984
            aload 2 /* ops */
            ifnonnull 3
         2: .line 985
            aconst_null
            areturn
         3: .line 986
      StackMap locals: javax.management.MBeanOperationInfo[]
      StackMap stack:
            aload 2 /* ops */
            arraylength
            istore 3 /* oplen */
        start local 3 // int oplen
         4: .line 987
            iload 3 /* oplen */
            anewarray javax.management.MBeanOperationInfo
            astore 4 /* nops */
        start local 4 // javax.management.MBeanOperationInfo[] nops
         5: .line 988
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         6: goto 25
         7: .line 989
      StackMap locals: int javax.management.MBeanOperationInfo[] int
      StackMap stack:
            aload 2 /* ops */
            iload 5 /* i */
            aaload
            astore 6 /* o */
        start local 6 // javax.management.MBeanOperationInfo o
         8: .line 990
            aload 6 /* o */
            invokevirtual javax.management.MBeanOperationInfo.getSignature:()[Ljavax/management/MBeanParameterInfo;
            astore 7 /* params */
        start local 7 // javax.management.MBeanParameterInfo[] params
         9: .line 992
            aload 7 /* params */
            ifnull 22
        10: .line 993
            aload 7 /* params */
            arraylength
            istore 9 /* plen */
        start local 9 // int plen
        11: .line 994
            iload 9 /* plen */
            anewarray javax.management.MBeanParameterInfo
            astore 8 /* nps */
        start local 8 // javax.management.MBeanParameterInfo[] nps
        12: .line 995
            iconst_0
            istore 10 /* ii */
        start local 10 // int ii
        13: goto 20
        14: .line 996
      StackMap locals: javax.management.StandardMBean javax.management.MBeanInfo javax.management.MBeanOperationInfo[] int javax.management.MBeanOperationInfo[] int javax.management.MBeanOperationInfo javax.management.MBeanParameterInfo[] javax.management.MBeanParameterInfo[] int int
      StackMap stack:
            aload 7 /* params */
            iload 10 /* ii */
            aaload
            astore 11 /* p */
        start local 11 // javax.management.MBeanParameterInfo p
        15: .line 997
            aload 8 /* nps */
            iload 10 /* ii */
            aload 11 /* p */
        16: .line 998
            aload 0 /* this */
            aload 6 /* o */
            aload 11 /* p */
            iload 10 /* ii */
            invokevirtual javax.management.StandardMBean.getParameterName:(Ljavax/management/MBeanOperationInfo;Ljavax/management/MBeanParameterInfo;I)Ljava/lang/String;
        17: .line 999
            aload 0 /* this */
            aload 6 /* o */
            aload 11 /* p */
            iload 10 /* ii */
            invokevirtual javax.management.StandardMBean.getDescription:(Ljavax/management/MBeanOperationInfo;Ljavax/management/MBeanParameterInfo;I)Ljava/lang/String;
        18: .line 997
            invokestatic javax.management.StandardMBean.customize:(Ljavax/management/MBeanParameterInfo;Ljava/lang/String;Ljava/lang/String;)Ljavax/management/MBeanParameterInfo;
            aastore
        end local 11 // javax.management.MBeanParameterInfo p
        19: .line 995
            iinc 10 /* ii */ 1
      StackMap locals:
      StackMap stack:
        20: iload 10 /* ii */
            iload 9 /* plen */
            if_icmplt 14
        end local 10 // int ii
        end local 9 // int plen
        21: .line 1001
            goto 23
        end local 8 // javax.management.MBeanParameterInfo[] nps
        22: .line 1002
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 8 /* nps */
        start local 8 // javax.management.MBeanParameterInfo[] nps
        23: .line 1004
      StackMap locals: javax.management.MBeanParameterInfo[]
      StackMap stack:
            aload 4 /* nops */
            iload 5 /* i */
            aload 6 /* o */
            aload 0 /* this */
            aload 6 /* o */
            invokevirtual javax.management.StandardMBean.getDescription:(Ljavax/management/MBeanOperationInfo;)Ljava/lang/String;
            aload 8 /* nps */
            aload 0 /* this */
            aload 6 /* o */
            invokevirtual javax.management.StandardMBean.getImpact:(Ljavax/management/MBeanOperationInfo;)I
            invokestatic javax.management.StandardMBean.customize:(Ljavax/management/MBeanOperationInfo;Ljava/lang/String;[Ljavax/management/MBeanParameterInfo;I)Ljavax/management/MBeanOperationInfo;
            aastore
        end local 8 // javax.management.MBeanParameterInfo[] nps
        end local 7 // javax.management.MBeanParameterInfo[] params
        end local 6 // javax.management.MBeanOperationInfo o
        24: .line 988
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        25: iload 5 /* i */
            iload 3 /* oplen */
            if_icmplt 7
        end local 5 // int i
        26: .line 1006
            aload 4 /* nops */
            areturn
        end local 4 // javax.management.MBeanOperationInfo[] nops
        end local 3 // int oplen
        end local 2 // javax.management.MBeanOperationInfo[] ops
        end local 1 // javax.management.MBeanInfo info
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   27     0    this  Ljavax/management/StandardMBean;
            0   27     1    info  Ljavax/management/MBeanInfo;
            1   27     2     ops  [Ljavax/management/MBeanOperationInfo;
            4   27     3   oplen  I
            5   27     4    nops  [Ljavax/management/MBeanOperationInfo;
            6   26     5       i  I
            8   24     6       o  Ljavax/management/MBeanOperationInfo;
            9   24     7  params  [Ljavax/management/MBeanParameterInfo;
           12   22     8     nps  [Ljavax/management/MBeanParameterInfo;
           23   24     8     nps  [Ljavax/management/MBeanParameterInfo;
           11   21     9    plen  I
           13   21    10      ii  I
           15   19    11       p  Ljavax/management/MBeanParameterInfo;
    MethodParameters:
      Name  Flags
      info  

  private javax.management.MBeanAttributeInfo[] getAttributes(javax.management.MBeanInfo);
    descriptor: (Ljavax/management/MBeanInfo;)[Ljavax/management/MBeanAttributeInfo;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanInfo info
         0: .line 1013
            aload 1 /* info */
            invokevirtual javax.management.MBeanInfo.getAttributes:()[Ljavax/management/MBeanAttributeInfo;
            astore 2 /* atts */
        start local 2 // javax.management.MBeanAttributeInfo[] atts
         1: .line 1014
            aload 2 /* atts */
            ifnonnull 3
         2: .line 1015
            aconst_null
            areturn
         3: .line 1017
      StackMap locals: javax.management.MBeanAttributeInfo[]
      StackMap stack:
            aload 2 /* atts */
            arraylength
            istore 4 /* attlen */
        start local 4 // int attlen
         4: .line 1018
            iload 4 /* attlen */
            anewarray javax.management.MBeanAttributeInfo
            astore 3 /* natts */
        start local 3 // javax.management.MBeanAttributeInfo[] natts
         5: .line 1019
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         6: goto 10
         7: .line 1020
      StackMap locals: javax.management.MBeanAttributeInfo[] int int
      StackMap stack:
            aload 2 /* atts */
            iload 5 /* i */
            aaload
            astore 6 /* a */
        start local 6 // javax.management.MBeanAttributeInfo a
         8: .line 1021
            aload 3 /* natts */
            iload 5 /* i */
            aload 6 /* a */
            aload 0 /* this */
            aload 6 /* a */
            invokevirtual javax.management.StandardMBean.getDescription:(Ljavax/management/MBeanAttributeInfo;)Ljava/lang/String;
            invokestatic javax.management.StandardMBean.customize:(Ljavax/management/MBeanAttributeInfo;Ljava/lang/String;)Ljavax/management/MBeanAttributeInfo;
            aastore
        end local 6 // javax.management.MBeanAttributeInfo a
         9: .line 1019
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 5 /* i */
            iload 4 /* attlen */
            if_icmplt 7
        end local 5 // int i
        11: .line 1023
            aload 3 /* natts */
            areturn
        end local 4 // int attlen
        end local 3 // javax.management.MBeanAttributeInfo[] natts
        end local 2 // javax.management.MBeanAttributeInfo[] atts
        end local 1 // javax.management.MBeanInfo info
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   12     0    this  Ljavax/management/StandardMBean;
            0   12     1    info  Ljavax/management/MBeanInfo;
            1   12     2    atts  [Ljavax/management/MBeanAttributeInfo;
            5   12     3   natts  [Ljavax/management/MBeanAttributeInfo;
            4   12     4  attlen  I
            6   11     5       i  I
            8    9     6       a  Ljavax/management/MBeanAttributeInfo;
    MethodParameters:
      Name  Flags
      info  

  public javax.management.ObjectName preRegister(javax.management.MBeanServer, javax.management.ObjectName);
    descriptor: (Ljavax/management/MBeanServer;Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // javax.management.StandardMBean this
        start local 1 // javax.management.MBeanServer server
        start local 2 // javax.management.ObjectName name
         0: .line 1072
            aload 0 /* this */
            getfield javax.management.StandardMBean.mbean:Lcom/sun/jmx/mbeanserver/MBeanSupport;
            aload 1 /* server */
            aload 2 /* name */
            invokevirtual com.sun.jmx.mbeanserver.MBeanSupport.register:(Ljavax/management/MBeanServer;Ljavax/management/ObjectName;)V
         1: .line 1073
            aload 2 /* name */
            areturn
        end local 2 // javax.management.ObjectName name
        end local 1 // javax.management.MBeanServer server
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ljavax/management/StandardMBean;
            0    2     1  server  Ljavax/management/MBeanServer;
            0    2     2    name  Ljavax/management/ObjectName;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
        Name  Flags
      server  
      name    

  public void postRegister(java.lang.Boolean);
    descriptor: (Ljava/lang/Boolean;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // javax.management.StandardMBean this
        start local 1 // java.lang.Boolean registrationDone
         0: .line 1096
            aload 1 /* registrationDone */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifne 2
         1: .line 1097
            aload 0 /* this */
            getfield javax.management.StandardMBean.mbean:Lcom/sun/jmx/mbeanserver/MBeanSupport;
            invokevirtual com.sun.jmx.mbeanserver.MBeanSupport.unregister:()V
         2: .line 1098
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Boolean registrationDone
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0              this  Ljavax/management/StandardMBean;
            0    3     1  registrationDone  Ljava/lang/Boolean;
    MethodParameters:
                  Name  Flags
      registrationDone  

  public void preDeregister();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // javax.management.StandardMBean this
         0: .line 1116
            return
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/StandardMBean;
    Exceptions:
      throws java.lang.Exception

  public void postDeregister();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.StandardMBean this
         0: .line 1134
            aload 0 /* this */
            getfield javax.management.StandardMBean.mbean:Lcom/sun/jmx/mbeanserver/MBeanSupport;
            invokevirtual com.sun.jmx.mbeanserver.MBeanSupport.unregister:()V
         1: .line 1135
            return
        end local 0 // javax.management.StandardMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/management/StandardMBean;

  static boolean immutableInfo(java.lang.Class<? extends javax.management.StandardMBean>);
    descriptor: (Ljava/lang/Class;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // java.lang.Class subclass
         0: .line 1158
            aload 0 /* subclass */
            ldc Ljavax/management/StandardMBean;
            if_acmpeq 2
         1: .line 1159
            aload 0 /* subclass */
            ldc Ljavax/management/StandardEmitterMBean;
            if_acmpne 3
         2: .line 1160
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         3: .line 1161
      StackMap locals:
      StackMap stack:
            getstatic javax.management.StandardMBean.mbeanInfoSafeMap:Ljava/util/Map;
            dup
            astore 1
            monitorenter
         4: .line 1162
            getstatic javax.management.StandardMBean.mbeanInfoSafeMap:Ljava/util/Map;
            aload 0 /* subclass */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            astore 2 /* safe */
        start local 2 // java.lang.Boolean safe
         5: .line 1163
            aload 2 /* safe */
            ifnonnull 13
         6: .line 1166
            new javax.management.StandardMBean$MBeanInfoSafeAction
            dup
            aload 0 /* subclass */
            invokespecial javax.management.StandardMBean$MBeanInfoSafeAction.<init>:(Ljava/lang/Class;)V
         7: .line 1165
            astore 3 /* action */
        start local 3 // javax.management.StandardMBean$MBeanInfoSafeAction action
         8: .line 1167
            aload 3 /* action */
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            astore 2 /* safe */
        end local 3 // javax.management.StandardMBean$MBeanInfoSafeAction action
         9: .line 1168
            goto 12
      StackMap locals: java.lang.Class java.util.Map java.lang.Boolean
      StackMap stack: java.lang.Exception
        10: pop
        11: .line 1170
            iconst_0
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            astore 2 /* safe */
        12: .line 1172
      StackMap locals:
      StackMap stack:
            getstatic javax.management.StandardMBean.mbeanInfoSafeMap:Ljava/util/Map;
            aload 0 /* subclass */
            aload 2 /* safe */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 1174
      StackMap locals:
      StackMap stack:
            aload 2 /* safe */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            aload 1
            monitorexit
        14: ireturn
        end local 2 // java.lang.Boolean safe
        15: .line 1161
      StackMap locals: java.lang.Class java.util.Map
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
        16: athrow
        end local 0 // java.lang.Class subclass
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   17     0  subclass  Ljava/lang/Class<+Ljavax/management/StandardMBean;>;
            5   15     2      safe  Ljava/lang/Boolean;
            8    9     3    action  Ljavax/management/StandardMBean$MBeanInfoSafeAction;
      Exception table:
        from    to  target  type
           6     9      10  Class java.lang.Exception
           4    14      15  any
          15    16      15  any
    Signature: (Ljava/lang/Class<+Ljavax/management/StandardMBean;>;)Z
    MethodParameters:
          Name  Flags
      subclass  

  static boolean overrides(java.lang.Class<?>, java.lang.Class<?>, java.lang.String, java.lang.Class<?>[]);
    descriptor: (Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Z
    flags: (0x0088) ACC_STATIC, ACC_VARARGS
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // java.lang.Class subclass
        start local 1 // java.lang.Class superclass
        start local 2 // java.lang.String name
        start local 3 // java.lang.Class[] params
         0: .line 1180
            aload 0 /* subclass */
            astore 4 /* c */
        start local 4 // java.lang.Class c
         1: goto 6
         2: .line 1182
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 4 /* c */
            aload 2 /* name */
            aload 3 /* params */
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            pop
         3: .line 1183
            iconst_1
            ireturn
         4: .line 1184
      StackMap locals:
      StackMap stack: java.lang.NoSuchMethodException
            pop
         5: .line 1180
            aload 4 /* c */
            invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
            astore 4 /* c */
      StackMap locals:
      StackMap stack:
         6: aload 4 /* c */
            aload 1 /* superclass */
            if_acmpne 2
        end local 4 // java.lang.Class c
         7: .line 1188
            iconst_0
            ireturn
        end local 3 // java.lang.Class[] params
        end local 2 // java.lang.String name
        end local 1 // java.lang.Class superclass
        end local 0 // java.lang.Class subclass
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0    subclass  Ljava/lang/Class<*>;
            0    8     1  superclass  Ljava/lang/Class<*>;
            0    8     2        name  Ljava/lang/String;
            0    8     3      params  [Ljava/lang/Class;
            1    7     4           c  Ljava/lang/Class<*>;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchMethodException
    Signature: (Ljava/lang/Class<*>;Ljava/lang/Class<*>;Ljava/lang/String;[Ljava/lang/Class<*>;)Z
    MethodParameters:
            Name  Flags
      subclass    
      superclass  
      name        
      params      
}
SourceFile: "StandardMBean.java"
NestMembers:
  javax.management.StandardMBean$MBeanInfoSafeAction
InnerClasses:
  public abstract Logger = java.lang.System$Logger of java.lang.System
  public final Level = java.lang.System$Logger$Level of java.lang.System$Logger
  private MBeanInfoSafeAction = javax.management.StandardMBean$MBeanInfoSafeAction of javax.management.StandardMBean