class sun.tools.jconsole.ThreadTab extends sun.tools.jconsole.Tab implements java.awt.event.ActionListener, javax.swing.event.DocumentListener, javax.swing.event.ListSelectionListener
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: sun.tools.jconsole.ThreadTab
  super_class: sun.tools.jconsole.Tab
{
  sun.tools.jconsole.PlotterPanel threadMeter;
    descriptor: Lsun/tools/jconsole/PlotterPanel;
    flags: (0x0000) 

  sun.tools.jconsole.TimeComboBox timeComboBox;
    descriptor: Lsun/tools/jconsole/TimeComboBox;
    flags: (0x0000) 

  javax.swing.JTabbedPane threadListTabbedPane;
    descriptor: Ljavax/swing/JTabbedPane;
    flags: (0x0000) 

  javax.swing.DefaultListModel<java.lang.Long> listModel;
    descriptor: Ljavax/swing/DefaultListModel;
    flags: (0x0000) 
    Signature: Ljavax/swing/DefaultListModel<Ljava/lang/Long;>;

  javax.swing.JTextField filterTF;
    descriptor: Ljavax/swing/JTextField;
    flags: (0x0000) 

  javax.swing.JLabel messageLabel;
    descriptor: Ljavax/swing/JLabel;
    flags: (0x0000) 

  javax.swing.JSplitPane threadsSplitPane;
    descriptor: Ljavax/swing/JSplitPane;
    flags: (0x0000) 

  java.util.HashMap<java.lang.Long, java.lang.String> nameCache;
    descriptor: Ljava/util/HashMap;
    flags: (0x0000) 
    Signature: Ljava/util/HashMap<Ljava/lang/Long;Ljava/lang/String;>;

  private sun.tools.jconsole.ThreadTab$ThreadOverviewPanel overviewPanel;
    descriptor: Lsun/tools/jconsole/ThreadTab$ThreadOverviewPanel;
    flags: (0x0002) ACC_PRIVATE

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

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

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

  private static final java.awt.Color threadCountColor;
    descriptor: Ljava/awt/Color;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.awt.Color peakColor;
    descriptor: Ljava/awt/Color;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final javax.swing.border.Border thinEmptyBorder;
    descriptor: Ljavax/swing/border/Border;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private long[] oldThreads;
    descriptor: [J
    flags: (0x0002) ACC_PRIVATE

  long lastSelected;
    descriptor: J
    flags: (0x0000) 

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=0, args_size=0
         0: .line 64
            getstatic sun.tools.jconsole.Plotter.defaultColor:Ljava/awt/Color;
            putstatic sun.tools.jconsole.ThreadTab.threadCountColor:Ljava/awt/Color;
         1: .line 65
            getstatic java.awt.Color.red:Ljava/awt/Color;
            putstatic sun.tools.jconsole.ThreadTab.peakColor:Ljava/awt/Color;
         2: .line 67
            new javax.swing.border.EmptyBorder
            dup
            iconst_2
            iconst_2
            iconst_2
            iconst_2
            invokespecial javax.swing.border.EmptyBorder.<init>:(IIII)V
            putstatic sun.tools.jconsole.ThreadTab.thinEmptyBorder:Ljavax/swing/border/Border;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.lang.String getTabName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 87
            getstatic sun.tools.jconsole.Messages.THREADS:Ljava/lang/String;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(sun.tools.jconsole.VMPanel);
    descriptor: (Lsun/tools/jconsole/VMPanel;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=14, args_size=2
        start local 0 // sun.tools.jconsole.ThreadTab this
        start local 1 // sun.tools.jconsole.VMPanel vmPanel
         0: .line 91
            aload 0 /* this */
            aload 1 /* vmPanel */
            invokestatic sun.tools.jconsole.ThreadTab.getTabName:()Ljava/lang/String;
            invokespecial sun.tools.jconsole.Tab.<init>:(Lsun/tools/jconsole/VMPanel;Ljava/lang/String;)V
         1: .line 55
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield sun.tools.jconsole.ThreadTab.nameCache:Ljava/util/HashMap;
         2: .line 58
            aload 0 /* this */
            iconst_0
            putfield sun.tools.jconsole.ThreadTab.plotterListening:Z
         3: .line 176
            aload 0 /* this */
            iconst_0
            newarray 11
            putfield sun.tools.jconsole.ThreadTab.oldThreads:[J
         4: .line 308
            aload 0 /* this */
            ldc -1
            putfield sun.tools.jconsole.ThreadTab.lastSelected:J
         5: .line 93
            aload 0 /* this */
            new java.awt.BorderLayout
            dup
            iconst_0
            iconst_0
            invokespecial java.awt.BorderLayout.<init>:(II)V
            invokevirtual sun.tools.jconsole.ThreadTab.setLayout:(Ljava/awt/LayoutManager;)V
         6: .line 94
            aload 0 /* this */
            new javax.swing.border.EmptyBorder
            dup
            iconst_4
            iconst_4
            iconst_3
            iconst_4
            invokespecial javax.swing.border.EmptyBorder.<init>:(IIII)V
            invokevirtual sun.tools.jconsole.ThreadTab.setBorder:(Ljavax/swing/border/Border;)V
         7: .line 96
            new javax.swing.JPanel
            dup
            new java.awt.BorderLayout
            dup
            invokespecial java.awt.BorderLayout.<init>:()V
            invokespecial javax.swing.JPanel.<init>:(Ljava/awt/LayoutManager;)V
            astore 2 /* topPanel */
        start local 2 // javax.swing.JPanel topPanel
         8: .line 97
            new javax.swing.JPanel
            dup
            new sun.tools.jconsole.VariableGridLayout
            dup
            iconst_0
            iconst_1
            iconst_4
            iconst_4
            iconst_1
            iconst_1
            invokespecial sun.tools.jconsole.VariableGridLayout.<init>:(IIIIZZ)V
            invokespecial javax.swing.JPanel.<init>:(Ljava/awt/LayoutManager;)V
            astore 3 /* plotterPanel */
        start local 3 // javax.swing.JPanel plotterPanel
         9: .line 99
            aload 0 /* this */
            aload 2 /* topPanel */
            ldc "North"
            invokevirtual sun.tools.jconsole.ThreadTab.add:(Ljava/awt/Component;Ljava/lang/Object;)V
        10: .line 100
            aload 0 /* this */
            aload 3 /* plotterPanel */
            ldc "Center"
            invokevirtual sun.tools.jconsole.ThreadTab.add:(Ljava/awt/Component;Ljava/lang/Object;)V
        11: .line 102
            new javax.swing.JPanel
            dup
            new java.awt.FlowLayout
            dup
            iconst_1
            bipush 20
            iconst_5
            invokespecial java.awt.FlowLayout.<init>:(III)V
            invokespecial javax.swing.JPanel.<init>:(Ljava/awt/LayoutManager;)V
            astore 4 /* controlPanel */
        start local 4 // javax.swing.JPanel controlPanel
        12: .line 103
            aload 2 /* topPanel */
            aload 4 /* controlPanel */
            ldc "Center"
            invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;Ljava/lang/Object;)V
        13: .line 105
            aload 0 /* this */
            new sun.tools.jconsole.PlotterPanel
            dup
            getstatic sun.tools.jconsole.Messages.NUMBER_OF_THREADS:Ljava/lang/String;
        14: .line 106
            getstatic sun.tools.jconsole.Plotter$Unit.NONE:Lsun/tools/jconsole/Plotter$Unit;
            iconst_1
            invokespecial sun.tools.jconsole.PlotterPanel.<init>:(Ljava/lang/String;Lsun/tools/jconsole/Plotter$Unit;Z)V
        15: .line 105
            putfield sun.tools.jconsole.ThreadTab.threadMeter:Lsun/tools/jconsole/PlotterPanel;
        16: .line 107
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.threadMeter:Lsun/tools/jconsole/PlotterPanel;
            getfield sun.tools.jconsole.PlotterPanel.plotter:Lsun/tools/jconsole/Plotter;
            ldc "threadCount"
            getstatic sun.tools.jconsole.Messages.LIVE_THREADS:Ljava/lang/String;
            getstatic sun.tools.jconsole.ThreadTab.threadCountColor:Ljava/awt/Color;
            iconst_1
            invokevirtual sun.tools.jconsole.Plotter.createSequence:(Ljava/lang/String;Ljava/lang/String;Ljava/awt/Color;Z)V
        17: .line 108
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.threadMeter:Lsun/tools/jconsole/PlotterPanel;
            getfield sun.tools.jconsole.PlotterPanel.plotter:Lsun/tools/jconsole/Plotter;
            ldc "peak"
            getstatic sun.tools.jconsole.Messages.PEAK:Ljava/lang/String;
            getstatic sun.tools.jconsole.ThreadTab.peakColor:Ljava/awt/Color;
            iconst_1
            invokevirtual sun.tools.jconsole.Plotter.createSequence:(Ljava/lang/String;Ljava/lang/String;Ljava/awt/Color;Z)V
        18: .line 109
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.threadMeter:Lsun/tools/jconsole/PlotterPanel;
            getfield sun.tools.jconsole.PlotterPanel.plotter:Lsun/tools/jconsole/Plotter;
        19: .line 110
            getstatic sun.tools.jconsole.Messages.THREAD_TAB_THREAD_PLOTTER_ACCESSIBLE_NAME:Ljava/lang/String;
        20: .line 109
            invokestatic sun.tools.jconsole.Utilities.setAccessibleName:(Ljavax/accessibility/Accessible;Ljava/lang/String;)V
        21: .line 112
            aload 3 /* plotterPanel */
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.threadMeter:Lsun/tools/jconsole/PlotterPanel;
            invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
            pop
        22: .line 114
            aload 0 /* this */
            new sun.tools.jconsole.TimeComboBox
            dup
            iconst_1
            anewarray sun.tools.jconsole.Plotter
            dup
            iconst_0
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.threadMeter:Lsun/tools/jconsole/PlotterPanel;
            getfield sun.tools.jconsole.PlotterPanel.plotter:Lsun/tools/jconsole/Plotter;
            aastore
            invokespecial sun.tools.jconsole.TimeComboBox.<init>:([Lsun/tools/jconsole/Plotter;)V
            putfield sun.tools.jconsole.ThreadTab.timeComboBox:Lsun/tools/jconsole/TimeComboBox;
        23: .line 115
            aload 4 /* controlPanel */
            new sun.tools.jconsole.LabeledComponent
            dup
            getstatic sun.tools.jconsole.Messages.TIME_RANGE_COLON:Ljava/lang/String;
        24: .line 116
            getstatic sun.tools.jconsole.Messages.TIME_RANGE_COLON:Ljava/lang/String;
            invokestatic sun.tools.jconsole.Resources.getMnemonicInt:(Ljava/lang/String;)I
        25: .line 117
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.timeComboBox:Lsun/tools/jconsole/TimeComboBox;
            invokespecial sun.tools.jconsole.LabeledComponent.<init>:(Ljava/lang/String;ILjavax/swing/JComponent;)V
        26: .line 115
            invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
            pop
        27: .line 119
            aload 0 /* this */
            new javax.swing.DefaultListModel
            dup
            invokespecial javax.swing.DefaultListModel.<init>:()V
            putfield sun.tools.jconsole.ThreadTab.listModel:Ljavax/swing/DefaultListModel;
        28: .line 121
            new javax.swing.JTextArea
            dup
            invokespecial javax.swing.JTextArea.<init>:()V
            astore 5 /* textArea */
        start local 5 // javax.swing.JTextArea textArea
        29: .line 122
            aload 5 /* textArea */
            getstatic sun.tools.jconsole.ThreadTab.thinEmptyBorder:Ljavax/swing/border/Border;
            invokevirtual javax.swing.JTextArea.setBorder:(Ljavax/swing/border/Border;)V
        30: .line 123
            aload 5 /* textArea */
            iconst_0
            invokevirtual javax.swing.JTextArea.setEditable:(Z)V
        31: .line 124
            aload 5 /* textArea */
        32: .line 125
            getstatic sun.tools.jconsole.Messages.THREAD_TAB_THREAD_INFO_ACCESSIBLE_NAME:Ljava/lang/String;
        33: .line 124
            invokestatic sun.tools.jconsole.Utilities.setAccessibleName:(Ljavax/accessibility/Accessible;Ljava/lang/String;)V
        34: .line 126
            new sun.tools.jconsole.ThreadTab$ThreadJList
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.listModel:Ljavax/swing/DefaultListModel;
            aload 5 /* textArea */
            invokespecial sun.tools.jconsole.ThreadTab$ThreadJList.<init>:(Lsun/tools/jconsole/ThreadTab;Ljavax/swing/DefaultListModel;Ljavax/swing/JTextArea;)V
            astore 6 /* list */
        start local 6 // sun.tools.jconsole.ThreadTab$ThreadJList list
        35: .line 128
            new java.awt.Dimension
            dup
            aload 0 /* this */
            invokespecial sun.tools.jconsole.Tab.getPreferredSize:()Ljava/awt/Dimension;
            invokespecial java.awt.Dimension.<init>:(Ljava/awt/Dimension;)V
            astore 7 /* di */
        start local 7 // java.awt.Dimension di
        36: .line 129
            aload 7 /* di */
            aload 7 /* di */
            getfield java.awt.Dimension.width:I
            sipush 200
            invokestatic java.lang.Math.min:(II)I
            putfield java.awt.Dimension.width:I
        37: .line 131
            new javax.swing.JScrollPane
            dup
            aload 6 /* list */
            invokespecial javax.swing.JScrollPane.<init>:(Ljava/awt/Component;)V
            astore 8 /* threadlistSP */
        start local 8 // javax.swing.JScrollPane threadlistSP
        38: .line 132
            aload 8 /* threadlistSP */
            aload 7 /* di */
            invokevirtual javax.swing.JScrollPane.setPreferredSize:(Ljava/awt/Dimension;)V
        39: .line 133
            aload 8 /* threadlistSP */
            aconst_null
            invokevirtual javax.swing.JScrollPane.setBorder:(Ljavax/swing/border/Border;)V
        40: .line 135
            new javax.swing.JScrollPane
            dup
            aload 5 /* textArea */
            invokespecial javax.swing.JScrollPane.<init>:(Ljava/awt/Component;)V
            astore 9 /* textAreaSP */
        start local 9 // javax.swing.JScrollPane textAreaSP
        41: .line 136
            aload 9 /* textAreaSP */
            aconst_null
            invokevirtual javax.swing.JScrollPane.setBorder:(Ljavax/swing/border/Border;)V
        42: .line 138
            aload 0 /* this */
            new javax.swing.JTabbedPane
            dup
            iconst_1
            invokespecial javax.swing.JTabbedPane.<init>:(I)V
            putfield sun.tools.jconsole.ThreadTab.threadListTabbedPane:Ljavax/swing/JTabbedPane;
        43: .line 139
            aload 0 /* this */
            new javax.swing.JSplitPane
            dup
            iconst_1
        44: .line 140
            aload 8 /* threadlistSP */
            aload 9 /* textAreaSP */
            invokespecial javax.swing.JSplitPane.<init>:(ILjava/awt/Component;Ljava/awt/Component;)V
        45: .line 139
            putfield sun.tools.jconsole.ThreadTab.threadsSplitPane:Ljavax/swing/JSplitPane;
        46: .line 141
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.threadsSplitPane:Ljavax/swing/JSplitPane;
            iconst_1
            invokevirtual javax.swing.JSplitPane.setOneTouchExpandable:(Z)V
        47: .line 142
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.threadsSplitPane:Ljavax/swing/JSplitPane;
            aconst_null
            invokevirtual javax.swing.JSplitPane.setBorder:(Ljavax/swing/border/Border;)V
        48: .line 144
            new javax.swing.JPanel
            dup
            new java.awt.BorderLayout
            dup
            invokespecial java.awt.BorderLayout.<init>:()V
            invokespecial javax.swing.JPanel.<init>:(Ljava/awt/LayoutManager;)V
            astore 10 /* firstTabPanel */
        start local 10 // javax.swing.JPanel firstTabPanel
        49: .line 145
            aload 10 /* firstTabPanel */
            iconst_0
            invokevirtual javax.swing.JPanel.setOpaque:(Z)V
        50: .line 147
            new javax.swing.JPanel
            dup
            new java.awt.FlowLayout
            dup
            iconst_0
            iconst_5
            iconst_2
            invokespecial java.awt.FlowLayout.<init>:(III)V
            invokespecial javax.swing.JPanel.<init>:(Ljava/awt/LayoutManager;)V
            astore 11 /* firstTabToolPanel */
        start local 11 // javax.swing.JPanel firstTabToolPanel
        51: .line 148
            aload 11 /* firstTabToolPanel */
            iconst_0
            invokevirtual javax.swing.JPanel.setOpaque:(Z)V
        52: .line 150
            aload 0 /* this */
            new sun.tools.jconsole.ThreadTab$PromptingTextField
            dup
            aload 0 /* this */
            ldc "Filter"
            bipush 20
            invokespecial sun.tools.jconsole.ThreadTab$PromptingTextField.<init>:(Lsun/tools/jconsole/ThreadTab;Ljava/lang/String;I)V
            putfield sun.tools.jconsole.ThreadTab.filterTF:Ljavax/swing/JTextField;
        53: .line 151
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.filterTF:Ljavax/swing/JTextField;
            invokevirtual javax.swing.JTextField.getDocument:()Ljavax/swing/text/Document;
            aload 0 /* this */
            invokeinterface javax.swing.text.Document.addDocumentListener:(Ljavax/swing/event/DocumentListener;)V
        54: .line 152
            aload 11 /* firstTabToolPanel */
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.filterTF:Ljavax/swing/JTextField;
            invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
            pop
        55: .line 154
            new javax.swing.JSeparator
            dup
            iconst_1
            invokespecial javax.swing.JSeparator.<init>:(I)V
            astore 12 /* separator */
        start local 12 // javax.swing.JSeparator separator
        56: .line 155
            aload 12 /* separator */
            new java.awt.Dimension
            dup
            aload 12 /* separator */
            invokevirtual javax.swing.JSeparator.getPreferredSize:()Ljava/awt/Dimension;
            getfield java.awt.Dimension.width:I
        57: .line 156
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.filterTF:Ljavax/swing/JTextField;
            invokevirtual javax.swing.JTextField.getPreferredSize:()Ljava/awt/Dimension;
            getfield java.awt.Dimension.height:I
            invokespecial java.awt.Dimension.<init>:(II)V
        58: .line 155
            invokevirtual javax.swing.JSeparator.setPreferredSize:(Ljava/awt/Dimension;)V
        59: .line 157
            aload 11 /* firstTabToolPanel */
            aload 12 /* separator */
            invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
            pop
        60: .line 159
            new javax.swing.JButton
            dup
            getstatic sun.tools.jconsole.Messages.DETECT_DEADLOCK:Ljava/lang/String;
            invokespecial javax.swing.JButton.<init>:(Ljava/lang/String;)V
            astore 13 /* detectDeadlockButton */
        start local 13 // javax.swing.JButton detectDeadlockButton
        61: .line 160
            aload 13 /* detectDeadlockButton */
            getstatic sun.tools.jconsole.Messages.DETECT_DEADLOCK:Ljava/lang/String;
            invokestatic sun.tools.jconsole.Resources.getMnemonicInt:(Ljava/lang/String;)I
            invokevirtual javax.swing.JButton.setMnemonic:(I)V
        62: .line 161
            aload 13 /* detectDeadlockButton */
            ldc "detectDeadlock"
            invokevirtual javax.swing.JButton.setActionCommand:(Ljava/lang/String;)V
        63: .line 162
            aload 13 /* detectDeadlockButton */
            aload 0 /* this */
            invokevirtual javax.swing.JButton.addActionListener:(Ljava/awt/event/ActionListener;)V
        64: .line 163
            aload 13 /* detectDeadlockButton */
            getstatic sun.tools.jconsole.Messages.DETECT_DEADLOCK_TOOLTIP:Ljava/lang/String;
            invokevirtual javax.swing.JButton.setToolTipText:(Ljava/lang/String;)V
        65: .line 164
            aload 11 /* firstTabToolPanel */
            aload 13 /* detectDeadlockButton */
            invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
            pop
        66: .line 166
            aload 0 /* this */
            new javax.swing.JLabel
            dup
            invokespecial javax.swing.JLabel.<init>:()V
            putfield sun.tools.jconsole.ThreadTab.messageLabel:Ljavax/swing/JLabel;
        67: .line 167
            aload 11 /* firstTabToolPanel */
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.messageLabel:Ljavax/swing/JLabel;
            invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
            pop
        68: .line 169
            aload 10 /* firstTabPanel */
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.threadsSplitPane:Ljavax/swing/JSplitPane;
            ldc "Center"
            invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;Ljava/lang/Object;)V
        69: .line 170
            aload 10 /* firstTabPanel */
            aload 11 /* firstTabToolPanel */
            ldc "South"
            invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;Ljava/lang/Object;)V
        70: .line 171
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.threadListTabbedPane:Ljavax/swing/JTabbedPane;
            getstatic sun.tools.jconsole.Messages.THREADS:Ljava/lang/String;
            aload 10 /* firstTabPanel */
            invokevirtual javax.swing.JTabbedPane.addTab:(Ljava/lang/String;Ljava/awt/Component;)V
        71: .line 173
            aload 3 /* plotterPanel */
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.threadListTabbedPane:Ljavax/swing/JTabbedPane;
            invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
            pop
        72: .line 174
            return
        end local 13 // javax.swing.JButton detectDeadlockButton
        end local 12 // javax.swing.JSeparator separator
        end local 11 // javax.swing.JPanel firstTabToolPanel
        end local 10 // javax.swing.JPanel firstTabPanel
        end local 9 // javax.swing.JScrollPane textAreaSP
        end local 8 // javax.swing.JScrollPane threadlistSP
        end local 7 // java.awt.Dimension di
        end local 6 // sun.tools.jconsole.ThreadTab$ThreadJList list
        end local 5 // javax.swing.JTextArea textArea
        end local 4 // javax.swing.JPanel controlPanel
        end local 3 // javax.swing.JPanel plotterPanel
        end local 2 // javax.swing.JPanel topPanel
        end local 1 // sun.tools.jconsole.VMPanel vmPanel
        end local 0 // sun.tools.jconsole.ThreadTab this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   73     0                  this  Lsun/tools/jconsole/ThreadTab;
            0   73     1               vmPanel  Lsun/tools/jconsole/VMPanel;
            8   73     2              topPanel  Ljavax/swing/JPanel;
            9   73     3          plotterPanel  Ljavax/swing/JPanel;
           12   73     4          controlPanel  Ljavax/swing/JPanel;
           29   73     5              textArea  Ljavax/swing/JTextArea;
           35   73     6                  list  Lsun/tools/jconsole/ThreadTab$ThreadJList;
           36   73     7                    di  Ljava/awt/Dimension;
           38   73     8          threadlistSP  Ljavax/swing/JScrollPane;
           41   73     9            textAreaSP  Ljavax/swing/JScrollPane;
           49   73    10         firstTabPanel  Ljavax/swing/JPanel;
           51   73    11     firstTabToolPanel  Ljavax/swing/JPanel;
           56   73    12             separator  Ljavax/swing/JSeparator;
           61   73    13  detectDeadlockButton  Ljavax/swing/JButton;
    MethodParameters:
         Name  Flags
      vmPanel  

  public javax.swing.SwingWorker<?, ?> newSwingWorker();
    descriptor: ()Ljavax/swing/SwingWorker;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // sun.tools.jconsole.ThreadTab this
         0: .line 179
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.vmPanel:Lsun/tools/jconsole/VMPanel;
            invokevirtual sun.tools.jconsole.VMPanel.getProxyClient:()Lsun/tools/jconsole/ProxyClient;
            astore 1 /* proxyClient */
        start local 1 // sun.tools.jconsole.ProxyClient proxyClient
         1: .line 181
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.plotterListening:Z
            ifne 4
         2: .line 182
            aload 1 /* proxyClient */
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.threadMeter:Lsun/tools/jconsole/PlotterPanel;
            getfield sun.tools.jconsole.PlotterPanel.plotter:Lsun/tools/jconsole/Plotter;
            invokevirtual sun.tools.jconsole.ProxyClient.addWeakPropertyChangeListener:(Ljava/beans/PropertyChangeListener;)V
         3: .line 183
            aload 0 /* this */
            iconst_1
            putfield sun.tools.jconsole.ThreadTab.plotterListening:Z
         4: .line 186
      StackMap locals: sun.tools.jconsole.ProxyClient
      StackMap stack:
            new sun.tools.jconsole.ThreadTab$1
            dup
            aload 0 /* this */
            aload 1 /* proxyClient */
            invokespecial sun.tools.jconsole.ThreadTab$1.<init>:(Lsun/tools/jconsole/ThreadTab;Lsun/tools/jconsole/ProxyClient;)V
            areturn
        end local 1 // sun.tools.jconsole.ProxyClient proxyClient
        end local 0 // sun.tools.jconsole.ThreadTab this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lsun/tools/jconsole/ThreadTab;
            1    5     1  proxyClient  Lsun/tools/jconsole/ProxyClient;
    Signature: ()Ljavax/swing/SwingWorker<**>;

  public void valueChanged(javax.swing.event.ListSelectionEvent);
    descriptor: (Ljavax/swing/event/ListSelectionEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=7, args_size=2
        start local 0 // sun.tools.jconsole.ThreadTab this
        start local 1 // javax.swing.event.ListSelectionEvent ev
         0: .line 311
            aload 1 /* ev */
            invokevirtual javax.swing.event.ListSelectionEvent.getSource:()Ljava/lang/Object;
            checkcast sun.tools.jconsole.ThreadTab$ThreadJList
            astore 2 /* list */
        start local 2 // sun.tools.jconsole.ThreadTab$ThreadJList list
         1: .line 312
            aload 2 /* list */
            getfield sun.tools.jconsole.ThreadTab$ThreadJList.textArea:Ljavax/swing/JTextArea;
            astore 3 /* textArea */
        start local 3 // javax.swing.JTextArea textArea
         2: .line 314
            aload 2 /* list */
            invokevirtual sun.tools.jconsole.ThreadTab$ThreadJList.getSelectedValue:()Ljava/lang/Object;
            checkcast java.lang.Long
            astore 4 /* selected */
        start local 4 // java.lang.Long selected
         3: .line 315
            aload 4 /* selected */
            ifnonnull 7
         4: .line 316
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.lastSelected:J
            ldc -1
            lcmp
            ifeq 8
         5: .line 317
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.lastSelected:J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            astore 4 /* selected */
         6: .line 319
            goto 8
         7: .line 320
      StackMap locals: sun.tools.jconsole.ThreadTab$ThreadJList javax.swing.JTextArea java.lang.Long
      StackMap stack:
            aload 0 /* this */
            aload 4 /* selected */
            invokevirtual java.lang.Long.longValue:()J
            putfield sun.tools.jconsole.ThreadTab.lastSelected:J
         8: .line 322
      StackMap locals:
      StackMap stack:
            aload 3 /* textArea */
            ldc ""
            invokevirtual javax.swing.JTextArea.setText:(Ljava/lang/String;)V
         9: .line 323
            aload 4 /* selected */
            ifnull 12
        10: .line 324
            aload 4 /* selected */
            invokevirtual java.lang.Long.longValue:()J
            lstore 5 /* threadID */
        start local 5 // long threadID
        11: .line 325
            aload 0 /* this */
            new sun.tools.jconsole.ThreadTab$2
            dup
            aload 0 /* this */
            lload 5 /* threadID */
            aload 3 /* textArea */
            invokespecial sun.tools.jconsole.ThreadTab$2.<init>:(Lsun/tools/jconsole/ThreadTab;JLjavax/swing/JTextArea;)V
            invokevirtual sun.tools.jconsole.ThreadTab.workerAdd:(Ljava/lang/Runnable;)V
        end local 5 // long threadID
        12: .line 397
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.lang.Long selected
        end local 3 // javax.swing.JTextArea textArea
        end local 2 // sun.tools.jconsole.ThreadTab$ThreadJList list
        end local 1 // javax.swing.event.ListSelectionEvent ev
        end local 0 // sun.tools.jconsole.ThreadTab this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Lsun/tools/jconsole/ThreadTab;
            0   13     1        ev  Ljavax/swing/event/ListSelectionEvent;
            1   13     2      list  Lsun/tools/jconsole/ThreadTab$ThreadJList;
            2   13     3  textArea  Ljavax/swing/JTextArea;
            3   13     4  selected  Ljava/lang/Long;
           11   12     5  threadID  J
    MethodParameters:
      Name  Flags
      ev    

  private void doUpdate();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.tools.jconsole.ThreadTab this
         0: .line 400
            aload 0 /* this */
            new sun.tools.jconsole.ThreadTab$3
            dup
            aload 0 /* this */
            invokespecial sun.tools.jconsole.ThreadTab$3.<init>:(Lsun/tools/jconsole/ThreadTab;)V
            invokevirtual sun.tools.jconsole.ThreadTab.workerAdd:(Ljava/lang/Runnable;)V
         1: .line 405
            return
        end local 0 // sun.tools.jconsole.ThreadTab this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/tools/jconsole/ThreadTab;

  private void detectDeadlock();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.tools.jconsole.ThreadTab this
         0: .line 409
            aload 0 /* this */
            new sun.tools.jconsole.ThreadTab$4
            dup
            aload 0 /* this */
            invokespecial sun.tools.jconsole.ThreadTab$4.<init>:(Lsun/tools/jconsole/ThreadTab;)V
            invokevirtual sun.tools.jconsole.ThreadTab.workerAdd:(Ljava/lang/Runnable;)V
         1: .line 492
            return
        end local 0 // sun.tools.jconsole.ThreadTab this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/tools/jconsole/ThreadTab;

  public java.lang.Long[][] getDeadlockedThreadIds();
    descriptor: ()[[Ljava/lang/Long;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=13, args_size=1
        start local 0 // sun.tools.jconsole.ThreadTab this
         0: .line 497
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.vmPanel:Lsun/tools/jconsole/VMPanel;
            invokevirtual sun.tools.jconsole.VMPanel.getProxyClient:()Lsun/tools/jconsole/ProxyClient;
            astore 1 /* proxyClient */
        start local 1 // sun.tools.jconsole.ProxyClient proxyClient
         1: .line 498
            aload 1 /* proxyClient */
            invokevirtual sun.tools.jconsole.ProxyClient.getThreadMXBean:()Ljava/lang/management/ThreadMXBean;
            astore 2 /* threadMBean */
        start local 2 // java.lang.management.ThreadMXBean threadMBean
         2: .line 500
            aload 1 /* proxyClient */
            invokevirtual sun.tools.jconsole.ProxyClient.findDeadlockedThreads:()[J
            astore 3 /* ids */
        start local 3 // long[] ids
         3: .line 501
            aload 3 /* ids */
            ifnonnull 5
         4: .line 502
            aconst_null
            areturn
         5: .line 504
      StackMap locals: sun.tools.jconsole.ProxyClient java.lang.management.ThreadMXBean long[]
      StackMap stack:
            aload 2 /* threadMBean */
            aload 3 /* ids */
            ldc 2147483647
            invokeinterface java.lang.management.ThreadMXBean.getThreadInfo:([JI)[Ljava/lang/management/ThreadInfo;
            astore 4 /* infos */
        start local 4 // java.lang.management.ThreadInfo[] infos
         6: .line 506
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* dcycles */
        start local 5 // java.util.List dcycles
         7: .line 507
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* cycle */
        start local 6 // java.util.List cycle
         8: .line 511
            aload 3 /* ids */
            arraylength
            newarray 4
            astore 7 /* visited */
        start local 7 // boolean[] visited
         9: .line 513
            iconst_m1
            istore 8 /* deadlockedThread */
        start local 8 // int deadlockedThread
        10: .line 515
      StackMap locals: sun.tools.jconsole.ThreadTab sun.tools.jconsole.ProxyClient java.lang.management.ThreadMXBean long[] java.lang.management.ThreadInfo[] java.util.List java.util.List boolean[] int
      StackMap stack:
            iload 8 /* deadlockedThread */
            ifge 24
        11: .line 516
            aload 6 /* cycle */
            invokeinterface java.util.List.size:()I
            ifle 14
        12: .line 518
            aload 5 /* dcycles */
            aload 6 /* cycle */
            iconst_0
            anewarray java.lang.Long
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.Long[]
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        13: .line 519
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* cycle */
        14: .line 522
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 9 /* j */
        start local 9 // int j
        15: goto 21
        16: .line 523
      StackMap locals: int
      StackMap stack:
            aload 7 /* visited */
            iload 9 /* j */
            baload
            ifne 20
        17: .line 524
            iload 9 /* j */
            istore 8 /* deadlockedThread */
        18: .line 525
            aload 7 /* visited */
            iload 9 /* j */
            iconst_1
            bastore
        19: .line 526
            goto 22
        20: .line 522
      StackMap locals:
      StackMap stack:
            iinc 9 /* j */ 1
      StackMap locals:
      StackMap stack:
        21: iload 9 /* j */
            aload 3 /* ids */
            arraylength
            if_icmplt 16
        end local 9 // int j
        22: .line 529
      StackMap locals:
      StackMap stack:
            iload 8 /* deadlockedThread */
            ifge 24
        23: .line 531
            goto 39
        24: .line 535
      StackMap locals:
      StackMap stack:
            aload 6 /* cycle */
            aload 3 /* ids */
            iload 8 /* deadlockedThread */
            laload
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        25: .line 536
            aload 4 /* infos */
            iload 8 /* deadlockedThread */
            aaload
            invokevirtual java.lang.management.ThreadInfo.getLockOwnerId:()J
            lstore 9 /* nextThreadId */
        start local 9 // long nextThreadId
        26: .line 537
            iconst_0
            istore 11 /* j */
        start local 11 // int j
        27: goto 37
        28: .line 538
      StackMap locals: long int
      StackMap stack:
            aload 4 /* infos */
            iload 11 /* j */
            aaload
            astore 12 /* ti */
        start local 12 // java.lang.management.ThreadInfo ti
        29: .line 539
            aload 12 /* ti */
            invokevirtual java.lang.management.ThreadInfo.getThreadId:()J
            lload 9 /* nextThreadId */
            lcmp
            ifne 36
        30: .line 540
            aload 7 /* visited */
            iload 11 /* j */
            baload
            ifeq 33
        31: .line 541
            iconst_m1
            istore 8 /* deadlockedThread */
        32: .line 542
            goto 10
        33: .line 543
      StackMap locals: java.lang.management.ThreadInfo
      StackMap stack:
            iload 11 /* j */
            istore 8 /* deadlockedThread */
        34: .line 544
            aload 7 /* visited */
            iload 11 /* j */
            iconst_1
            bastore
        35: .line 546
            goto 10
        end local 12 // java.lang.management.ThreadInfo ti
        36: .line 537
      StackMap locals:
      StackMap stack:
            iinc 11 /* j */ 1
      StackMap locals:
      StackMap stack:
        37: iload 11 /* j */
            aload 3 /* ids */
            arraylength
            if_icmplt 28
        end local 11 // int j
        end local 9 // long nextThreadId
        38: .line 514
            goto 10
        39: .line 550
      StackMap locals:
      StackMap stack:
            aload 5 /* dcycles */
            iconst_0
            iconst_0
            multianewarray [[Ljava/lang/Long; 2
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.Long[][]
            areturn
        end local 8 // int deadlockedThread
        end local 7 // boolean[] visited
        end local 6 // java.util.List cycle
        end local 5 // java.util.List dcycles
        end local 4 // java.lang.management.ThreadInfo[] infos
        end local 3 // long[] ids
        end local 2 // java.lang.management.ThreadMXBean threadMBean
        end local 1 // sun.tools.jconsole.ProxyClient proxyClient
        end local 0 // sun.tools.jconsole.ThreadTab this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   40     0              this  Lsun/tools/jconsole/ThreadTab;
            1   40     1       proxyClient  Lsun/tools/jconsole/ProxyClient;
            2   40     2       threadMBean  Ljava/lang/management/ThreadMXBean;
            3   40     3               ids  [J
            6   40     4             infos  [Ljava/lang/management/ThreadInfo;
            7   40     5           dcycles  Ljava/util/List<[Ljava/lang/Long;>;
            8   40     6             cycle  Ljava/util/List<Ljava/lang/Long;>;
            9   40     7           visited  [Z
           10   40     8  deadlockedThread  I
           15   22     9                 j  I
           26   38     9      nextThreadId  J
           27   38    11                 j  I
           29   36    12                ti  Ljava/lang/management/ThreadInfo;
    Exceptions:
      throws java.io.IOException

  public void actionPerformed(java.awt.event.ActionEvent);
    descriptor: (Ljava/awt/event/ActionEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.tools.jconsole.ThreadTab this
        start local 1 // java.awt.event.ActionEvent evt
         0: .line 559
            aload 1 /* evt */
            invokevirtual java.awt.event.ActionEvent.getSource:()Ljava/lang/Object;
            checkcast javax.swing.AbstractButton
            invokevirtual javax.swing.AbstractButton.getActionCommand:()Ljava/lang/String;
            astore 2 /* cmd */
        start local 2 // java.lang.String cmd
         1: .line 561
            aload 2 /* cmd */
            ldc "detectDeadlock"
            if_acmpne 4
         2: .line 562
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.messageLabel:Ljavax/swing/JLabel;
            ldc ""
            invokevirtual javax.swing.JLabel.setText:(Ljava/lang/String;)V
         3: .line 563
            aload 0 /* this */
            invokevirtual sun.tools.jconsole.ThreadTab.detectDeadlock:()V
         4: .line 565
      StackMap locals: java.lang.String
      StackMap stack:
            return
        end local 2 // java.lang.String cmd
        end local 1 // java.awt.event.ActionEvent evt
        end local 0 // sun.tools.jconsole.ThreadTab this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/tools/jconsole/ThreadTab;
            0    5     1   evt  Ljava/awt/event/ActionEvent;
            1    5     2   cmd  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      evt   

  public void insertUpdate(javax.swing.event.DocumentEvent);
    descriptor: (Ljavax/swing/event/DocumentEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.tools.jconsole.ThreadTab this
        start local 1 // javax.swing.event.DocumentEvent e
         0: .line 572
            aload 0 /* this */
            invokevirtual sun.tools.jconsole.ThreadTab.doUpdate:()V
         1: .line 573
            return
        end local 1 // javax.swing.event.DocumentEvent e
        end local 0 // sun.tools.jconsole.ThreadTab this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/tools/jconsole/ThreadTab;
            0    2     1     e  Ljavax/swing/event/DocumentEvent;
    MethodParameters:
      Name  Flags
      e     

  public void removeUpdate(javax.swing.event.DocumentEvent);
    descriptor: (Ljavax/swing/event/DocumentEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.tools.jconsole.ThreadTab this
        start local 1 // javax.swing.event.DocumentEvent e
         0: .line 576
            aload 0 /* this */
            invokevirtual sun.tools.jconsole.ThreadTab.doUpdate:()V
         1: .line 577
            return
        end local 1 // javax.swing.event.DocumentEvent e
        end local 0 // sun.tools.jconsole.ThreadTab this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/tools/jconsole/ThreadTab;
            0    2     1     e  Ljavax/swing/event/DocumentEvent;
    MethodParameters:
      Name  Flags
      e     

  public void changedUpdate(javax.swing.event.DocumentEvent);
    descriptor: (Ljavax/swing/event/DocumentEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.tools.jconsole.ThreadTab this
        start local 1 // javax.swing.event.DocumentEvent e
         0: .line 580
            aload 0 /* this */
            invokevirtual sun.tools.jconsole.ThreadTab.doUpdate:()V
         1: .line 581
            return
        end local 1 // javax.swing.event.DocumentEvent e
        end local 0 // sun.tools.jconsole.ThreadTab this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/tools/jconsole/ThreadTab;
            0    2     1     e  Ljavax/swing/event/DocumentEvent;
    MethodParameters:
      Name  Flags
      e     

  sun.tools.jconsole.OverviewPanel[] getOverviewPanels();
    descriptor: ()[Lsun/tools/jconsole/OverviewPanel;
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.tools.jconsole.ThreadTab this
         0: .line 676
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.overviewPanel:Lsun/tools/jconsole/ThreadTab$ThreadOverviewPanel;
            ifnonnull 2
         1: .line 677
            aload 0 /* this */
            new sun.tools.jconsole.ThreadTab$ThreadOverviewPanel
            dup
            invokespecial sun.tools.jconsole.ThreadTab$ThreadOverviewPanel.<init>:()V
            putfield sun.tools.jconsole.ThreadTab.overviewPanel:Lsun/tools/jconsole/ThreadTab$ThreadOverviewPanel;
         2: .line 679
      StackMap locals:
      StackMap stack:
            iconst_1
            anewarray sun.tools.jconsole.OverviewPanel
            dup
            iconst_0
            aload 0 /* this */
            getfield sun.tools.jconsole.ThreadTab.overviewPanel:Lsun/tools/jconsole/ThreadTab$ThreadOverviewPanel;
            aastore
            areturn
        end local 0 // sun.tools.jconsole.ThreadTab this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/tools/jconsole/ThreadTab;
}
SourceFile: "ThreadTab.java"
NestMembers:
  sun.tools.jconsole.ThreadTab$1  sun.tools.jconsole.ThreadTab$2  sun.tools.jconsole.ThreadTab$2$1  sun.tools.jconsole.ThreadTab$3  sun.tools.jconsole.ThreadTab$4  sun.tools.jconsole.ThreadTab$4$1  sun.tools.jconsole.ThreadTab$4$1$1  sun.tools.jconsole.ThreadTab$4$1$2  sun.tools.jconsole.ThreadTab$4$2  sun.tools.jconsole.ThreadTab$PromptingTextField  sun.tools.jconsole.ThreadTab$ThreadJList  sun.tools.jconsole.ThreadTab$ThreadJList$1  sun.tools.jconsole.ThreadTab$ThreadOverviewPanel
InnerClasses:
  public final Unit = sun.tools.jconsole.Plotter$Unit of sun.tools.jconsole.Plotter
  sun.tools.jconsole.ThreadTab$1
  sun.tools.jconsole.ThreadTab$2
  sun.tools.jconsole.ThreadTab$3
  sun.tools.jconsole.ThreadTab$4
  private PromptingTextField = sun.tools.jconsole.ThreadTab$PromptingTextField of sun.tools.jconsole.ThreadTab
  private ThreadJList = sun.tools.jconsole.ThreadTab$ThreadJList of sun.tools.jconsole.ThreadTab
  private ThreadOverviewPanel = sun.tools.jconsole.ThreadTab$ThreadOverviewPanel of sun.tools.jconsole.ThreadTab