public class org.apache.tomcat.util.Diagnostics
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.tomcat.util.Diagnostics
  super_class: java.lang.Object
{
  private static final java.lang.String PACKAGE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "org.apache.tomcat.util"

  private static final org.apache.tomcat.util.res.StringManager sm;
    descriptor: Lorg/apache/tomcat/util/res/StringManager;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.String INDENT1;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "  "

  private static final java.lang.String INDENT2;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "\t"

  private static final java.lang.String INDENT3;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "   "

  private static final java.lang.String CRLF;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "\r\n"

  private static final java.lang.String vminfoSystemProperty;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "java.vm.info"

  private static final org.apache.juli.logging.Log log;
    descriptor: Lorg/apache/juli/logging/Log;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.text.SimpleDateFormat timeformat;
    descriptor: Ljava/text/SimpleDateFormat;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.management.ClassLoadingMXBean classLoadingMXBean;
    descriptor: Ljava/lang/management/ClassLoadingMXBean;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.management.CompilationMXBean compilationMXBean;
    descriptor: Ljava/lang/management/CompilationMXBean;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.management.OperatingSystemMXBean operatingSystemMXBean;
    descriptor: Ljava/lang/management/OperatingSystemMXBean;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.management.RuntimeMXBean runtimeMXBean;
    descriptor: Ljava/lang/management/RuntimeMXBean;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.management.ThreadMXBean threadMXBean;
    descriptor: Ljava/lang/management/ThreadMXBean;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.management.PlatformLoggingMXBean loggingMXBean;
    descriptor: Ljava/lang/management/PlatformLoggingMXBean;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.management.MemoryMXBean memoryMXBean;
    descriptor: Ljava/lang/management/MemoryMXBean;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 69
            ldc "org.apache.tomcat.util"
            invokestatic org.apache.tomcat.util.res.StringManager.getManager:(Ljava/lang/String;)Lorg/apache/tomcat/util/res/StringManager;
            putstatic org.apache.tomcat.util.Diagnostics.sm:Lorg/apache/tomcat/util/res/StringManager;
         1: .line 77
            ldc Lorg/apache/tomcat/util/Diagnostics;
            invokestatic org.apache.juli.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/juli/logging/Log;
            putstatic org.apache.tomcat.util.Diagnostics.log:Lorg/apache/juli/logging/Log;
         2: .line 80
            new java.text.SimpleDateFormat
            dup
            ldc "yyyy-MM-dd HH:mm:ss.SSS"
            invokespecial java.text.SimpleDateFormat.<init>:(Ljava/lang/String;)V
         3: .line 79
            putstatic org.apache.tomcat.util.Diagnostics.timeformat:Ljava/text/SimpleDateFormat;
         4: .line 84
            invokestatic java.lang.management.ManagementFactory.getClassLoadingMXBean:()Ljava/lang/management/ClassLoadingMXBean;
         5: .line 83
            putstatic org.apache.tomcat.util.Diagnostics.classLoadingMXBean:Ljava/lang/management/ClassLoadingMXBean;
         6: .line 86
            invokestatic java.lang.management.ManagementFactory.getCompilationMXBean:()Ljava/lang/management/CompilationMXBean;
         7: .line 85
            putstatic org.apache.tomcat.util.Diagnostics.compilationMXBean:Ljava/lang/management/CompilationMXBean;
         8: .line 88
            invokestatic java.lang.management.ManagementFactory.getOperatingSystemMXBean:()Ljava/lang/management/OperatingSystemMXBean;
         9: .line 87
            putstatic org.apache.tomcat.util.Diagnostics.operatingSystemMXBean:Ljava/lang/management/OperatingSystemMXBean;
        10: .line 90
            invokestatic java.lang.management.ManagementFactory.getRuntimeMXBean:()Ljava/lang/management/RuntimeMXBean;
        11: .line 89
            putstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
        12: .line 92
            invokestatic java.lang.management.ManagementFactory.getThreadMXBean:()Ljava/lang/management/ThreadMXBean;
        13: .line 91
            putstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
        14: .line 98
            ldc Ljava/lang/management/PlatformLoggingMXBean;
            invokestatic java.lang.management.ManagementFactory.getPlatformMXBean:(Ljava/lang/Class;)Ljava/lang/management/PlatformManagedObject;
            checkcast java.lang.management.PlatformLoggingMXBean
        15: .line 97
            putstatic org.apache.tomcat.util.Diagnostics.loggingMXBean:Ljava/lang/management/PlatformLoggingMXBean;
        16: .line 100
            invokestatic java.lang.management.ManagementFactory.getMemoryMXBean:()Ljava/lang/management/MemoryMXBean;
        17: .line 99
            putstatic org.apache.tomcat.util.Diagnostics.memoryMXBean:Ljava/lang/management/MemoryMXBean;
        18: .line 102
            invokestatic java.lang.management.ManagementFactory.getGarbageCollectorMXBeans:()Ljava/util/List;
        19: .line 101
            putstatic org.apache.tomcat.util.Diagnostics.garbageCollectorMXBeans:Ljava/util/List;
        20: .line 104
            invokestatic java.lang.management.ManagementFactory.getMemoryManagerMXBeans:()Ljava/util/List;
        21: .line 103
            putstatic org.apache.tomcat.util.Diagnostics.memoryManagerMXBeans:Ljava/util/List;
        22: .line 106
            invokestatic java.lang.management.ManagementFactory.getMemoryPoolMXBeans:()Ljava/util/List;
        23: .line 105
            putstatic org.apache.tomcat.util.Diagnostics.memoryPoolMXBeans:Ljava/util/List;
        24: .line 106
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.tomcat.util.Diagnostics this
         0: .line 66
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.apache.tomcat.util.Diagnostics this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/tomcat/util/Diagnostics;

  public static boolean isThreadContentionMonitoringEnabled();
    descriptor: ()Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 114
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.isThreadContentionMonitoringEnabled:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static void setThreadContentionMonitoringEnabled(boolean);
    descriptor: (Z)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // boolean enable
         0: .line 123
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            iload 0 /* enable */
            invokeinterface java.lang.management.ThreadMXBean.setThreadContentionMonitoringEnabled:(Z)V
         1: .line 124
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.isThreadContentionMonitoringEnabled:()Z
            istore 1 /* checkValue */
        start local 1 // boolean checkValue
         2: .line 125
            iload 0 /* enable */
            iload 1 /* checkValue */
            if_icmpeq 6
         3: .line 126
            getstatic org.apache.tomcat.util.Diagnostics.log:Lorg/apache/juli/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Could not set threadContentionMonitoringEnabled to "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         4: .line 127
            iload 0 /* enable */
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc ", got "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 1 /* checkValue */
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc " instead"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 126
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;)V
         6: .line 129
      StackMap locals: int
      StackMap stack:
            return
        end local 1 // boolean checkValue
        end local 0 // boolean enable
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0      enable  Z
            2    7     1  checkValue  Z
    MethodParameters:
        Name  Flags
      enable  

  public static boolean isThreadCpuTimeEnabled();
    descriptor: ()Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 137
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.isThreadCpuTimeEnabled:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static void setThreadCpuTimeEnabled(boolean);
    descriptor: (Z)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // boolean enable
         0: .line 146
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            iload 0 /* enable */
            invokeinterface java.lang.management.ThreadMXBean.setThreadCpuTimeEnabled:(Z)V
         1: .line 147
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.isThreadCpuTimeEnabled:()Z
            istore 1 /* checkValue */
        start local 1 // boolean checkValue
         2: .line 148
            iload 0 /* enable */
            iload 1 /* checkValue */
            if_icmpeq 6
         3: .line 149
            getstatic org.apache.tomcat.util.Diagnostics.log:Lorg/apache/juli/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Could not set threadCpuTimeEnabled to "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0 /* enable */
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
         4: .line 150
            ldc ", got "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 1 /* checkValue */
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc " instead"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 149
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;)V
         6: .line 152
      StackMap locals: int
      StackMap stack:
            return
        end local 1 // boolean checkValue
        end local 0 // boolean enable
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0      enable  Z
            2    7     1  checkValue  Z
    MethodParameters:
        Name  Flags
      enable  

  public static void resetPeakThreadCount();
    descriptor: ()V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 158
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.resetPeakThreadCount:()V
         1: .line 159
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static void setVerboseClassLoading(boolean);
    descriptor: (Z)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // boolean verbose
         0: .line 167
            getstatic org.apache.tomcat.util.Diagnostics.classLoadingMXBean:Ljava/lang/management/ClassLoadingMXBean;
            iload 0 /* verbose */
            invokeinterface java.lang.management.ClassLoadingMXBean.setVerbose:(Z)V
         1: .line 168
            getstatic org.apache.tomcat.util.Diagnostics.classLoadingMXBean:Ljava/lang/management/ClassLoadingMXBean;
            invokeinterface java.lang.management.ClassLoadingMXBean.isVerbose:()Z
            istore 1 /* checkValue */
        start local 1 // boolean checkValue
         2: .line 169
            iload 0 /* verbose */
            iload 1 /* checkValue */
            if_icmpeq 6
         3: .line 170
            getstatic org.apache.tomcat.util.Diagnostics.log:Lorg/apache/juli/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Could not set verbose class loading to "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0 /* verbose */
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
         4: .line 171
            ldc ", got "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 1 /* checkValue */
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc " instead"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 170
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;)V
         6: .line 173
      StackMap locals: int
      StackMap stack:
            return
        end local 1 // boolean checkValue
        end local 0 // boolean verbose
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0     verbose  Z
            2    7     1  checkValue  Z
    MethodParameters:
         Name  Flags
      verbose  

  public static void setLoggerLevel(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.lang.String loggerName
        start local 1 // java.lang.String levelName
         0: .line 182
            getstatic org.apache.tomcat.util.Diagnostics.loggingMXBean:Ljava/lang/management/PlatformLoggingMXBean;
            aload 0 /* loggerName */
            aload 1 /* levelName */
            invokeinterface java.lang.management.PlatformLoggingMXBean.setLoggerLevel:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 183
            getstatic org.apache.tomcat.util.Diagnostics.loggingMXBean:Ljava/lang/management/PlatformLoggingMXBean;
            aload 0 /* loggerName */
            invokeinterface java.lang.management.PlatformLoggingMXBean.getLoggerLevel:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* checkValue */
        start local 2 // java.lang.String checkValue
         2: .line 184
            aload 2 /* checkValue */
            aload 1 /* levelName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 7
         3: .line 185
            getstatic org.apache.tomcat.util.Diagnostics.log:Lorg/apache/juli/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Could not set logger level for logger '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         4: .line 186
            aload 0 /* loggerName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' to '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* levelName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 187
            ldc "', got '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* checkValue */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' instead"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         6: .line 185
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;)V
         7: .line 189
      StackMap locals: java.lang.String
      StackMap stack:
            return
        end local 2 // java.lang.String checkValue
        end local 1 // java.lang.String levelName
        end local 0 // java.lang.String loggerName
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0  loggerName  Ljava/lang/String;
            0    8     1   levelName  Ljava/lang/String;
            2    8     2  checkValue  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      loggerName  
      levelName   

  public static void setVerboseGarbageCollection(boolean);
    descriptor: (Z)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // boolean verbose
         0: .line 197
            getstatic org.apache.tomcat.util.Diagnostics.memoryMXBean:Ljava/lang/management/MemoryMXBean;
            iload 0 /* verbose */
            invokeinterface java.lang.management.MemoryMXBean.setVerbose:(Z)V
         1: .line 198
            getstatic org.apache.tomcat.util.Diagnostics.memoryMXBean:Ljava/lang/management/MemoryMXBean;
            invokeinterface java.lang.management.MemoryMXBean.isVerbose:()Z
            istore 1 /* checkValue */
        start local 1 // boolean checkValue
         2: .line 199
            iload 0 /* verbose */
            iload 1 /* checkValue */
            if_icmpeq 6
         3: .line 200
            getstatic org.apache.tomcat.util.Diagnostics.log:Lorg/apache/juli/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Could not set verbose garbage collection logging to "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0 /* verbose */
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
         4: .line 201
            ldc ", got "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 1 /* checkValue */
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc " instead"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 200
            invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;)V
         6: .line 203
      StackMap locals: int
      StackMap stack:
            return
        end local 1 // boolean checkValue
        end local 0 // boolean verbose
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0     verbose  Z
            2    7     1  checkValue  Z
    MethodParameters:
         Name  Flags
      verbose  

  public static void gc();
    descriptor: ()V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 209
            getstatic org.apache.tomcat.util.Diagnostics.memoryMXBean:Ljava/lang/management/MemoryMXBean;
            invokeinterface java.lang.management.MemoryMXBean.gc:()V
         1: .line 210
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static void resetPeakUsage(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.lang.String name
         0: .line 218
            getstatic org.apache.tomcat.util.Diagnostics.memoryPoolMXBeans:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 4
      StackMap locals: java.lang.String top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.management.MemoryPoolMXBean
            astore 1 /* mbean */
        start local 1 // java.lang.management.MemoryPoolMXBean mbean
         2: .line 219
            aload 0 /* name */
            ldc "all"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 3
            aload 0 /* name */
            aload 1 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 220
      StackMap locals: java.lang.String java.lang.management.MemoryPoolMXBean java.util.Iterator
      StackMap stack:
            aload 1 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.resetPeakUsage:()V
        end local 1 // java.lang.management.MemoryPoolMXBean mbean
         4: .line 218
      StackMap locals: java.lang.String top java.util.Iterator
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 223
            return
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   name  Ljava/lang/String;
            2    4     1  mbean  Ljava/lang/management/MemoryPoolMXBean;
    MethodParameters:
      Name  Flags
      name  

  public static boolean setUsageThreshold(java.lang.String, long);
    descriptor: (Ljava/lang/String;J)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // java.lang.String name
        start local 1 // long threshold
         0: .line 233
            getstatic org.apache.tomcat.util.Diagnostics.memoryPoolMXBeans:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 8
      StackMap locals: java.lang.String long top java.util.Iterator
      StackMap stack:
         1: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.management.MemoryPoolMXBean
            astore 3 /* mbean */
        start local 3 // java.lang.management.MemoryPoolMXBean mbean
         2: .line 234
            aload 0 /* name */
            aload 3 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         3: .line 236
            aload 3 /* mbean */
            lload 1 /* threshold */
            invokeinterface java.lang.management.MemoryPoolMXBean.setUsageThreshold:(J)V
         4: .line 237
            iconst_1
            ireturn
         5: .line 238
      StackMap locals: java.lang.String long java.lang.management.MemoryPoolMXBean java.util.Iterator
      StackMap stack: java.lang.IllegalArgumentException
            pop
            goto 7
         6: .line 240
      StackMap locals:
      StackMap stack: java.lang.UnsupportedOperationException
            pop
         7: .line 243
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // java.lang.management.MemoryPoolMXBean mbean
         8: .line 233
      StackMap locals: java.lang.String long top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         9: .line 246
            iconst_0
            ireturn
        end local 1 // long threshold
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       name  Ljava/lang/String;
            0   10     1  threshold  J
            2    8     3      mbean  Ljava/lang/management/MemoryPoolMXBean;
      Exception table:
        from    to  target  type
           3     4       5  Class java.lang.IllegalArgumentException
           3     4       6  Class java.lang.UnsupportedOperationException
    MethodParameters:
           Name  Flags
      name       
      threshold  

  public static boolean setCollectionUsageThreshold(java.lang.String, long);
    descriptor: (Ljava/lang/String;J)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // java.lang.String name
        start local 1 // long threshold
         0: .line 257
            getstatic org.apache.tomcat.util.Diagnostics.memoryPoolMXBeans:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 8
      StackMap locals: java.lang.String long top java.util.Iterator
      StackMap stack:
         1: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.management.MemoryPoolMXBean
            astore 3 /* mbean */
        start local 3 // java.lang.management.MemoryPoolMXBean mbean
         2: .line 258
            aload 0 /* name */
            aload 3 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         3: .line 260
            aload 3 /* mbean */
            lload 1 /* threshold */
            invokeinterface java.lang.management.MemoryPoolMXBean.setCollectionUsageThreshold:(J)V
         4: .line 261
            iconst_1
            ireturn
         5: .line 262
      StackMap locals: java.lang.String long java.lang.management.MemoryPoolMXBean java.util.Iterator
      StackMap stack: java.lang.IllegalArgumentException
            pop
            goto 7
         6: .line 264
      StackMap locals:
      StackMap stack: java.lang.UnsupportedOperationException
            pop
         7: .line 267
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // java.lang.management.MemoryPoolMXBean mbean
         8: .line 257
      StackMap locals: java.lang.String long top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         9: .line 270
            iconst_0
            ireturn
        end local 1 // long threshold
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       name  Ljava/lang/String;
            0   10     1  threshold  J
            2    8     3      mbean  Ljava/lang/management/MemoryPoolMXBean;
      Exception table:
        from    to  target  type
           3     4       5  Class java.lang.IllegalArgumentException
           3     4       6  Class java.lang.UnsupportedOperationException
    MethodParameters:
           Name  Flags
      name       
      threshold  

  private static java.lang.String getThreadDumpHeader(java.lang.management.ThreadInfo);
    descriptor: (Ljava/lang/management/ThreadInfo;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.lang.management.ThreadInfo ti
         0: .line 280
            new java.lang.StringBuilder
            dup
            new java.lang.StringBuilder
            dup
            ldc "\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getThreadName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 281
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc " Id="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getThreadId:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         2: .line 282
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc " cpu="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getThreadId:()J
            invokeinterface java.lang.management.ThreadMXBean.getThreadCpuTime:(J)J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
         3: .line 283
            ldc " ns"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 282
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 284
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc " usr="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getThreadId:()J
            invokeinterface java.lang.management.ThreadMXBean.getThreadUserTime:(J)J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
         6: .line 285
            ldc " ns"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 284
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         8: .line 286
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc " blocked "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getBlockedCount:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " for "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         9: .line 287
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getBlockedTime:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " ms"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        10: .line 286
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 288
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc " waited "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getWaitedCount:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " for "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        12: .line 289
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getWaitedTime:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " ms"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        13: .line 288
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 291
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.isSuspended:()Z
            ifeq 16
        15: .line 292
            aload 1 /* sb */
            ldc " (suspended)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        16: .line 294
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.isInNative:()Z
            ifeq 18
        17: .line 295
            aload 1 /* sb */
            ldc " (running in native)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        18: .line 297
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        19: .line 298
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "   java.lang.Thread.State: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getThreadState:()Ljava/lang/Thread$State;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        20: .line 299
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        21: .line 300
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder sb
        end local 0 // java.lang.management.ThreadInfo ti
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   22     0    ti  Ljava/lang/management/ThreadInfo;
            1   22     1    sb  Ljava/lang/StringBuilder;
    MethodParameters:
      Name  Flags
      ti    

  private static java.lang.String getThreadDump(java.lang.management.ThreadInfo);
    descriptor: (Ljava/lang/management/ThreadInfo;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=10, args_size=1
        start local 0 // java.lang.management.ThreadInfo ti
         0: .line 310
            new java.lang.StringBuilder
            dup
            aload 0 /* ti */
            invokestatic org.apache.tomcat.util.Diagnostics.getThreadDumpHeader:(Ljava/lang/management/ThreadInfo;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 311
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getLockedSynchronizers:()[Ljava/lang/management/LockInfo;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 7
      StackMap locals: java.lang.management.ThreadInfo java.lang.StringBuilder top int int java.lang.management.LockInfo[]
      StackMap stack:
         2: aload 5
            iload 3
            aaload
            astore 2 /* li */
        start local 2 // java.lang.management.LockInfo li
         3: .line 312
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "\tlocks "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         4: .line 313
            aload 2 /* li */
            invokevirtual java.lang.management.LockInfo.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 312
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 2 // java.lang.management.LockInfo li
         6: .line 311
            iinc 3 1
      StackMap locals:
      StackMap stack:
         7: iload 3
            iload 4
            if_icmplt 2
         8: .line 315
            iconst_1
            istore 2 /* start */
        start local 2 // boolean start
         9: .line 316
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getStackTrace:()[Ljava/lang/StackTraceElement;
            astore 3 /* stes */
        start local 3 // java.lang.StackTraceElement[] stes
        10: .line 317
            aload 3 /* stes */
            arraylength
            anewarray java.lang.Object
            astore 4 /* monitorDepths */
        start local 4 // java.lang.Object[] monitorDepths
        11: .line 318
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getLockedMonitors:()[Ljava/lang/management/MonitorInfo;
            astore 5 /* mis */
        start local 5 // java.lang.management.MonitorInfo[] mis
        12: .line 319
            aload 5 /* mis */
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 16
      StackMap locals: java.lang.management.ThreadInfo java.lang.StringBuilder int java.lang.StackTraceElement[] java.lang.Object[] java.lang.management.MonitorInfo[] top int int java.lang.management.MonitorInfo[]
      StackMap stack:
        13: aload 9
            iload 7
            aaload
            astore 6 /* monitorInfo */
        start local 6 // java.lang.management.MonitorInfo monitorInfo
        14: .line 320
            aload 4 /* monitorDepths */
            aload 6 /* monitorInfo */
            invokevirtual java.lang.management.MonitorInfo.getLockedStackDepth:()I
            aload 6 /* monitorInfo */
            aastore
        end local 6 // java.lang.management.MonitorInfo monitorInfo
        15: .line 319
            iinc 7 1
      StackMap locals:
      StackMap stack:
        16: iload 7
            iload 8
            if_icmplt 13
        17: .line 322
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        18: goto 43
        19: .line 323
      StackMap locals: java.lang.management.ThreadInfo java.lang.StringBuilder int java.lang.StackTraceElement[] java.lang.Object[] java.lang.management.MonitorInfo[] int
      StackMap stack:
            aload 3 /* stes */
            iload 6 /* i */
            aaload
            astore 7 /* ste */
        start local 7 // java.lang.StackTraceElement ste
        20: .line 324
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "\tat "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        21: .line 325
            aload 7 /* ste */
            invokevirtual java.lang.StackTraceElement.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        22: .line 324
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        23: .line 326
            iload 2 /* start */
            ifeq 34
        24: .line 327
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getLockName:()Ljava/lang/String;
            ifnull 33
        25: .line 328
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "\t- waiting on (a "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        26: .line 329
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getLockName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        27: .line 328
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        28: .line 330
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getLockOwnerName:()Ljava/lang/String;
            ifnull 32
        29: .line 331
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc " owned by "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getLockOwnerName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        30: .line 332
            ldc " Id="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getLockOwnerId:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        31: .line 331
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        32: .line 334
      StackMap locals: java.lang.StackTraceElement
      StackMap stack:
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        33: .line 336
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* start */
        34: .line 338
      StackMap locals:
      StackMap stack:
            aload 4 /* monitorDepths */
            iload 6 /* i */
            aaload
            ifnull 42
        35: .line 339
            aload 4 /* monitorDepths */
            iload 6 /* i */
            aaload
            checkcast java.lang.management.MonitorInfo
            astore 8 /* mi */
        start local 8 // java.lang.management.MonitorInfo mi
        36: .line 340
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "\t- locked (a "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        37: .line 341
            aload 8 /* mi */
            invokevirtual java.lang.management.MonitorInfo.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        38: .line 342
            ldc " index "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* mi */
            invokevirtual java.lang.management.MonitorInfo.getLockedStackDepth:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        39: .line 343
            ldc " frame "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* mi */
            invokevirtual java.lang.management.MonitorInfo.getLockedStackFrame:()Ljava/lang/StackTraceElement;
            invokevirtual java.lang.StackTraceElement.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        40: .line 340
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        41: .line 344
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 8 // java.lang.management.MonitorInfo mi
        end local 7 // java.lang.StackTraceElement ste
        42: .line 322
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        43: iload 6 /* i */
            aload 3 /* stes */
            arraylength
            if_icmplt 19
        end local 6 // int i
        44: .line 348
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 5 // java.lang.management.MonitorInfo[] mis
        end local 4 // java.lang.Object[] monitorDepths
        end local 3 // java.lang.StackTraceElement[] stes
        end local 2 // boolean start
        end local 1 // java.lang.StringBuilder sb
        end local 0 // java.lang.management.ThreadInfo ti
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   45     0             ti  Ljava/lang/management/ThreadInfo;
            1   45     1             sb  Ljava/lang/StringBuilder;
            3    6     2             li  Ljava/lang/management/LockInfo;
            9   45     2          start  Z
           10   45     3           stes  [Ljava/lang/StackTraceElement;
           11   45     4  monitorDepths  [Ljava/lang/Object;
           12   45     5            mis  [Ljava/lang/management/MonitorInfo;
           14   15     6    monitorInfo  Ljava/lang/management/MonitorInfo;
           18   44     6              i  I
           20   42     7            ste  Ljava/lang/StackTraceElement;
           36   42     8             mi  Ljava/lang/management/MonitorInfo;
    MethodParameters:
      Name  Flags
      ti    

  private static java.lang.String getThreadDump(java.lang.management.ThreadInfo[]);
    descriptor: ([Ljava/lang/management/ThreadInfo;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=1
        start local 0 // java.lang.management.ThreadInfo[] tinfos
         0: .line 358
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 359
            aload 0 /* tinfos */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 6
      StackMap locals: java.lang.management.ThreadInfo[] java.lang.StringBuilder top int int java.lang.management.ThreadInfo[]
      StackMap stack:
         2: aload 5
            iload 3
            aaload
            astore 2 /* tinfo */
        start local 2 // java.lang.management.ThreadInfo tinfo
         3: .line 360
            aload 1 /* sb */
            aload 2 /* tinfo */
            invokestatic org.apache.tomcat.util.Diagnostics.getThreadDump:(Ljava/lang/management/ThreadInfo;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 361
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 2 // java.lang.management.ThreadInfo tinfo
         5: .line 359
            iinc 3 1
      StackMap locals:
      StackMap stack:
         6: iload 3
            iload 4
            if_icmplt 2
         7: .line 363
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder sb
        end local 0 // java.lang.management.ThreadInfo[] tinfos
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0  tinfos  [Ljava/lang/management/ThreadInfo;
            1    8     1      sb  Ljava/lang/StringBuilder;
            3    5     2   tinfo  Ljava/lang/management/ThreadInfo;
    MethodParameters:
        Name  Flags
      tinfos  

  public static java.lang.String findDeadlock();
    descriptor: ()Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=0
         0: .line 374
            aconst_null
            astore 0 /* tinfos */
        start local 0 // java.lang.management.ThreadInfo[] tinfos
         1: .line 375
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.findDeadlockedThreads:()[J
            astore 1 /* ids */
        start local 1 // long[] ids
         2: .line 376
            aload 1 /* ids */
            ifnull 12
         3: .line 377
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.findDeadlockedThreads:()[J
         4: .line 378
            iconst_1
            iconst_1
         5: .line 377
            invokeinterface java.lang.management.ThreadMXBean.getThreadInfo:([JZZ)[Ljava/lang/management/ThreadInfo;
            astore 0 /* tinfos */
         6: .line 379
            aload 0 /* tinfos */
            ifnull 12
         7: .line 381
            new java.lang.StringBuilder
            dup
            ldc "Deadlock found between the following threads:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         8: .line 380
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         9: .line 382
            aload 2 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        10: .line 383
            aload 2 /* sb */
            aload 0 /* tinfos */
            invokestatic org.apache.tomcat.util.Diagnostics.getThreadDump:([Ljava/lang/management/ThreadInfo;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 384
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder sb
        12: .line 387
      StackMap locals: java.lang.management.ThreadInfo[] long[]
      StackMap stack:
            ldc ""
            areturn
        end local 1 // long[] ids
        end local 0 // java.lang.management.ThreadInfo[] tinfos
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            1   13     0  tinfos  [Ljava/lang/management/ThreadInfo;
            2   13     1     ids  [J
            9   12     2      sb  Ljava/lang/StringBuilder;

  public static java.lang.String getThreadDump();
    descriptor: ()Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 397
            getstatic org.apache.tomcat.util.Diagnostics.sm:Lorg/apache/tomcat/util/res/StringManager;
            invokestatic org.apache.tomcat.util.Diagnostics.getThreadDump:(Lorg/apache/tomcat/util/res/StringManager;)Ljava/lang/String;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.lang.String getThreadDump(java.util.Enumeration<java.util.Locale>);
    descriptor: (Ljava/util/Enumeration;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.Enumeration requestedLocales
         0: .line 410
            ldc "org.apache.tomcat.util"
            aload 0 /* requestedLocales */
            invokestatic org.apache.tomcat.util.res.StringManager.getManager:(Ljava/lang/String;Ljava/util/Enumeration;)Lorg/apache/tomcat/util/res/StringManager;
         1: .line 409
            invokestatic org.apache.tomcat.util.Diagnostics.getThreadDump:(Lorg/apache/tomcat/util/res/StringManager;)Ljava/lang/String;
            areturn
        end local 0 // java.util.Enumeration requestedLocales
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0  requestedLocales  Ljava/util/Enumeration<Ljava/util/Locale;>;
    Signature: (Ljava/util/Enumeration<Ljava/util/Locale;>;)Ljava/lang/String;
    MethodParameters:
                  Name  Flags
      requestedLocales  

  public static java.lang.String getThreadDump(org.apache.tomcat.util.res.StringManager);
    descriptor: (Lorg/apache/tomcat/util/res/StringManager;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // org.apache.tomcat.util.res.StringManager requestedSm
         0: .line 421
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 423
            getstatic org.apache.tomcat.util.Diagnostics.timeformat:Ljava/text/SimpleDateFormat;
            dup
            astore 2
            monitorenter
         2: .line 424
            aload 1 /* sb */
            getstatic org.apache.tomcat.util.Diagnostics.timeformat:Ljava/text/SimpleDateFormat;
            new java.util.Date
            dup
            invokespecial java.util.Date.<init>:()V
            invokevirtual java.text.SimpleDateFormat.format:(Ljava/util/Date;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         3: .line 423
            aload 2
            monitorexit
         4: goto 7
      StackMap locals: org.apache.tomcat.util.res.StringManager java.lang.StringBuilder java.text.SimpleDateFormat
      StackMap stack: java.lang.Throwable
         5: aload 2
            monitorexit
         6: athrow
         7: .line 426
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         8: .line 428
            aload 1 /* sb */
            aload 0 /* requestedSm */
            ldc "diagnostics.threadDumpTitle"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 429
            aload 1 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        10: .line 430
            aload 1 /* sb */
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.getVmName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 431
            aload 1 /* sb */
            ldc " ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 432
            aload 1 /* sb */
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.getVmVersion:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        13: .line 433
            ldc "java.vm.info"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* vminfo */
        start local 2 // java.lang.String vminfo
        14: .line 434
            aload 2 /* vminfo */
            ifnull 16
        15: .line 435
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc " "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* vminfo */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        16: .line 437
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* sb */
            ldc "):\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        17: .line 438
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        18: .line 440
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            iconst_1
            iconst_1
            invokeinterface java.lang.management.ThreadMXBean.dumpAllThreads:(ZZ)[Ljava/lang/management/ThreadInfo;
            astore 3 /* tis */
        start local 3 // java.lang.management.ThreadInfo[] tis
        19: .line 441
            aload 1 /* sb */
            aload 3 /* tis */
            invokestatic org.apache.tomcat.util.Diagnostics.getThreadDump:([Ljava/lang/management/ThreadInfo;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        20: .line 443
            aload 1 /* sb */
            invokestatic org.apache.tomcat.util.Diagnostics.findDeadlock:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        21: .line 444
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.lang.management.ThreadInfo[] tis
        end local 2 // java.lang.String vminfo
        end local 1 // java.lang.StringBuilder sb
        end local 0 // org.apache.tomcat.util.res.StringManager requestedSm
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   22     0  requestedSm  Lorg/apache/tomcat/util/res/StringManager;
            1   22     1           sb  Ljava/lang/StringBuilder;
           14   22     2       vminfo  Ljava/lang/String;
           19   22     3          tis  [Ljava/lang/management/ThreadInfo;
      Exception table:
        from    to  target  type
           2     4       5  any
           5     6       5  any
    MethodParameters:
             Name  Flags
      requestedSm  

  private static java.lang.String formatMemoryUsage(java.lang.String, java.lang.management.MemoryUsage);
    descriptor: (Ljava/lang/String;Ljava/lang/management/MemoryUsage;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.lang.String name
        start local 1 // java.lang.management.MemoryUsage usage
         0: .line 454
            aload 1 /* usage */
            ifnull 7
         1: .line 455
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         2: .line 456
            aload 2 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " init: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* usage */
            invokevirtual java.lang.management.MemoryUsage.getInit:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         3: .line 457
            aload 2 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " used: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* usage */
            invokevirtual java.lang.management.MemoryUsage.getUsed:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 458
            aload 2 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " committed: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* usage */
            invokevirtual java.lang.management.MemoryUsage.getCommitted:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 459
            aload 2 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " max: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* usage */
            invokevirtual java.lang.management.MemoryUsage.getMax:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         6: .line 460
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder sb
         7: .line 462
      StackMap locals:
      StackMap stack:
            ldc ""
            areturn
        end local 1 // java.lang.management.MemoryUsage usage
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   name  Ljava/lang/String;
            0    8     1  usage  Ljava/lang/management/MemoryUsage;
            2    7     2     sb  Ljava/lang/StringBuilder;
    MethodParameters:
       Name  Flags
      name   
      usage  

  public static java.lang.String getVMInfo();
    descriptor: ()Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 472
            getstatic org.apache.tomcat.util.Diagnostics.sm:Lorg/apache/tomcat/util/res/StringManager;
            invokestatic org.apache.tomcat.util.Diagnostics.getVMInfo:(Lorg/apache/tomcat/util/res/StringManager;)Ljava/lang/String;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.lang.String getVMInfo(java.util.Enumeration<java.util.Locale>);
    descriptor: (Ljava/util/Enumeration;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.Enumeration requestedLocales
         0: .line 484
            ldc "org.apache.tomcat.util"
            aload 0 /* requestedLocales */
            invokestatic org.apache.tomcat.util.res.StringManager.getManager:(Ljava/lang/String;Ljava/util/Enumeration;)Lorg/apache/tomcat/util/res/StringManager;
            invokestatic org.apache.tomcat.util.Diagnostics.getVMInfo:(Lorg/apache/tomcat/util/res/StringManager;)Ljava/lang/String;
            areturn
        end local 0 // java.util.Enumeration requestedLocales
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0  requestedLocales  Ljava/util/Enumeration<Ljava/util/Locale;>;
    Signature: (Ljava/util/Enumeration<Ljava/util/Locale;>;)Ljava/lang/String;
    MethodParameters:
                  Name  Flags
      requestedLocales  

  public static java.lang.String getVMInfo(org.apache.tomcat.util.res.StringManager);
    descriptor: (Lorg/apache/tomcat/util/res/StringManager;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=9, args_size=1
        start local 0 // org.apache.tomcat.util.res.StringManager requestedSm
         0: .line 495
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 497
            getstatic org.apache.tomcat.util.Diagnostics.timeformat:Ljava/text/SimpleDateFormat;
            dup
            astore 2
            monitorenter
         2: .line 498
            aload 1 /* sb */
            getstatic org.apache.tomcat.util.Diagnostics.timeformat:Ljava/text/SimpleDateFormat;
            new java.util.Date
            dup
            invokespecial java.util.Date.<init>:()V
            invokevirtual java.text.SimpleDateFormat.format:(Ljava/util/Date;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         3: .line 497
            aload 2
            monitorexit
         4: goto 7
      StackMap locals: org.apache.tomcat.util.res.StringManager java.lang.StringBuilder java.text.SimpleDateFormat
      StackMap stack: java.lang.Throwable
         5: aload 2
            monitorexit
         6: athrow
         7: .line 500
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         8: .line 502
            aload 1 /* sb */
            aload 0 /* requestedSm */
            ldc "diagnostics.vmInfoRuntime"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 503
            aload 1 /* sb */
            ldc ":\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        10: .line 504
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  vmName: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.getVmName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 505
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  vmVersion: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.getVmVersion:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 506
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  vmVendor: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.getVmVendor:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        13: .line 507
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  specName: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.getSpecName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 508
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  specVersion: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.getSpecVersion:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 509
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  specVendor: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.getSpecVendor:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        16: .line 510
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  managementSpecVersion: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        17: .line 511
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.getManagementSpecVersion:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        18: .line 510
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        19: .line 512
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        20: .line 513
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  startTime: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.getStartTime:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        21: .line 514
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  uptime: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.getUptime:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        22: .line 515
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isBootClassPathSupported: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        23: .line 516
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.isBootClassPathSupported:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        24: .line 515
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        25: .line 517
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        26: .line 519
            aload 1 /* sb */
            aload 0 /* requestedSm */
            ldc "diagnostics.vmInfoOs"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        27: .line 520
            aload 1 /* sb */
            ldc ":\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        28: .line 521
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.operatingSystemMXBean:Ljava/lang/management/OperatingSystemMXBean;
            invokeinterface java.lang.management.OperatingSystemMXBean.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        29: .line 522
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  version: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.operatingSystemMXBean:Ljava/lang/management/OperatingSystemMXBean;
            invokeinterface java.lang.management.OperatingSystemMXBean.getVersion:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        30: .line 523
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  architecture: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.operatingSystemMXBean:Ljava/lang/management/OperatingSystemMXBean;
            invokeinterface java.lang.management.OperatingSystemMXBean.getArch:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        31: .line 524
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  availableProcessors: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        32: .line 525
            getstatic org.apache.tomcat.util.Diagnostics.operatingSystemMXBean:Ljava/lang/management/OperatingSystemMXBean;
            invokeinterface java.lang.management.OperatingSystemMXBean.getAvailableProcessors:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        33: .line 524
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        34: .line 526
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  systemLoadAverage: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        35: .line 527
            getstatic org.apache.tomcat.util.Diagnostics.operatingSystemMXBean:Ljava/lang/management/OperatingSystemMXBean;
            invokeinterface java.lang.management.OperatingSystemMXBean.getSystemLoadAverage:()D
            invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        36: .line 526
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        37: .line 528
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        38: .line 530
            aload 1 /* sb */
            aload 0 /* requestedSm */
            ldc "diagnostics.vmInfoThreadMxBean"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        39: .line 531
            aload 1 /* sb */
            ldc ":\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        40: .line 532
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isCurrentThreadCpuTimeSupported: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        41: .line 533
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.isCurrentThreadCpuTimeSupported:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        42: .line 532
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        43: .line 534
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isThreadCpuTimeSupported: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        44: .line 535
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.isThreadCpuTimeSupported:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        45: .line 534
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        46: .line 536
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isThreadCpuTimeEnabled: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        47: .line 537
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.isThreadCpuTimeEnabled:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        48: .line 536
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        49: .line 538
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isObjectMonitorUsageSupported: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        50: .line 539
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.isObjectMonitorUsageSupported:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        51: .line 538
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        52: .line 540
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isSynchronizerUsageSupported: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        53: .line 541
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.isSynchronizerUsageSupported:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        54: .line 540
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        55: .line 542
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isThreadContentionMonitoringSupported: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        56: .line 543
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.isThreadContentionMonitoringSupported:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        57: .line 542
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        58: .line 544
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isThreadContentionMonitoringEnabled: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        59: .line 545
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.isThreadContentionMonitoringEnabled:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        60: .line 544
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        61: .line 546
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        62: .line 548
            aload 1 /* sb */
            aload 0 /* requestedSm */
            ldc "diagnostics.vmInfoThreadCounts"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        63: .line 549
            aload 1 /* sb */
            ldc ":\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        64: .line 550
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  daemon: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.getDaemonThreadCount:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        65: .line 551
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  total: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.getThreadCount:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        66: .line 552
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  peak: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.getPeakThreadCount:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        67: .line 553
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  totalStarted: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        68: .line 554
            getstatic org.apache.tomcat.util.Diagnostics.threadMXBean:Ljava/lang/management/ThreadMXBean;
            invokeinterface java.lang.management.ThreadMXBean.getTotalStartedThreadCount:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        69: .line 553
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        70: .line 555
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        71: .line 557
            aload 1 /* sb */
            aload 0 /* requestedSm */
            ldc "diagnostics.vmInfoStartup"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        72: .line 558
            aload 1 /* sb */
            ldc ":\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        73: .line 559
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.getInputArguments:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 76
      StackMap locals: org.apache.tomcat.util.res.StringManager java.lang.StringBuilder top java.util.Iterator
      StackMap stack:
        74: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* arg */
        start local 2 // java.lang.String arg
        75: .line 560
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* arg */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 2 // java.lang.String arg
        76: .line 559
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 74
        77: .line 562
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        78: .line 564
            aload 1 /* sb */
            aload 0 /* requestedSm */
            ldc "diagnostics.vmInfoPath"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        79: .line 565
            aload 1 /* sb */
            ldc ":\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        80: .line 566
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  bootClassPath: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.getBootClassPath:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        81: .line 567
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  classPath: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.getClassPath:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        82: .line 568
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  libraryPath: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.getLibraryPath:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        83: .line 569
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        84: .line 571
            aload 1 /* sb */
            aload 0 /* requestedSm */
            ldc "diagnostics.vmInfoClassLoading"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        85: .line 572
            aload 1 /* sb */
            ldc ":\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        86: .line 573
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  loaded: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        87: .line 574
            getstatic org.apache.tomcat.util.Diagnostics.classLoadingMXBean:Ljava/lang/management/ClassLoadingMXBean;
            invokeinterface java.lang.management.ClassLoadingMXBean.getLoadedClassCount:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        88: .line 573
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        89: .line 575
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  unloaded: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        90: .line 576
            getstatic org.apache.tomcat.util.Diagnostics.classLoadingMXBean:Ljava/lang/management/ClassLoadingMXBean;
            invokeinterface java.lang.management.ClassLoadingMXBean.getUnloadedClassCount:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        91: .line 575
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        92: .line 577
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  totalLoaded: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        93: .line 578
            getstatic org.apache.tomcat.util.Diagnostics.classLoadingMXBean:Ljava/lang/management/ClassLoadingMXBean;
            invokeinterface java.lang.management.ClassLoadingMXBean.getTotalLoadedClassCount:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        94: .line 577
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        95: .line 579
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isVerbose: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        96: .line 580
            getstatic org.apache.tomcat.util.Diagnostics.classLoadingMXBean:Ljava/lang/management/ClassLoadingMXBean;
            invokeinterface java.lang.management.ClassLoadingMXBean.isVerbose:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        97: .line 579
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        98: .line 581
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        99: .line 583
            aload 1 /* sb */
            aload 0 /* requestedSm */
            ldc "diagnostics.vmInfoClassCompilation"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       100: .line 584
            aload 1 /* sb */
            ldc ":\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       101: .line 585
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.compilationMXBean:Ljava/lang/management/CompilationMXBean;
            invokeinterface java.lang.management.CompilationMXBean.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       102: .line 586
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  totalCompilationTime: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
       103: .line 587
            getstatic org.apache.tomcat.util.Diagnostics.compilationMXBean:Ljava/lang/management/CompilationMXBean;
            invokeinterface java.lang.management.CompilationMXBean.getTotalCompilationTime:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       104: .line 586
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       105: .line 588
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isCompilationTimeMonitoringSupported: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
       106: .line 589
            getstatic org.apache.tomcat.util.Diagnostics.compilationMXBean:Ljava/lang/management/CompilationMXBean;
            invokeinterface java.lang.management.CompilationMXBean.isCompilationTimeMonitoringSupported:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       107: .line 588
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       108: .line 590
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       109: .line 592
            getstatic org.apache.tomcat.util.Diagnostics.memoryManagerMXBeans:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 123
      StackMap locals:
      StackMap stack:
       110: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.management.MemoryManagerMXBean
            astore 2 /* mbean */
        start local 2 // java.lang.management.MemoryManagerMXBean mbean
       111: .line 593
            aload 1 /* sb */
            aload 0 /* requestedSm */
            ldc "diagnostics.vmInfoMemoryManagers"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryManagerMXBean.getName:()Ljava/lang/String;
            aastore
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       112: .line 594
            aload 1 /* sb */
            ldc ":\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       113: .line 595
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isValid: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryManagerMXBean.isValid:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       114: .line 596
            aload 1 /* sb */
            ldc "  mbean.getMemoryPoolNames: \r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       115: .line 597
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryManagerMXBean.getMemoryPoolNames:()[Ljava/lang/String;
            astore 4 /* names */
        start local 4 // java.lang.String[] names
       116: .line 598
            aload 4 /* names */
            invokestatic java.util.Arrays.sort:([Ljava/lang/Object;)V
       117: .line 599
            aload 4 /* names */
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 121
      StackMap locals: org.apache.tomcat.util.res.StringManager java.lang.StringBuilder java.lang.management.MemoryManagerMXBean java.util.Iterator java.lang.String[] top int int java.lang.String[]
      StackMap stack:
       118: aload 8
            iload 6
            aaload
            astore 5 /* name */
        start local 5 // java.lang.String name
       119: .line 600
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "\t"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 5 // java.lang.String name
       120: .line 599
            iinc 6 1
      StackMap locals:
      StackMap stack:
       121: iload 6
            iload 7
            if_icmplt 118
       122: .line 602
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 4 // java.lang.String[] names
        end local 2 // java.lang.management.MemoryManagerMXBean mbean
       123: .line 592
      StackMap locals: org.apache.tomcat.util.res.StringManager java.lang.StringBuilder top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 110
       124: .line 605
            getstatic org.apache.tomcat.util.Diagnostics.garbageCollectorMXBeans:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 140
      StackMap locals:
      StackMap stack:
       125: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.management.GarbageCollectorMXBean
            astore 2 /* mbean */
        start local 2 // java.lang.management.GarbageCollectorMXBean mbean
       126: .line 606
            aload 1 /* sb */
            aload 0 /* requestedSm */
            ldc "diagnostics.vmInfoGarbageCollectors"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* mbean */
            invokeinterface java.lang.management.GarbageCollectorMXBean.getName:()Ljava/lang/String;
            aastore
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       127: .line 607
            aload 1 /* sb */
            ldc ":\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       128: .line 608
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isValid: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* mbean */
            invokeinterface java.lang.management.GarbageCollectorMXBean.isValid:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       129: .line 609
            aload 1 /* sb */
            ldc "  mbean.getMemoryPoolNames: \r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       130: .line 610
            aload 2 /* mbean */
            invokeinterface java.lang.management.GarbageCollectorMXBean.getMemoryPoolNames:()[Ljava/lang/String;
            astore 4 /* names */
        start local 4 // java.lang.String[] names
       131: .line 611
            aload 4 /* names */
            invokestatic java.util.Arrays.sort:([Ljava/lang/Object;)V
       132: .line 612
            aload 4 /* names */
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 136
      StackMap locals: org.apache.tomcat.util.res.StringManager java.lang.StringBuilder java.lang.management.GarbageCollectorMXBean java.util.Iterator java.lang.String[] top int int java.lang.String[]
      StackMap stack:
       133: aload 8
            iload 6
            aaload
            astore 5 /* name */
        start local 5 // java.lang.String name
       134: .line 613
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "\t"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 5 // java.lang.String name
       135: .line 612
            iinc 6 1
      StackMap locals:
      StackMap stack:
       136: iload 6
            iload 7
            if_icmplt 133
       137: .line 615
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  getCollectionCount: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* mbean */
            invokeinterface java.lang.management.GarbageCollectorMXBean.getCollectionCount:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       138: .line 616
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  getCollectionTime: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* mbean */
            invokeinterface java.lang.management.GarbageCollectorMXBean.getCollectionTime:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       139: .line 617
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 4 // java.lang.String[] names
        end local 2 // java.lang.management.GarbageCollectorMXBean mbean
       140: .line 605
      StackMap locals: org.apache.tomcat.util.res.StringManager java.lang.StringBuilder top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 125
       141: .line 620
            aload 1 /* sb */
            aload 0 /* requestedSm */
            ldc "diagnostics.vmInfoMemory"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       142: .line 621
            aload 1 /* sb */
            ldc ":\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       143: .line 622
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isVerbose: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.memoryMXBean:Ljava/lang/management/MemoryMXBean;
            invokeinterface java.lang.management.MemoryMXBean.isVerbose:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       144: .line 623
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  getObjectPendingFinalizationCount: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.apache.tomcat.util.Diagnostics.memoryMXBean:Ljava/lang/management/MemoryMXBean;
            invokeinterface java.lang.management.MemoryMXBean.getObjectPendingFinalizationCount:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       145: .line 624
            aload 1 /* sb */
            ldc "heap"
            getstatic org.apache.tomcat.util.Diagnostics.memoryMXBean:Ljava/lang/management/MemoryMXBean;
            invokeinterface java.lang.management.MemoryMXBean.getHeapMemoryUsage:()Ljava/lang/management/MemoryUsage;
            invokestatic org.apache.tomcat.util.Diagnostics.formatMemoryUsage:(Ljava/lang/String;Ljava/lang/management/MemoryUsage;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       146: .line 625
            aload 1 /* sb */
            ldc "non-heap"
            getstatic org.apache.tomcat.util.Diagnostics.memoryMXBean:Ljava/lang/management/MemoryMXBean;
            invokeinterface java.lang.management.MemoryMXBean.getNonHeapMemoryUsage:()Ljava/lang/management/MemoryUsage;
            invokestatic org.apache.tomcat.util.Diagnostics.formatMemoryUsage:(Ljava/lang/String;Ljava/lang/management/MemoryUsage;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       147: .line 626
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       148: .line 628
            getstatic org.apache.tomcat.util.Diagnostics.memoryPoolMXBeans:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 186
      StackMap locals:
      StackMap stack:
       149: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.management.MemoryPoolMXBean
            astore 2 /* mbean */
        start local 2 // java.lang.management.MemoryPoolMXBean mbean
       150: .line 629
            aload 1 /* sb */
            aload 0 /* requestedSm */
            ldc "diagnostics.vmInfoMemoryPools"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.getName:()Ljava/lang/String;
            aastore
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       151: .line 630
            aload 1 /* sb */
            ldc ":\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       152: .line 631
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isValid: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.isValid:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       153: .line 632
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  getType: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.getType:()Ljava/lang/management/MemoryType;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       154: .line 633
            aload 1 /* sb */
            ldc "  mbean.getMemoryManagerNames: \r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       155: .line 634
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.getMemoryManagerNames:()[Ljava/lang/String;
            astore 4 /* names */
        start local 4 // java.lang.String[] names
       156: .line 635
            aload 4 /* names */
            invokestatic java.util.Arrays.sort:([Ljava/lang/Object;)V
       157: .line 636
            aload 4 /* names */
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 161
      StackMap locals: org.apache.tomcat.util.res.StringManager java.lang.StringBuilder java.lang.management.MemoryPoolMXBean java.util.Iterator java.lang.String[] top int int java.lang.String[]
      StackMap stack:
       158: aload 8
            iload 6
            aaload
            astore 5 /* name */
        start local 5 // java.lang.String name
       159: .line 637
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "\t"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 5 // java.lang.String name
       160: .line 636
            iinc 6 1
      StackMap locals:
      StackMap stack:
       161: iload 6
            iload 7
            if_icmplt 158
       162: .line 639
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isUsageThresholdSupported: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.isUsageThresholdSupported:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       163: .line 641
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isUsageThresholdExceeded: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.isUsageThresholdExceeded:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       164: .line 642
            goto 166
      StackMap locals: org.apache.tomcat.util.res.StringManager java.lang.StringBuilder java.lang.management.MemoryPoolMXBean java.util.Iterator java.lang.String[]
      StackMap stack: java.lang.UnsupportedOperationException
       165: pop
       166: .line 645
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isCollectionUsageThresholdSupported: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.isCollectionUsageThresholdSupported:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       167: .line 647
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  isCollectionUsageThresholdExceeded: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.isCollectionUsageThresholdExceeded:()Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       168: .line 648
            goto 170
      StackMap locals:
      StackMap stack: java.lang.UnsupportedOperationException
       169: pop
       170: .line 652
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  getUsageThreshold: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.getUsageThreshold:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       171: .line 653
            goto 173
      StackMap locals:
      StackMap stack: java.lang.UnsupportedOperationException
       172: pop
       173: .line 657
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  getUsageThresholdCount: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.getUsageThresholdCount:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       174: .line 658
            goto 176
      StackMap locals:
      StackMap stack: java.lang.UnsupportedOperationException
       175: pop
       176: .line 662
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  getCollectionUsageThreshold: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.getCollectionUsageThreshold:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       177: .line 663
            goto 179
      StackMap locals:
      StackMap stack: java.lang.UnsupportedOperationException
       178: pop
       179: .line 667
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  getCollectionUsageThresholdCount: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.getCollectionUsageThresholdCount:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       180: .line 668
            goto 182
      StackMap locals:
      StackMap stack: java.lang.UnsupportedOperationException
       181: pop
       182: .line 671
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            ldc "current"
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.getUsage:()Ljava/lang/management/MemoryUsage;
            invokestatic org.apache.tomcat.util.Diagnostics.formatMemoryUsage:(Ljava/lang/String;Ljava/lang/management/MemoryUsage;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       183: .line 672
            aload 1 /* sb */
            ldc "collection"
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.getCollectionUsage:()Ljava/lang/management/MemoryUsage;
            invokestatic org.apache.tomcat.util.Diagnostics.formatMemoryUsage:(Ljava/lang/String;Ljava/lang/management/MemoryUsage;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       184: .line 673
            aload 1 /* sb */
            ldc "peak"
            aload 2 /* mbean */
            invokeinterface java.lang.management.MemoryPoolMXBean.getPeakUsage:()Ljava/lang/management/MemoryUsage;
            invokestatic org.apache.tomcat.util.Diagnostics.formatMemoryUsage:(Ljava/lang/String;Ljava/lang/management/MemoryUsage;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       185: .line 674
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 4 // java.lang.String[] names
        end local 2 // java.lang.management.MemoryPoolMXBean mbean
       186: .line 628
      StackMap locals: org.apache.tomcat.util.res.StringManager java.lang.StringBuilder top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 149
       187: .line 678
            aload 1 /* sb */
            aload 0 /* requestedSm */
            ldc "diagnostics.vmInfoSystem"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       188: .line 679
            aload 1 /* sb */
            ldc ":\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       189: .line 680
            getstatic org.apache.tomcat.util.Diagnostics.runtimeMXBean:Ljava/lang/management/RuntimeMXBean;
            invokeinterface java.lang.management.RuntimeMXBean.getSystemProperties:()Ljava/util/Map;
            astore 2 /* props */
        start local 2 // java.util.Map props
       190: .line 681
            new java.util.ArrayList
            dup
            aload 2 /* props */
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            astore 3 /* keys */
        start local 3 // java.util.ArrayList keys
       191: .line 682
            aload 3 /* keys */
            invokestatic java.util.Collections.sort:(Ljava/util/List;)V
       192: .line 683
            aload 3 /* keys */
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 5
            goto 195
      StackMap locals: org.apache.tomcat.util.res.StringManager java.lang.StringBuilder java.util.Map java.util.ArrayList top java.util.Iterator
      StackMap stack:
       193: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* prop */
        start local 4 // java.lang.String prop
       194: .line 684
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* prop */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* props */
            aload 4 /* prop */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 4 // java.lang.String prop
       195: .line 683
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 193
       196: .line 686
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       197: .line 688
            aload 1 /* sb */
            aload 0 /* requestedSm */
            ldc "diagnostics.vmInfoLogger"
            invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       198: .line 689
            aload 1 /* sb */
            ldc ":\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       199: .line 690
            getstatic org.apache.tomcat.util.Diagnostics.loggingMXBean:Ljava/lang/management/PlatformLoggingMXBean;
            invokeinterface java.lang.management.PlatformLoggingMXBean.getLoggerNames:()Ljava/util/List;
            astore 4 /* loggers */
        start local 4 // java.util.List loggers
       200: .line 691
            aload 4 /* loggers */
            invokestatic java.util.Collections.sort:(Ljava/util/List;)V
       201: .line 692
            aload 4 /* loggers */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 207
      StackMap locals: org.apache.tomcat.util.res.StringManager java.lang.StringBuilder java.util.Map java.util.ArrayList java.util.List top java.util.Iterator
      StackMap stack:
       202: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* logger */
        start local 5 // java.lang.String logger
       203: .line 693
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "  "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* logger */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
       204: .line 694
            ldc ": level="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            getstatic org.apache.tomcat.util.Diagnostics.loggingMXBean:Ljava/lang/management/PlatformLoggingMXBean;
            aload 5 /* logger */
            invokeinterface java.lang.management.PlatformLoggingMXBean.getLoggerLevel:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
       205: .line 695
            ldc ", parent="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            getstatic org.apache.tomcat.util.Diagnostics.loggingMXBean:Ljava/lang/management/PlatformLoggingMXBean;
            aload 5 /* logger */
            invokeinterface java.lang.management.PlatformLoggingMXBean.getParentLoggerName:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       206: .line 693
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 5 // java.lang.String logger
       207: .line 692
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 202
       208: .line 697
            aload 1 /* sb */
            ldc "\r\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       209: .line 699
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 4 // java.util.List loggers
        end local 3 // java.util.ArrayList keys
        end local 2 // java.util.Map props
        end local 1 // java.lang.StringBuilder sb
        end local 0 // org.apache.tomcat.util.res.StringManager requestedSm
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0  210     0  requestedSm  Lorg/apache/tomcat/util/res/StringManager;
            1  210     1           sb  Ljava/lang/StringBuilder;
           75   76     2          arg  Ljava/lang/String;
          111  123     2        mbean  Ljava/lang/management/MemoryManagerMXBean;
          116  123     4        names  [Ljava/lang/String;
          119  120     5         name  Ljava/lang/String;
          126  140     2        mbean  Ljava/lang/management/GarbageCollectorMXBean;
          131  140     4        names  [Ljava/lang/String;
          134  135     5         name  Ljava/lang/String;
          150  186     2        mbean  Ljava/lang/management/MemoryPoolMXBean;
          156  186     4        names  [Ljava/lang/String;
          159  160     5         name  Ljava/lang/String;
          190  210     2        props  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
          191  210     3         keys  Ljava/util/ArrayList<Ljava/lang/String;>;
          194  195     4         prop  Ljava/lang/String;
          200  210     4      loggers  Ljava/util/List<Ljava/lang/String;>;
          203  207     5       logger  Ljava/lang/String;
      Exception table:
        from    to  target  type
           2     4       5  any
           5     6       5  any
         163   164     165  Class java.lang.UnsupportedOperationException
         167   168     169  Class java.lang.UnsupportedOperationException
         170   171     172  Class java.lang.UnsupportedOperationException
         173   174     175  Class java.lang.UnsupportedOperationException
         176   177     178  Class java.lang.UnsupportedOperationException
         179   180     181  Class java.lang.UnsupportedOperationException
    MethodParameters:
             Name  Flags
      requestedSm  
}
SourceFile: "Diagnostics.java"
InnerClasses:
  public final State = java.lang.Thread$State of java.lang.Thread