public class javafx.scene.control.skin.TableHeaderRow extends javafx.scene.layout.StackPane
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javafx.scene.control.skin.TableHeaderRow
  super_class: javafx.scene.layout.StackPane
{
  private final java.lang.String MENU_SEPARATOR;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javafx.scene.control.skin.VirtualFlow flow;
    descriptor: Ljavafx/scene/control/skin/VirtualFlow;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  final javafx.scene.control.skin.TableViewSkinBase<?, ?, ?, ?, ?> tableSkin;
    descriptor: Ljavafx/scene/control/skin/TableViewSkinBase;
    flags: (0x0010) ACC_FINAL
    Signature: Ljavafx/scene/control/skin/TableViewSkinBase<*****>;

  private java.util.Map<javafx.scene.control.TableColumnBase, javafx.scene.control.CheckMenuItem> columnMenuItems;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljavafx/scene/control/TableColumnBase;Ljavafx/scene/control/CheckMenuItem;>;

  private double scrollX;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private double tableWidth;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private javafx.scene.shape.Rectangle clip;
    descriptor: Ljavafx/scene/shape/Rectangle;
    flags: (0x0002) ACC_PRIVATE

  private javafx.scene.control.skin.TableColumnHeader reorderingRegion;
    descriptor: Ljavafx/scene/control/skin/TableColumnHeader;
    flags: (0x0002) ACC_PRIVATE

  private javafx.scene.layout.StackPane dragHeader;
    descriptor: Ljavafx/scene/layout/StackPane;
    flags: (0x0002) ACC_PRIVATE

  private final javafx.scene.control.Label dragHeaderLabel;
    descriptor: Ljavafx/scene/control/Label;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private javafx.scene.layout.Region filler;
    descriptor: Ljavafx/scene/layout/Region;
    flags: (0x0002) ACC_PRIVATE

  private javafx.scene.layout.Pane cornerRegion;
    descriptor: Ljavafx/scene/layout/Pane;
    flags: (0x0002) ACC_PRIVATE

  private javafx.scene.control.ContextMenu columnPopupMenu;
    descriptor: Ljavafx/scene/control/ContextMenu;
    flags: (0x0002) ACC_PRIVATE

  boolean columnDragLock;
    descriptor: Z
    flags: (0x0000) 

  private javafx.beans.InvalidationListener tableWidthListener;
    descriptor: Ljavafx/beans/InvalidationListener;
    flags: (0x0002) ACC_PRIVATE

  private javafx.beans.InvalidationListener tablePaddingListener;
    descriptor: Ljavafx/beans/InvalidationListener;
    flags: (0x0002) ACC_PRIVATE

  private javafx.collections.ListChangeListener visibleLeafColumnsListener;
    descriptor: Ljavafx/collections/ListChangeListener;
    flags: (0x0002) ACC_PRIVATE

  private final javafx.collections.ListChangeListener tableColumnsListener;
    descriptor: Ljavafx/collections/ListChangeListener;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javafx.beans.InvalidationListener columnTextListener;
    descriptor: Ljavafx/beans/InvalidationListener;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javafx.beans.WeakInvalidationListener weakTableWidthListener;
    descriptor: Ljavafx/beans/WeakInvalidationListener;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javafx.beans.WeakInvalidationListener weakTablePaddingListener;
    descriptor: Ljavafx/beans/WeakInvalidationListener;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javafx.collections.WeakListChangeListener weakVisibleLeafColumnsListener;
    descriptor: Ljavafx/collections/WeakListChangeListener;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javafx.collections.WeakListChangeListener weakTableColumnsListener;
    descriptor: Ljavafx/collections/WeakListChangeListener;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javafx.beans.WeakInvalidationListener weakColumnTextListener;
    descriptor: Ljavafx/beans/WeakInvalidationListener;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private javafx.beans.property.BooleanProperty reordering;
    descriptor: Ljavafx/beans/property/BooleanProperty;
    flags: (0x0002) ACC_PRIVATE

  private javafx.beans.property.ReadOnlyObjectWrapper<javafx.scene.control.skin.NestedTableColumnHeader> rootHeader;
    descriptor: Ljavafx/beans/property/ReadOnlyObjectWrapper;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljavafx/beans/property/ReadOnlyObjectWrapper<Ljavafx/scene/control/skin/NestedTableColumnHeader;>;

  public void <init>(javafx.scene.control.skin.TableViewSkinBase);
    descriptor: (Ljavafx/scene/control/skin/TableViewSkinBase;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // javafx.scene.control.skin.TableViewSkinBase skin
         0: .line 188
            aload 0 /* this */
            invokespecial javafx.scene.layout.StackPane.<init>:()V
         1: .line 85
            aload 0 /* this */
         2: .line 86
            ldc "TableView.nestedColumnControlMenuSeparator"
            invokestatic com.sun.javafx.scene.control.skin.resources.ControlResources.getString:(Ljava/lang/String;)Ljava/lang/String;
            putfield javafx.scene.control.skin.TableHeaderRow.MENU_SEPARATOR:Ljava/lang/String;
         3: .line 90
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield javafx.scene.control.skin.TableHeaderRow.columnMenuItems:Ljava/util/Map;
         4: .line 101
            aload 0 /* this */
            new javafx.scene.control.Label
            dup
            invokespecial javafx.scene.control.Label.<init>:()V
            putfield javafx.scene.control.skin.TableHeaderRow.dragHeaderLabel:Ljavafx/scene/control/Label;
         5: .line 127
            aload 0 /* this */
            iconst_0
            putfield javafx.scene.control.skin.TableHeaderRow.columnDragLock:Z
         6: .line 137
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic invalidated(Ljavafx/scene/control/skin/TableHeaderRow;)Ljavafx/beans/InvalidationListener;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljavafx/beans/Observable;)V
                  javafx/scene/control/skin/TableHeaderRow.lambda$0(Ljavafx/beans/Observable;)V (7)
                  (Ljavafx/beans/Observable;)V
            putfield javafx.scene.control.skin.TableHeaderRow.tableWidthListener:Ljavafx/beans/InvalidationListener;
         7: .line 139
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic invalidated(Ljavafx/scene/control/skin/TableHeaderRow;)Ljavafx/beans/InvalidationListener;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljavafx/beans/Observable;)V
                  javafx/scene/control/skin/TableHeaderRow.lambda$1(Ljavafx/beans/Observable;)V (7)
                  (Ljavafx/beans/Observable;)V
            putfield javafx.scene.control.skin.TableHeaderRow.tablePaddingListener:Ljavafx/beans/InvalidationListener;
         8: .line 142
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic onChanged(Ljavafx/scene/control/skin/TableHeaderRow;)Ljavafx/collections/ListChangeListener;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljavafx/collections/ListChangeListener$Change;)V
                  javafx/scene/control/skin/TableHeaderRow.lambda$2(Ljavafx/collections/ListChangeListener$Change;)V (7)
                  (Ljavafx/collections/ListChangeListener$Change;)V
            putfield javafx.scene.control.skin.TableHeaderRow.visibleLeafColumnsListener:Ljavafx/collections/ListChangeListener;
         9: .line 144
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic onChanged(Ljavafx/scene/control/skin/TableHeaderRow;)Ljavafx/collections/ListChangeListener;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljavafx/collections/ListChangeListener$Change;)V
                  javafx/scene/control/skin/TableHeaderRow.lambda$3(Ljavafx/collections/ListChangeListener$Change;)V (7)
                  (Ljavafx/collections/ListChangeListener$Change;)V
            putfield javafx.scene.control.skin.TableHeaderRow.tableColumnsListener:Ljavafx/collections/ListChangeListener;
        10: .line 150
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic invalidated(Ljavafx/scene/control/skin/TableHeaderRow;)Ljavafx/beans/InvalidationListener;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljavafx/beans/Observable;)V
                  javafx/scene/control/skin/TableHeaderRow.lambda$4(Ljavafx/beans/Observable;)V (7)
                  (Ljavafx/beans/Observable;)V
            putfield javafx.scene.control.skin.TableHeaderRow.columnTextListener:Ljavafx/beans/InvalidationListener;
        11: .line 158
            aload 0 /* this */
        12: .line 159
            new javafx.beans.WeakInvalidationListener
            dup
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.tableWidthListener:Ljavafx/beans/InvalidationListener;
            invokespecial javafx.beans.WeakInvalidationListener.<init>:(Ljavafx/beans/InvalidationListener;)V
            putfield javafx.scene.control.skin.TableHeaderRow.weakTableWidthListener:Ljavafx/beans/WeakInvalidationListener;
        13: .line 161
            aload 0 /* this */
        14: .line 162
            new javafx.beans.WeakInvalidationListener
            dup
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.tablePaddingListener:Ljavafx/beans/InvalidationListener;
            invokespecial javafx.beans.WeakInvalidationListener.<init>:(Ljavafx/beans/InvalidationListener;)V
            putfield javafx.scene.control.skin.TableHeaderRow.weakTablePaddingListener:Ljavafx/beans/WeakInvalidationListener;
        15: .line 164
            aload 0 /* this */
        16: .line 165
            new javafx.collections.WeakListChangeListener
            dup
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.visibleLeafColumnsListener:Ljavafx/collections/ListChangeListener;
            invokespecial javafx.collections.WeakListChangeListener.<init>:(Ljavafx/collections/ListChangeListener;)V
            putfield javafx.scene.control.skin.TableHeaderRow.weakVisibleLeafColumnsListener:Ljavafx/collections/WeakListChangeListener;
        17: .line 167
            aload 0 /* this */
        18: .line 168
            new javafx.collections.WeakListChangeListener
            dup
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.tableColumnsListener:Ljavafx/collections/ListChangeListener;
            invokespecial javafx.collections.WeakListChangeListener.<init>:(Ljavafx/collections/ListChangeListener;)V
            putfield javafx.scene.control.skin.TableHeaderRow.weakTableColumnsListener:Ljavafx/collections/WeakListChangeListener;
        19: .line 170
            aload 0 /* this */
        20: .line 171
            new javafx.beans.WeakInvalidationListener
            dup
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.columnTextListener:Ljavafx/beans/InvalidationListener;
            invokespecial javafx.beans.WeakInvalidationListener.<init>:(Ljavafx/beans/InvalidationListener;)V
            putfield javafx.scene.control.skin.TableHeaderRow.weakColumnTextListener:Ljavafx/beans/WeakInvalidationListener;
        21: .line 290
            aload 0 /* this */
            new javafx.scene.control.skin.TableHeaderRow$1
            dup
            aload 0 /* this */
            aload 0 /* this */
            ldc "reordering"
            iconst_0
            invokespecial javafx.scene.control.skin.TableHeaderRow$1.<init>:(Ljavafx/scene/control/skin/TableHeaderRow;Ljava/lang/Object;Ljava/lang/String;Z)V
            putfield javafx.scene.control.skin.TableHeaderRow.reordering:Ljavafx/beans/property/BooleanProperty;
        22: .line 326
            aload 0 /* this */
            new javafx.beans.property.ReadOnlyObjectWrapper
            dup
            aload 0 /* this */
            ldc "rootHeader"
            invokespecial javafx.beans.property.ReadOnlyObjectWrapper.<init>:(Ljava/lang/Object;Ljava/lang/String;)V
            putfield javafx.scene.control.skin.TableHeaderRow.rootHeader:Ljavafx/beans/property/ReadOnlyObjectWrapper;
        23: .line 189
            aload 0 /* this */
            aload 1 /* skin */
            putfield javafx.scene.control.skin.TableHeaderRow.tableSkin:Ljavafx/scene/control/skin/TableViewSkinBase;
        24: .line 190
            aload 0 /* this */
            aload 1 /* skin */
            getfield javafx.scene.control.skin.TableViewSkinBase.flow:Ljavafx/scene/control/skin/VirtualFlow;
            putfield javafx.scene.control.skin.TableHeaderRow.flow:Ljavafx/scene/control/skin/VirtualFlow;
        25: .line 192
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.getStyleClass:()Ljavafx/collections/ObservableList;
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "column-header-background"
            aastore
            invokeinterface javafx.collections.ObservableList.setAll:([Ljava/lang/Object;)Z
            pop
        26: .line 195
            aload 0 /* this */
            new javafx.scene.shape.Rectangle
            dup
            invokespecial javafx.scene.shape.Rectangle.<init>:()V
            putfield javafx.scene.control.skin.TableHeaderRow.clip:Ljavafx/scene/shape/Rectangle;
        27: .line 196
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.clip:Ljavafx/scene/shape/Rectangle;
            iconst_0
            invokevirtual javafx.scene.shape.Rectangle.setSmooth:(Z)V
        28: .line 197
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.clip:Ljavafx/scene/shape/Rectangle;
            invokevirtual javafx.scene.shape.Rectangle.heightProperty:()Ljavafx/beans/property/DoubleProperty;
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.heightProperty:()Ljavafx/beans/property/ReadOnlyDoubleProperty;
            invokevirtual javafx.beans.property.DoubleProperty.bind:(Ljavafx/beans/value/ObservableValue;)V
        29: .line 198
            aload 0 /* this */
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.clip:Ljavafx/scene/shape/Rectangle;
            invokevirtual javafx.scene.control.skin.TableHeaderRow.setClip:(Ljavafx/scene/Node;)V
        30: .line 201
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.updateTableWidth:()V
        31: .line 202
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.tableSkin:Ljavafx/scene/control/skin/TableViewSkinBase;
            invokevirtual javafx.scene.control.skin.TableViewSkinBase.getSkinnable:()Ljavafx/scene/control/Control;
            invokevirtual javafx.scene.control.Control.widthProperty:()Ljavafx/beans/property/ReadOnlyDoubleProperty;
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.weakTableWidthListener:Ljavafx/beans/WeakInvalidationListener;
            invokevirtual javafx.beans.property.ReadOnlyDoubleProperty.addListener:(Ljavafx/beans/InvalidationListener;)V
        32: .line 203
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.tableSkin:Ljavafx/scene/control/skin/TableViewSkinBase;
            invokevirtual javafx.scene.control.skin.TableViewSkinBase.getSkinnable:()Ljavafx/scene/control/Control;
            invokevirtual javafx.scene.control.Control.paddingProperty:()Ljavafx/beans/property/ObjectProperty;
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.weakTablePaddingListener:Ljavafx/beans/WeakInvalidationListener;
            invokevirtual javafx.beans.property.ObjectProperty.addListener:(Ljavafx/beans/InvalidationListener;)V
        33: .line 204
            aload 1 /* skin */
            invokestatic javafx.scene.control.skin.TableSkinUtils.getVisibleLeafColumns:(Ljavafx/scene/control/skin/TableViewSkinBase;)Ljavafx/collections/ObservableList;
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.weakVisibleLeafColumnsListener:Ljavafx/collections/WeakListChangeListener;
            invokeinterface javafx.collections.ObservableList.addListener:(Ljavafx/collections/ListChangeListener;)V
        34: .line 207
            aload 0 /* this */
            new javafx.scene.control.ContextMenu
            dup
            invokespecial javafx.scene.control.ContextMenu.<init>:()V
            putfield javafx.scene.control.skin.TableHeaderRow.columnPopupMenu:Ljavafx/scene/control/ContextMenu;
        35: .line 208
            aload 0 /* this */
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.tableSkin:Ljavafx/scene/control/skin/TableViewSkinBase;
            invokestatic javafx.scene.control.skin.TableSkinUtils.getColumns:(Ljavafx/scene/control/skin/TableViewSkinBase;)Ljavafx/collections/ObservableList;
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            invokevirtual javafx.scene.control.skin.TableHeaderRow.updateTableColumnListeners:(Ljava/util/List;Ljava/util/List;)V
        36: .line 209
            aload 1 /* skin */
            invokestatic javafx.scene.control.skin.TableSkinUtils.getVisibleLeafColumns:(Ljavafx/scene/control/skin/TableViewSkinBase;)Ljavafx/collections/ObservableList;
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.weakTableColumnsListener:Ljavafx/collections/WeakListChangeListener;
            invokeinterface javafx.collections.ObservableList.addListener:(Ljavafx/collections/ListChangeListener;)V
        37: .line 210
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.tableSkin:Ljavafx/scene/control/skin/TableViewSkinBase;
            invokestatic javafx.scene.control.skin.TableSkinUtils.getColumns:(Ljavafx/scene/control/skin/TableViewSkinBase;)Ljavafx/collections/ObservableList;
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.weakTableColumnsListener:Ljavafx/collections/WeakListChangeListener;
            invokeinterface javafx.collections.ObservableList.addListener:(Ljavafx/collections/ListChangeListener;)V
        38: .line 213
            aload 0 /* this */
            new javafx.scene.layout.StackPane
            dup
            invokespecial javafx.scene.layout.StackPane.<init>:()V
            putfield javafx.scene.control.skin.TableHeaderRow.dragHeader:Ljavafx/scene/layout/StackPane;
        39: .line 214
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.dragHeader:Ljavafx/scene/layout/StackPane;
            iconst_0
            invokevirtual javafx.scene.layout.StackPane.setVisible:(Z)V
        40: .line 215
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.dragHeader:Ljavafx/scene/layout/StackPane;
            invokevirtual javafx.scene.layout.StackPane.getStyleClass:()Ljavafx/collections/ObservableList;
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "column-drag-header"
            aastore
            invokeinterface javafx.collections.ObservableList.setAll:([Ljava/lang/Object;)Z
            pop
        41: .line 216
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.dragHeader:Ljavafx/scene/layout/StackPane;
            iconst_0
            invokevirtual javafx.scene.layout.StackPane.setManaged:(Z)V
        42: .line 217
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.dragHeader:Ljavafx/scene/layout/StackPane;
            iconst_1
            invokevirtual javafx.scene.layout.StackPane.setMouseTransparent:(Z)V
        43: .line 218
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.dragHeader:Ljavafx/scene/layout/StackPane;
            invokevirtual javafx.scene.layout.StackPane.getChildren:()Ljavafx/collections/ObservableList;
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.dragHeaderLabel:Ljavafx/scene/control/Label;
            invokeinterface javafx.collections.ObservableList.add:(Ljava/lang/Object;)Z
            pop
        44: .line 221
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.createRootHeader:()Ljavafx/scene/control/skin/NestedTableColumnHeader;
            astore 2 /* rootHeader */
        start local 2 // javafx.scene.control.skin.NestedTableColumnHeader rootHeader
        45: .line 222
            aload 0 /* this */
            aload 2 /* rootHeader */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.setRootHeader:(Ljavafx/scene/control/skin/NestedTableColumnHeader;)V
        46: .line 223
            aload 2 /* rootHeader */
            iconst_0
            invokevirtual javafx.scene.control.skin.NestedTableColumnHeader.setFocusTraversable:(Z)V
        47: .line 224
            aload 2 /* rootHeader */
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.NestedTableColumnHeader.setTableHeaderRow:(Ljavafx/scene/control/skin/TableHeaderRow;)V
        48: .line 228
            aload 0 /* this */
            new javafx.scene.layout.Region
            dup
            invokespecial javafx.scene.layout.Region.<init>:()V
            putfield javafx.scene.control.skin.TableHeaderRow.filler:Ljavafx/scene/layout/Region;
        49: .line 229
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.filler:Ljavafx/scene/layout/Region;
            invokevirtual javafx.scene.layout.Region.getStyleClass:()Ljavafx/collections/ObservableList;
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "filler"
            aastore
            invokeinterface javafx.collections.ObservableList.setAll:([Ljava/lang/Object;)Z
            pop
        50: .line 233
            aload 0 /* this */
            aload 1 /* skin */
            invokedynamic handle(Ljavafx/scene/control/skin/TableViewSkinBase;)Ljavafx/event/EventHandler;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljavafx/event/Event;)V
                  javafx/scene/control/skin/TableHeaderRow.lambda$5(Ljavafx/scene/control/skin/TableViewSkinBase;Ljavafx/scene/input/MouseEvent;)V (6)
                  (Ljavafx/scene/input/MouseEvent;)V
            invokevirtual javafx.scene.control.skin.TableHeaderRow.setOnMousePressed:(Ljavafx/event/EventHandler;)V
        51: .line 238
            new javafx.scene.layout.StackPane
            dup
            invokespecial javafx.scene.layout.StackPane.<init>:()V
            astore 3 /* image */
        start local 3 // javafx.scene.layout.StackPane image
        52: .line 239
            aload 3 /* image */
            iconst_0
            invokevirtual javafx.scene.layout.StackPane.setSnapToPixel:(Z)V
        53: .line 240
            aload 3 /* image */
            invokevirtual javafx.scene.layout.StackPane.getStyleClass:()Ljavafx/collections/ObservableList;
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "show-hide-column-image"
            aastore
            invokeinterface javafx.collections.ObservableList.setAll:([Ljava/lang/Object;)Z
            pop
        54: .line 241
            aload 0 /* this */
            new javafx.scene.control.skin.TableHeaderRow$2
            dup
            aload 0 /* this */
            aload 3 /* image */
            invokespecial javafx.scene.control.skin.TableHeaderRow$2.<init>:(Ljavafx/scene/control/skin/TableHeaderRow;Ljavafx/scene/layout/StackPane;)V
            putfield javafx.scene.control.skin.TableHeaderRow.cornerRegion:Ljavafx/scene/layout/Pane;
        55: .line 251
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.cornerRegion:Ljavafx/scene/layout/Pane;
            invokevirtual javafx.scene.layout.Pane.getStyleClass:()Ljavafx/collections/ObservableList;
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "show-hide-columns-button"
            aastore
            invokeinterface javafx.collections.ObservableList.setAll:([Ljava/lang/Object;)Z
            pop
        56: .line 252
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.cornerRegion:Ljavafx/scene/layout/Pane;
            invokevirtual javafx.scene.layout.Pane.getChildren:()Ljavafx/collections/ObservableList;
            iconst_1
            anewarray javafx.scene.Node
            dup
            iconst_0
            aload 3 /* image */
            aastore
            invokeinterface javafx.collections.ObservableList.addAll:([Ljava/lang/Object;)Z
            pop
        57: .line 254
            aload 1 /* skin */
            invokestatic javafx.scene.control.skin.TableSkinUtils.tableMenuButtonVisibleProperty:(Ljavafx/scene/control/skin/TableViewSkinBase;)Ljavafx/beans/property/BooleanProperty;
            astore 4 /* tableMenuButtonVisibleProperty */
        start local 4 // javafx.beans.property.BooleanProperty tableMenuButtonVisibleProperty
        58: .line 255
            aload 4 /* tableMenuButtonVisibleProperty */
            ifnull 60
        59: .line 256
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.cornerRegion:Ljavafx/scene/layout/Pane;
            invokevirtual javafx.scene.layout.Pane.visibleProperty:()Ljavafx/beans/property/BooleanProperty;
            aload 4 /* tableMenuButtonVisibleProperty */
            invokevirtual javafx.beans.property.BooleanProperty.bind:(Ljavafx/beans/value/ObservableValue;)V
        60: .line 259
      StackMap locals: javafx.scene.control.skin.TableHeaderRow javafx.scene.control.skin.TableViewSkinBase javafx.scene.control.skin.NestedTableColumnHeader javafx.scene.layout.StackPane javafx.beans.property.BooleanProperty
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.cornerRegion:Ljavafx/scene/layout/Pane;
            aload 0 /* this */
            invokedynamic handle(Ljavafx/scene/control/skin/TableHeaderRow;)Ljavafx/event/EventHandler;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljavafx/event/Event;)V
                  javafx/scene/control/skin/TableHeaderRow.lambda$6(Ljavafx/scene/input/MouseEvent;)V (7)
                  (Ljavafx/scene/input/MouseEvent;)V
            invokevirtual javafx.scene.layout.Pane.setOnMousePressed:(Ljavafx/event/EventHandler;)V
        61: .line 269
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.getChildren:()Ljavafx/collections/ObservableList;
            iconst_4
            anewarray javafx.scene.Node
            dup
            iconst_0
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.filler:Ljavafx/scene/layout/Region;
            aastore
            dup
            iconst_1
            aload 2 /* rootHeader */
            aastore
            dup
            iconst_2
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.cornerRegion:Ljavafx/scene/layout/Pane;
            aastore
            dup
            iconst_3
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.dragHeader:Ljavafx/scene/layout/StackPane;
            aastore
            invokeinterface javafx.collections.ObservableList.addAll:([Ljava/lang/Object;)Z
            pop
        62: .line 270
            return
        end local 4 // javafx.beans.property.BooleanProperty tableMenuButtonVisibleProperty
        end local 3 // javafx.scene.layout.StackPane image
        end local 2 // javafx.scene.control.skin.NestedTableColumnHeader rootHeader
        end local 1 // javafx.scene.control.skin.TableViewSkinBase skin
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot                            Name  Signature
            0   63     0                            this  Ljavafx/scene/control/skin/TableHeaderRow;
            0   63     1                            skin  Ljavafx/scene/control/skin/TableViewSkinBase;
           45   63     2                      rootHeader  Ljavafx/scene/control/skin/NestedTableColumnHeader;
           52   63     3                           image  Ljavafx/scene/layout/StackPane;
           58   63     4  tableMenuButtonVisibleProperty  Ljavafx/beans/property/BooleanProperty;
    MethodParameters:
      Name  Flags
      skin  final

  public final void setReordering(boolean);
    descriptor: (Z)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // boolean value
         0: .line 306
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.reordering:Ljavafx/beans/property/BooleanProperty;
            iload 1 /* value */
            invokevirtual javafx.beans.property.BooleanProperty.set:(Z)V
         1: .line 307
            return
        end local 1 // boolean value
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljavafx/scene/control/skin/TableHeaderRow;
            0    2     1  value  Z
    MethodParameters:
       Name  Flags
      value  

  public final boolean isReordering();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
         0: .line 310
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.reordering:Ljavafx/beans/property/BooleanProperty;
            invokevirtual javafx.beans.property.BooleanProperty.get:()Z
            ireturn
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/skin/TableHeaderRow;

  public final javafx.beans.property.BooleanProperty reorderingProperty();
    descriptor: ()Ljavafx/beans/property/BooleanProperty;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
         0: .line 314
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.reordering:Ljavafx/beans/property/BooleanProperty;
            areturn
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/skin/TableHeaderRow;

  private final javafx.beans.property.ReadOnlyObjectProperty<javafx.scene.control.skin.NestedTableColumnHeader> rootHeaderProperty();
    descriptor: ()Ljavafx/beans/property/ReadOnlyObjectProperty;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
         0: .line 328
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.rootHeader:Ljavafx/beans/property/ReadOnlyObjectWrapper;
            invokevirtual javafx.beans.property.ReadOnlyObjectWrapper.getReadOnlyProperty:()Ljavafx/beans/property/ReadOnlyObjectProperty;
            areturn
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/skin/TableHeaderRow;
    Signature: ()Ljavafx/beans/property/ReadOnlyObjectProperty<Ljavafx/scene/control/skin/NestedTableColumnHeader;>;

  public final javafx.scene.control.skin.NestedTableColumnHeader getRootHeader();
    descriptor: ()Ljavafx/scene/control/skin/NestedTableColumnHeader;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
         0: .line 343
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.rootHeader:Ljavafx/beans/property/ReadOnlyObjectWrapper;
            invokevirtual javafx.beans.property.ReadOnlyObjectWrapper.get:()Ljava/lang/Object;
            checkcast javafx.scene.control.skin.NestedTableColumnHeader
            areturn
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/skin/TableHeaderRow;

  private final void setRootHeader(javafx.scene.control.skin.NestedTableColumnHeader);
    descriptor: (Ljavafx/scene/control/skin/NestedTableColumnHeader;)V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // javafx.scene.control.skin.NestedTableColumnHeader value
         0: .line 347
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.rootHeader:Ljavafx/beans/property/ReadOnlyObjectWrapper;
            aload 1 /* value */
            invokevirtual javafx.beans.property.ReadOnlyObjectWrapper.set:(Ljava/lang/Object;)V
         1: .line 348
            return
        end local 1 // javafx.scene.control.skin.NestedTableColumnHeader value
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljavafx/scene/control/skin/TableHeaderRow;
            0    2     1  value  Ljavafx/scene/control/skin/NestedTableColumnHeader;
    MethodParameters:
       Name  Flags
      value  

  protected void layoutChildren();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=9, locals=15, args_size=1
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
         0: .line 360
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.scrollX:D
            dstore 1 /* x */
        start local 1 // double x
         1: .line 361
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.getRootHeader:()Ljavafx/scene/control/skin/NestedTableColumnHeader;
            ldc -1.0
            invokevirtual javafx.scene.control.skin.NestedTableColumnHeader.prefWidth:(D)D
            invokevirtual javafx.scene.control.skin.TableHeaderRow.snapSizeX:(D)D
            dstore 3 /* headerWidth */
        start local 3 // double headerWidth
         2: .line 362
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.getHeight:()D
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.snappedTopInset:()D
            dsub
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.snappedBottomInset:()D
            dsub
            dstore 5 /* prefHeight */
        start local 5 // double prefHeight
         3: .line 363
            aload 0 /* this */
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.flow:Ljavafx/scene/control/skin/VirtualFlow;
            invokevirtual javafx.scene.control.skin.VirtualFlow.getVbar:()Ljavafx/scene/control/ScrollBar;
            ldc -1.0
            invokevirtual javafx.scene.control.ScrollBar.prefWidth:(D)D
            invokevirtual javafx.scene.control.skin.TableHeaderRow.snapSizeX:(D)D
            dstore 7 /* cornerWidth */
        start local 7 // double cornerWidth
         4: .line 366
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.getRootHeader:()Ljavafx/scene/control/skin/NestedTableColumnHeader;
            dload 1 /* x */
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.snappedTopInset:()D
            dload 3 /* headerWidth */
            dload 5 /* prefHeight */
            invokevirtual javafx.scene.control.skin.NestedTableColumnHeader.resizeRelocate:(DDDD)V
         5: .line 369
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.tableSkin:Ljavafx/scene/control/skin/TableViewSkinBase;
            invokevirtual javafx.scene.control.skin.TableViewSkinBase.getSkinnable:()Ljavafx/scene/control/Control;
            astore 9 /* control */
        start local 9 // javafx.scene.control.Control control
         6: .line 370
            aload 9 /* control */
            ifnonnull 8
         7: .line 371
            return
         8: .line 374
      StackMap locals: javafx.scene.control.skin.TableHeaderRow double double double double javafx.scene.control.Control
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.tableSkin:Ljavafx/scene/control/skin/TableViewSkinBase;
            invokestatic javafx.scene.control.skin.TableSkinUtils.tableMenuButtonVisibleProperty:(Ljavafx/scene/control/skin/TableViewSkinBase;)Ljavafx/beans/property/BooleanProperty;
            astore 10 /* tableMenuButtonVisibleProperty */
        start local 10 // javafx.beans.property.BooleanProperty tableMenuButtonVisibleProperty
         9: .line 376
            aload 9 /* control */
            invokevirtual javafx.scene.control.Control.snappedLeftInset:()D
            aload 9 /* control */
            invokevirtual javafx.scene.control.Control.snappedRightInset:()D
            dadd
            dstore 11 /* controlInsets */
        start local 11 // double controlInsets
        10: .line 377
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.tableWidth:D
            dload 3 /* headerWidth */
            dsub
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.filler:Ljavafx/scene/layout/Region;
            invokevirtual javafx.scene.layout.Region.getInsets:()Ljavafx/geometry/Insets;
            invokevirtual javafx.geometry.Insets.getLeft:()D
            dadd
            dload 11 /* controlInsets */
            dsub
            dstore 13 /* fillerWidth */
        start local 13 // double fillerWidth
        11: .line 378
            dload 13 /* fillerWidth */
            aload 10 /* tableMenuButtonVisibleProperty */
            ifnull 12
            aload 10 /* tableMenuButtonVisibleProperty */
            invokevirtual javafx.beans.property.BooleanProperty.get:()Z
            ifeq 12
            dload 7 /* cornerWidth */
            goto 13
      StackMap locals: javafx.scene.control.skin.TableHeaderRow double double double double javafx.scene.control.Control javafx.beans.property.BooleanProperty double double
      StackMap stack: double
        12: dconst_0
      StackMap locals: javafx.scene.control.skin.TableHeaderRow double double double double javafx.scene.control.Control javafx.beans.property.BooleanProperty double double
      StackMap stack: double double
        13: dsub
            dstore 13 /* fillerWidth */
        14: .line 379
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.filler:Ljavafx/scene/layout/Region;
            dload 13 /* fillerWidth */
            dconst_0
            dcmpl
            ifle 15
            iconst_1
            goto 16
      StackMap locals:
      StackMap stack: javafx.scene.layout.Region
        15: iconst_0
      StackMap locals: javafx.scene.control.skin.TableHeaderRow double double double double javafx.scene.control.Control javafx.beans.property.BooleanProperty double double
      StackMap stack: javafx.scene.layout.Region int
        16: invokevirtual javafx.scene.layout.Region.setVisible:(Z)V
        17: .line 380
            dload 13 /* fillerWidth */
            dconst_0
            dcmpl
            ifle 19
        18: .line 381
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.filler:Ljavafx/scene/layout/Region;
            dload 1 /* x */
            dload 3 /* headerWidth */
            dadd
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.snappedTopInset:()D
            dload 13 /* fillerWidth */
            dload 5 /* prefHeight */
            invokevirtual javafx.scene.layout.Region.resizeRelocate:(DDDD)V
        19: .line 385
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.cornerRegion:Ljavafx/scene/layout/Pane;
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.tableWidth:D
            dload 7 /* cornerWidth */
            dsub
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.snappedTopInset:()D
            dload 7 /* cornerWidth */
            dload 5 /* prefHeight */
            invokevirtual javafx.scene.layout.Pane.resizeRelocate:(DDDD)V
        20: .line 386
            return
        end local 13 // double fillerWidth
        end local 11 // double controlInsets
        end local 10 // javafx.beans.property.BooleanProperty tableMenuButtonVisibleProperty
        end local 9 // javafx.scene.control.Control control
        end local 7 // double cornerWidth
        end local 5 // double prefHeight
        end local 3 // double headerWidth
        end local 1 // double x
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot                            Name  Signature
            0   21     0                            this  Ljavafx/scene/control/skin/TableHeaderRow;
            1   21     1                               x  D
            2   21     3                     headerWidth  D
            3   21     5                      prefHeight  D
            4   21     7                     cornerWidth  D
            6   21     9                         control  Ljavafx/scene/control/Control;
            9   21    10  tableMenuButtonVisibleProperty  Ljavafx/beans/property/BooleanProperty;
           10   21    11                   controlInsets  D
           11   21    13                     fillerWidth  D

  protected double computePrefWidth(double);
    descriptor: (D)D
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // double height
         0: .line 390
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.getRootHeader:()Ljavafx/scene/control/skin/NestedTableColumnHeader;
            dload 1 /* height */
            invokevirtual javafx.scene.control.skin.NestedTableColumnHeader.prefWidth:(D)D
            dreturn
        end local 1 // double height
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Ljavafx/scene/control/skin/TableHeaderRow;
            0    1     1  height  D
    MethodParameters:
        Name  Flags
      height  

  protected double computeMinHeight(double);
    descriptor: (D)D
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // double width
         0: .line 395
            aload 0 /* this */
            dload 1 /* width */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.computePrefHeight:(D)D
            dreturn
        end local 1 // double width
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljavafx/scene/control/skin/TableHeaderRow;
            0    1     1  width  D
    MethodParameters:
       Name  Flags
      width  

  protected double computePrefHeight(double);
    descriptor: (D)D
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // double width
         0: .line 402
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.getRootHeader:()Ljavafx/scene/control/skin/NestedTableColumnHeader;
            dload 1 /* width */
            invokevirtual javafx.scene.control.skin.NestedTableColumnHeader.prefHeight:(D)D
            dstore 3 /* headerPrefHeight */
        start local 3 // double headerPrefHeight
         1: .line 403
            dload 3 /* headerPrefHeight */
            dconst_0
            dcmpl
            ifne 2
            ldc 24.0
            goto 3
      StackMap locals: double
      StackMap stack:
         2: dload 3 /* headerPrefHeight */
      StackMap locals:
      StackMap stack: double
         3: dstore 3 /* headerPrefHeight */
         4: .line 404
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.snappedTopInset:()D
            dload 3 /* headerPrefHeight */
            dadd
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.snappedBottomInset:()D
            dadd
            dreturn
        end local 3 // double headerPrefHeight
        end local 1 // double width
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    5     0              this  Ljavafx/scene/control/skin/TableHeaderRow;
            0    5     1             width  D
            1    5     3  headerPrefHeight  D
    MethodParameters:
       Name  Flags
      width  

  protected void updateScrollX();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
         0: .line 418
            aload 0 /* this */
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.flow:Ljavafx/scene/control/skin/VirtualFlow;
            invokevirtual javafx.scene.control.skin.VirtualFlow.getHbar:()Ljavafx/scene/control/ScrollBar;
            invokevirtual javafx.scene.control.ScrollBar.isVisible:()Z
            ifeq 1
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.flow:Ljavafx/scene/control/skin/VirtualFlow;
            invokevirtual javafx.scene.control.skin.VirtualFlow.getHbar:()Ljavafx/scene/control/ScrollBar;
            invokevirtual javafx.scene.control.ScrollBar.getValue:()D
            dneg
            goto 2
      StackMap locals:
      StackMap stack: javafx.scene.control.skin.TableHeaderRow
         1: dconst_0
      StackMap locals: javafx.scene.control.skin.TableHeaderRow
      StackMap stack: javafx.scene.control.skin.TableHeaderRow double
         2: putfield javafx.scene.control.skin.TableHeaderRow.scrollX:D
         3: .line 419
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.requestLayout:()V
         4: .line 424
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.layout:()V
         5: .line 425
            return
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljavafx/scene/control/skin/TableHeaderRow;

  protected void updateTableWidth();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
         0: .line 443
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.tableSkin:Ljavafx/scene/control/skin/TableViewSkinBase;
            invokevirtual javafx.scene.control.skin.TableViewSkinBase.getSkinnable:()Ljavafx/scene/control/Control;
            astore 1 /* c */
        start local 1 // javafx.scene.control.Control c
         1: .line 444
            aload 1 /* c */
            ifnonnull 4
         2: .line 445
            aload 0 /* this */
            dconst_0
            putfield javafx.scene.control.skin.TableHeaderRow.tableWidth:D
         3: .line 446
            goto 9
         4: .line 447
      StackMap locals: javafx.scene.control.Control
      StackMap stack:
            aload 1 /* c */
            invokevirtual javafx.scene.control.Control.getInsets:()Ljavafx/geometry/Insets;
            ifnonnull 5
            getstatic javafx.geometry.Insets.EMPTY:Ljavafx/geometry/Insets;
            goto 6
      StackMap locals:
      StackMap stack:
         5: aload 1 /* c */
            invokevirtual javafx.scene.control.Control.getInsets:()Ljavafx/geometry/Insets;
      StackMap locals:
      StackMap stack: javafx.geometry.Insets
         6: astore 2 /* insets */
        start local 2 // javafx.geometry.Insets insets
         7: .line 448
            aload 0 /* this */
            aload 2 /* insets */
            invokevirtual javafx.geometry.Insets.getLeft:()D
            invokevirtual javafx.scene.control.skin.TableHeaderRow.snapSizeX:(D)D
            aload 0 /* this */
            aload 2 /* insets */
            invokevirtual javafx.geometry.Insets.getRight:()D
            invokevirtual javafx.scene.control.skin.TableHeaderRow.snapSizeX:(D)D
            dadd
            dstore 3 /* padding */
        start local 3 // double padding
         8: .line 449
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* c */
            invokevirtual javafx.scene.control.Control.getWidth:()D
            invokevirtual javafx.scene.control.skin.TableHeaderRow.snapSizeX:(D)D
            dload 3 /* padding */
            dsub
            putfield javafx.scene.control.skin.TableHeaderRow.tableWidth:D
        end local 3 // double padding
        end local 2 // javafx.geometry.Insets insets
         9: .line 452
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.clip:Ljavafx/scene/shape/Rectangle;
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.tableWidth:D
            invokevirtual javafx.scene.shape.Rectangle.setWidth:(D)V
        10: .line 453
            return
        end local 1 // javafx.scene.control.Control c
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Ljavafx/scene/control/skin/TableHeaderRow;
            1   11     1        c  Ljavafx/scene/control/Control;
            7    9     2   insets  Ljavafx/geometry/Insets;
            8    9     3  padding  D

  protected javafx.scene.control.skin.NestedTableColumnHeader createRootHeader();
    descriptor: ()Ljavafx/scene/control/skin/NestedTableColumnHeader;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
         0: .line 462
            new javafx.scene.control.skin.NestedTableColumnHeader
            dup
            aconst_null
            invokespecial javafx.scene.control.skin.NestedTableColumnHeader.<init>:(Ljavafx/scene/control/TableColumnBase;)V
            areturn
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/skin/TableHeaderRow;

  protected javafx.scene.control.skin.TableColumnHeader getReorderingRegion();
    descriptor: ()Ljavafx/scene/control/skin/TableColumnHeader;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
         0: .line 480
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.reorderingRegion:Ljavafx/scene/control/skin/TableColumnHeader;
            areturn
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/skin/TableHeaderRow;

  void setReorderingColumn(javafx.scene.control.TableColumnBase);
    descriptor: (Ljavafx/scene/control/TableColumnBase;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // javafx.scene.control.TableColumnBase rc
         0: .line 484
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.dragHeaderLabel:Ljavafx/scene/control/Label;
            aload 1 /* rc */
            ifnonnull 1
            ldc ""
            goto 2
      StackMap locals:
      StackMap stack: javafx.scene.control.Label
         1: aload 1 /* rc */
            invokevirtual javafx.scene.control.TableColumnBase.getText:()Ljava/lang/String;
      StackMap locals: javafx.scene.control.skin.TableHeaderRow javafx.scene.control.TableColumnBase
      StackMap stack: javafx.scene.control.Label java.lang.String
         2: invokevirtual javafx.scene.control.Label.setText:(Ljava/lang/String;)V
         3: .line 485
            return
        end local 1 // javafx.scene.control.TableColumnBase rc
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavafx/scene/control/skin/TableHeaderRow;
            0    4     1    rc  Ljavafx/scene/control/TableColumnBase;
    MethodParameters:
      Name  Flags
      rc    

  protected void setReorderingRegion(javafx.scene.control.skin.TableColumnHeader);
    descriptor: (Ljavafx/scene/control/skin/TableColumnHeader;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // javafx.scene.control.skin.TableColumnHeader reorderingRegion
         0: .line 496
            aload 0 /* this */
            aload 1 /* reorderingRegion */
            putfield javafx.scene.control.skin.TableHeaderRow.reorderingRegion:Ljavafx/scene/control/skin/TableColumnHeader;
         1: .line 498
            aload 1 /* reorderingRegion */
            ifnull 3
         2: .line 499
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.dragHeader:Ljavafx/scene/layout/StackPane;
            aload 1 /* reorderingRegion */
            invokevirtual javafx.scene.control.skin.TableColumnHeader.getWidth:()D
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.dragHeader:Ljavafx/scene/layout/StackPane;
            invokevirtual javafx.scene.layout.StackPane.getHeight:()D
            invokevirtual javafx.scene.layout.StackPane.resize:(DD)V
         3: .line 501
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javafx.scene.control.skin.TableColumnHeader reorderingRegion
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0              this  Ljavafx/scene/control/skin/TableHeaderRow;
            0    4     1  reorderingRegion  Ljavafx/scene/control/skin/TableColumnHeader;
    MethodParameters:
                  Name  Flags
      reorderingRegion  

  void setDragHeaderX(double);
    descriptor: (D)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // double dragHeaderX
         0: .line 504
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.dragHeader:Ljavafx/scene/layout/StackPane;
            dload 1 /* dragHeaderX */
            invokevirtual javafx.scene.layout.StackPane.setTranslateX:(D)V
         1: .line 505
            return
        end local 1 // double dragHeaderX
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Ljavafx/scene/control/skin/TableHeaderRow;
            0    2     1  dragHeaderX  D
    MethodParameters:
             Name  Flags
      dragHeaderX  

  javafx.scene.control.skin.TableColumnHeader getColumnHeaderFor(javafx.scene.control.TableColumnBase<?, ?>);
    descriptor: (Ljavafx/scene/control/TableColumnBase;)Ljavafx/scene/control/skin/TableColumnHeader;
    flags: (0x0000) 
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // javafx.scene.control.TableColumnBase col
         0: .line 508
            aload 1 /* col */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 509
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* columnChain */
        start local 2 // java.util.List columnChain
         2: .line 510
            aload 2 /* columnChain */
            aload 1 /* col */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 512
            aload 1 /* col */
            invokevirtual javafx.scene.control.TableColumnBase.getParentColumn:()Ljavafx/scene/control/TableColumnBase;
            astore 3 /* parent */
        start local 3 // javafx.scene.control.TableColumnBase parent
         4: .line 513
            goto 7
         5: .line 514
      StackMap locals: java.util.List javafx.scene.control.TableColumnBase
      StackMap stack:
            aload 2 /* columnChain */
            iconst_0
            aload 3 /* parent */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
         6: .line 515
            aload 3 /* parent */
            invokevirtual javafx.scene.control.TableColumnBase.getParentColumn:()Ljavafx/scene/control/TableColumnBase;
            astore 3 /* parent */
         7: .line 513
      StackMap locals:
      StackMap stack:
            aload 3 /* parent */
            ifnonnull 5
         8: .line 520
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.getRootHeader:()Ljavafx/scene/control/skin/NestedTableColumnHeader;
            astore 4 /* currentHeader */
        start local 4 // javafx.scene.control.skin.TableColumnHeader currentHeader
         9: .line 521
            iconst_0
            istore 5 /* depth */
        start local 5 // int depth
        10: goto 14
        11: .line 523
      StackMap locals: javafx.scene.control.skin.TableColumnHeader int
      StackMap stack:
            aload 2 /* columnChain */
            iload 5 /* depth */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.scene.control.TableColumnBase
            astore 6 /* column */
        start local 6 // javafx.scene.control.TableColumnBase column
        12: .line 527
            aload 0 /* this */
            aload 6 /* column */
            aload 4 /* currentHeader */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.getColumnHeaderFor:(Ljavafx/scene/control/TableColumnBase;Ljavafx/scene/control/skin/TableColumnHeader;)Ljavafx/scene/control/skin/TableColumnHeader;
            astore 4 /* currentHeader */
        end local 6 // javafx.scene.control.TableColumnBase column
        13: .line 521
            iinc 5 /* depth */ 1
      StackMap locals:
      StackMap stack:
        14: iload 5 /* depth */
            aload 2 /* columnChain */
            invokeinterface java.util.List.size:()I
            if_icmplt 11
        end local 5 // int depth
        15: .line 529
            aload 4 /* currentHeader */
            areturn
        end local 4 // javafx.scene.control.skin.TableColumnHeader currentHeader
        end local 3 // javafx.scene.control.TableColumnBase parent
        end local 2 // java.util.List columnChain
        end local 1 // javafx.scene.control.TableColumnBase col
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   16     0           this  Ljavafx/scene/control/skin/TableHeaderRow;
            0   16     1            col  Ljavafx/scene/control/TableColumnBase<**>;
            2   16     2    columnChain  Ljava/util/List<Ljavafx/scene/control/TableColumnBase<**>;>;
            4   16     3         parent  Ljavafx/scene/control/TableColumnBase<**>;
            9   16     4  currentHeader  Ljavafx/scene/control/skin/TableColumnHeader;
           10   15     5          depth  I
           12   13     6         column  Ljavafx/scene/control/TableColumnBase<**>;
    Signature: (Ljavafx/scene/control/TableColumnBase<**>;)Ljavafx/scene/control/skin/TableColumnHeader;
    MethodParameters:
      Name  Flags
      col   final

  private javafx.scene.control.skin.TableColumnHeader getColumnHeaderFor(javafx.scene.control.TableColumnBase<?, ?>, javafx.scene.control.skin.TableColumnHeader);
    descriptor: (Ljavafx/scene/control/TableColumnBase;Ljavafx/scene/control/skin/TableColumnHeader;)Ljavafx/scene/control/skin/TableColumnHeader;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // javafx.scene.control.TableColumnBase col
        start local 2 // javafx.scene.control.skin.TableColumnHeader currentHeader
         0: .line 533
            aload 2 /* currentHeader */
            instanceof javafx.scene.control.skin.NestedTableColumnHeader
            ifeq 9
         1: .line 534
            aload 2 /* currentHeader */
            checkcast javafx.scene.control.skin.NestedTableColumnHeader
            invokevirtual javafx.scene.control.skin.NestedTableColumnHeader.getColumnHeaders:()Ljavafx/collections/ObservableList;
            astore 3 /* headers */
        start local 3 // java.util.List headers
         2: .line 536
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 8
         4: .line 537
      StackMap locals: java.util.List int
      StackMap stack:
            aload 3 /* headers */
            iload 4 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.scene.control.skin.TableColumnHeader
            astore 5 /* header */
        start local 5 // javafx.scene.control.skin.TableColumnHeader header
         5: .line 538
            aload 5 /* header */
            invokevirtual javafx.scene.control.skin.TableColumnHeader.getTableColumn:()Ljavafx/scene/control/TableColumnBase;
            aload 1 /* col */
            if_acmpne 7
         6: .line 539
            aload 5 /* header */
            areturn
        end local 5 // javafx.scene.control.skin.TableColumnHeader header
         7: .line 536
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            aload 3 /* headers */
            invokeinterface java.util.List.size:()I
            if_icmplt 4
        end local 4 // int i
        end local 3 // java.util.List headers
         9: .line 544
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // javafx.scene.control.skin.TableColumnHeader currentHeader
        end local 1 // javafx.scene.control.TableColumnBase col
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   10     0           this  Ljavafx/scene/control/skin/TableHeaderRow;
            0   10     1            col  Ljavafx/scene/control/TableColumnBase<**>;
            0   10     2  currentHeader  Ljavafx/scene/control/skin/TableColumnHeader;
            2    9     3        headers  Ljava/util/List<Ljavafx/scene/control/skin/TableColumnHeader;>;
            3    9     4              i  I
            5    7     5         header  Ljavafx/scene/control/skin/TableColumnHeader;
    Signature: (Ljavafx/scene/control/TableColumnBase<**>;Ljavafx/scene/control/skin/TableColumnHeader;)Ljavafx/scene/control/skin/TableColumnHeader;
    MethodParameters:
               Name  Flags
      col            final
      currentHeader  

  private void updateTableColumnListeners(java.util.List<? extends javafx.scene.control.TableColumnBase<?, ?>>, java.util.List<? extends javafx.scene.control.TableColumnBase<?, ?>>);
    descriptor: (Ljava/util/List;Ljava/util/List;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // java.util.List added
        start local 2 // java.util.List removed
         0: .line 549
            aload 2 /* removed */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 3
      StackMap locals: javafx.scene.control.skin.TableHeaderRow java.util.List java.util.List top java.util.Iterator
      StackMap stack:
         1: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javafx.scene.control.TableColumnBase
            astore 3 /* tc */
        start local 3 // javafx.scene.control.TableColumnBase tc
         2: .line 550
            aload 0 /* this */
            aload 3 /* tc */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.remove:(Ljavafx/scene/control/TableColumnBase;)V
        end local 3 // javafx.scene.control.TableColumnBase tc
         3: .line 549
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 553
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.rebuildColumnMenu:()V
         5: .line 554
            return
        end local 2 // java.util.List removed
        end local 1 // java.util.List added
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Ljavafx/scene/control/skin/TableHeaderRow;
            0    6     1    added  Ljava/util/List<+Ljavafx/scene/control/TableColumnBase<**>;>;
            0    6     2  removed  Ljava/util/List<+Ljavafx/scene/control/TableColumnBase<**>;>;
            2    3     3       tc  Ljavafx/scene/control/TableColumnBase;
    Signature: (Ljava/util/List<+Ljavafx/scene/control/TableColumnBase<**>;>;Ljava/util/List<+Ljavafx/scene/control/TableColumnBase<**>;>;)V
    MethodParameters:
         Name  Flags
      added    
      removed  

  private void remove(javafx.scene.control.TableColumnBase<?, ?>);
    descriptor: (Ljavafx/scene/control/TableColumnBase;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // javafx.scene.control.TableColumnBase col
         0: .line 557
            aload 1 /* col */
            ifnonnull 1
            return
         1: .line 559
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.columnMenuItems:Ljava/util/Map;
            aload 1 /* col */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javafx.scene.control.CheckMenuItem
            astore 2 /* item */
        start local 2 // javafx.scene.control.CheckMenuItem item
         2: .line 560
            aload 2 /* item */
            ifnull 6
         3: .line 561
            aload 1 /* col */
            invokevirtual javafx.scene.control.TableColumnBase.textProperty:()Ljavafx/beans/property/StringProperty;
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.weakColumnTextListener:Ljavafx/beans/WeakInvalidationListener;
            invokevirtual javafx.beans.property.StringProperty.removeListener:(Ljavafx/beans/InvalidationListener;)V
         4: .line 562
            aload 2 /* item */
            invokevirtual javafx.scene.control.CheckMenuItem.selectedProperty:()Ljavafx/beans/property/BooleanProperty;
            aload 1 /* col */
            invokevirtual javafx.scene.control.TableColumnBase.visibleProperty:()Ljavafx/beans/property/BooleanProperty;
            invokevirtual javafx.beans.property.BooleanProperty.unbindBidirectional:(Ljavafx/beans/property/Property;)V
         5: .line 564
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.columnPopupMenu:Ljavafx/scene/control/ContextMenu;
            invokevirtual javafx.scene.control.ContextMenu.getItems:()Ljavafx/collections/ObservableList;
            aload 2 /* item */
            invokeinterface javafx.collections.ObservableList.remove:(Ljava/lang/Object;)Z
            pop
         6: .line 567
      StackMap locals: javafx.scene.control.CheckMenuItem
      StackMap stack:
            aload 1 /* col */
            invokevirtual javafx.scene.control.TableColumnBase.getColumns:()Ljavafx/collections/ObservableList;
            invokeinterface javafx.collections.ObservableList.isEmpty:()Z
            ifne 11
         7: .line 568
            aload 1 /* col */
            invokevirtual javafx.scene.control.TableColumnBase.getColumns:()Ljavafx/collections/ObservableList;
            invokeinterface javafx.collections.ObservableList.iterator:()Ljava/util/Iterator;
            astore 4
            goto 10
      StackMap locals: javafx.scene.control.skin.TableHeaderRow javafx.scene.control.TableColumnBase javafx.scene.control.CheckMenuItem top java.util.Iterator
      StackMap stack:
         8: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javafx.scene.control.TableColumnBase
            astore 3 /* tc */
        start local 3 // javafx.scene.control.TableColumnBase tc
         9: .line 569
            aload 0 /* this */
            aload 3 /* tc */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.remove:(Ljavafx/scene/control/TableColumnBase;)V
        end local 3 // javafx.scene.control.TableColumnBase tc
        10: .line 568
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        11: .line 572
      StackMap locals: javafx.scene.control.skin.TableHeaderRow javafx.scene.control.TableColumnBase javafx.scene.control.CheckMenuItem
      StackMap stack:
            return
        end local 2 // javafx.scene.control.CheckMenuItem item
        end local 1 // javafx.scene.control.TableColumnBase col
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Ljavafx/scene/control/skin/TableHeaderRow;
            0   12     1   col  Ljavafx/scene/control/TableColumnBase<**>;
            2   12     2  item  Ljavafx/scene/control/CheckMenuItem;
            9   10     3    tc  Ljavafx/scene/control/TableColumnBase;
    Signature: (Ljavafx/scene/control/TableColumnBase<**>;)V
    MethodParameters:
      Name  Flags
      col   

  private void rebuildColumnMenu();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=6, args_size=1
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
         0: .line 575
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.columnPopupMenu:Ljavafx/scene/control/ContextMenu;
            invokevirtual javafx.scene.control.ContextMenu.getItems:()Ljavafx/collections/ObservableList;
            invokeinterface javafx.collections.ObservableList.clear:()V
         1: .line 577
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.tableSkin:Ljavafx/scene/control/skin/TableViewSkinBase;
            invokestatic javafx.scene.control.skin.TableSkinUtils.getColumns:(Ljavafx/scene/control/skin/TableViewSkinBase;)Ljavafx/collections/ObservableList;
            invokeinterface javafx.collections.ObservableList.iterator:()Ljava/util/Iterator;
            astore 2
            goto 11
      StackMap locals: javafx.scene.control.skin.TableHeaderRow top java.util.Iterator
      StackMap stack:
         2: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javafx.scene.control.TableColumnBase
            astore 1 /* col */
        start local 1 // javafx.scene.control.TableColumnBase col
         3: .line 579
            aload 1 /* col */
            invokevirtual javafx.scene.control.TableColumnBase.getColumns:()Ljavafx/collections/ObservableList;
            invokeinterface javafx.collections.ObservableList.isEmpty:()Z
            ifeq 6
         4: .line 580
            aload 0 /* this */
            aload 1 /* col */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.createMenuItem:(Ljavafx/scene/control/TableColumnBase;)V
         5: .line 581
            goto 11
         6: .line 582
      StackMap locals: javafx.scene.control.skin.TableHeaderRow javafx.scene.control.TableColumnBase java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            aload 1 /* col */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.getLeafColumns:(Ljavafx/scene/control/TableColumnBase;)Ljava/util/List;
            astore 3 /* leafColumns */
        start local 3 // java.util.List leafColumns
         7: .line 583
            aload 3 /* leafColumns */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 10
      StackMap locals: javafx.scene.control.skin.TableHeaderRow javafx.scene.control.TableColumnBase java.util.Iterator java.util.List top java.util.Iterator
      StackMap stack:
         8: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javafx.scene.control.TableColumnBase
            astore 4 /* _col */
        start local 4 // javafx.scene.control.TableColumnBase _col
         9: .line 584
            aload 0 /* this */
            aload 4 /* _col */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.createMenuItem:(Ljavafx/scene/control/TableColumnBase;)V
        end local 4 // javafx.scene.control.TableColumnBase _col
        10: .line 583
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        end local 3 // java.util.List leafColumns
        end local 1 // javafx.scene.control.TableColumnBase col
        11: .line 577
      StackMap locals: javafx.scene.control.skin.TableHeaderRow top java.util.Iterator
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        12: .line 588
            return
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   13     0         this  Ljavafx/scene/control/skin/TableHeaderRow;
            3   11     1          col  Ljavafx/scene/control/TableColumnBase<**>;
            7   11     3  leafColumns  Ljava/util/List<Ljavafx/scene/control/TableColumnBase<**>;>;
            9   10     4         _col  Ljavafx/scene/control/TableColumnBase<**>;

  private java.util.List<javafx.scene.control.TableColumnBase<?, ?>> getLeafColumns(javafx.scene.control.TableColumnBase<?, ?>);
    descriptor: (Ljavafx/scene/control/TableColumnBase;)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // javafx.scene.control.TableColumnBase col
         0: .line 591
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* leafColumns */
        start local 2 // java.util.List leafColumns
         1: .line 593
            aload 1 /* col */
            invokevirtual javafx.scene.control.TableColumnBase.getColumns:()Ljavafx/collections/ObservableList;
            invokeinterface javafx.collections.ObservableList.iterator:()Ljava/util/Iterator;
            astore 4
            goto 7
      StackMap locals: javafx.scene.control.skin.TableHeaderRow javafx.scene.control.TableColumnBase java.util.List top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javafx.scene.control.TableColumnBase
            astore 3 /* _col */
        start local 3 // javafx.scene.control.TableColumnBase _col
         3: .line 594
            aload 3 /* _col */
            invokevirtual javafx.scene.control.TableColumnBase.getColumns:()Ljavafx/collections/ObservableList;
            invokeinterface javafx.collections.ObservableList.isEmpty:()Z
            ifeq 6
         4: .line 595
            aload 2 /* leafColumns */
            aload 3 /* _col */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         5: .line 596
            goto 7
         6: .line 597
      StackMap locals: javafx.scene.control.skin.TableHeaderRow javafx.scene.control.TableColumnBase java.util.List javafx.scene.control.TableColumnBase java.util.Iterator
      StackMap stack:
            aload 2 /* leafColumns */
            aload 0 /* this */
            aload 3 /* _col */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.getLeafColumns:(Ljavafx/scene/control/TableColumnBase;)Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        end local 3 // javafx.scene.control.TableColumnBase _col
         7: .line 593
      StackMap locals: javafx.scene.control.skin.TableHeaderRow javafx.scene.control.TableColumnBase java.util.List top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         8: .line 601
            aload 2 /* leafColumns */
            areturn
        end local 2 // java.util.List leafColumns
        end local 1 // javafx.scene.control.TableColumnBase col
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Ljavafx/scene/control/skin/TableHeaderRow;
            0    9     1          col  Ljavafx/scene/control/TableColumnBase<**>;
            1    9     2  leafColumns  Ljava/util/List<Ljavafx/scene/control/TableColumnBase<**>;>;
            3    7     3         _col  Ljavafx/scene/control/TableColumnBase<**>;
    Signature: (Ljavafx/scene/control/TableColumnBase<**>;)Ljava/util/List<Ljavafx/scene/control/TableColumnBase<**>;>;
    MethodParameters:
      Name  Flags
      col   

  private void createMenuItem(javafx.scene.control.TableColumnBase<?, ?>);
    descriptor: (Ljavafx/scene/control/TableColumnBase;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // javafx.scene.control.TableColumnBase col
         0: .line 605
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.columnMenuItems:Ljava/util/Map;
            aload 1 /* col */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javafx.scene.control.CheckMenuItem
            astore 2 /* item */
        start local 2 // javafx.scene.control.CheckMenuItem item
         1: .line 606
            aload 2 /* item */
            ifnonnull 4
         2: .line 607
            new javafx.scene.control.CheckMenuItem
            dup
            invokespecial javafx.scene.control.CheckMenuItem.<init>:()V
            astore 2 /* item */
         3: .line 608
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.columnMenuItems:Ljava/util/Map;
            aload 1 /* col */
            aload 2 /* item */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 612
      StackMap locals: javafx.scene.control.CheckMenuItem
      StackMap stack:
            aload 2 /* item */
            aload 0 /* this */
            aload 1 /* col */
            invokevirtual javafx.scene.control.TableColumnBase.getText:()Ljava/lang/String;
            aload 1 /* col */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.getText:(Ljava/lang/String;Ljavafx/scene/control/TableColumnBase;)Ljava/lang/String;
            invokevirtual javafx.scene.control.CheckMenuItem.setText:(Ljava/lang/String;)V
         5: .line 613
            aload 1 /* col */
            invokevirtual javafx.scene.control.TableColumnBase.textProperty:()Ljavafx/beans/property/StringProperty;
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.weakColumnTextListener:Ljavafx/beans/WeakInvalidationListener;
            invokevirtual javafx.beans.property.StringProperty.addListener:(Ljavafx/beans/InvalidationListener;)V
         6: .line 617
            aload 2 /* item */
            aload 1 /* col */
            invokevirtual javafx.scene.control.TableColumnBase.visibleProperty:()Ljavafx/beans/property/BooleanProperty;
            invokevirtual javafx.beans.property.BooleanProperty.isBound:()Z
            invokevirtual javafx.scene.control.CheckMenuItem.setDisable:(Z)V
         7: .line 620
            aload 2 /* item */
            aload 1 /* col */
            invokevirtual javafx.scene.control.TableColumnBase.isVisible:()Z
            invokevirtual javafx.scene.control.CheckMenuItem.setSelected:(Z)V
         8: .line 621
            aload 2 /* item */
            astore 3 /* _item */
        start local 3 // javafx.scene.control.CheckMenuItem _item
         9: .line 622
            aload 2 /* item */
            invokevirtual javafx.scene.control.CheckMenuItem.selectedProperty:()Ljavafx/beans/property/BooleanProperty;
            aload 1 /* col */
            aload 3 /* _item */
            invokedynamic invalidated(Ljavafx/scene/control/TableColumnBase;Ljavafx/scene/control/CheckMenuItem;)Ljavafx/beans/InvalidationListener;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljavafx/beans/Observable;)V
                  javafx/scene/control/skin/TableHeaderRow.lambda$7(Ljavafx/scene/control/TableColumnBase;Ljavafx/scene/control/CheckMenuItem;Ljavafx/beans/Observable;)V (6)
                  (Ljavafx/beans/Observable;)V
            invokevirtual javafx.beans.property.BooleanProperty.addListener:(Ljavafx/beans/InvalidationListener;)V
        10: .line 626
            aload 1 /* col */
            invokevirtual javafx.scene.control.TableColumnBase.visibleProperty:()Ljavafx/beans/property/BooleanProperty;
            aload 3 /* _item */
            aload 1 /* col */
            invokedynamic invalidated(Ljavafx/scene/control/CheckMenuItem;Ljavafx/scene/control/TableColumnBase;)Ljavafx/beans/InvalidationListener;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljavafx/beans/Observable;)V
                  javafx/scene/control/skin/TableHeaderRow.lambda$8(Ljavafx/scene/control/CheckMenuItem;Ljavafx/scene/control/TableColumnBase;Ljavafx/beans/Observable;)V (6)
                  (Ljavafx/beans/Observable;)V
            invokevirtual javafx.beans.property.BooleanProperty.addListener:(Ljavafx/beans/InvalidationListener;)V
        11: .line 628
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.columnPopupMenu:Ljavafx/scene/control/ContextMenu;
            invokevirtual javafx.scene.control.ContextMenu.getItems:()Ljavafx/collections/ObservableList;
            aload 2 /* item */
            invokeinterface javafx.collections.ObservableList.add:(Ljava/lang/Object;)Z
            pop
        12: .line 629
            return
        end local 3 // javafx.scene.control.CheckMenuItem _item
        end local 2 // javafx.scene.control.CheckMenuItem item
        end local 1 // javafx.scene.control.TableColumnBase col
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   13     0   this  Ljavafx/scene/control/skin/TableHeaderRow;
            0   13     1    col  Ljavafx/scene/control/TableColumnBase<**>;
            1   13     2   item  Ljavafx/scene/control/CheckMenuItem;
            9   13     3  _item  Ljavafx/scene/control/CheckMenuItem;
    Signature: (Ljavafx/scene/control/TableColumnBase<**>;)V
    MethodParameters:
      Name  Flags
      col   

  private java.lang.String getText(java.lang.String, javafx.scene.control.TableColumnBase);
    descriptor: (Ljava/lang/String;Ljavafx/scene/control/TableColumnBase;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // java.lang.String text
        start local 2 // javafx.scene.control.TableColumnBase col
         0: .line 635
            aload 1 /* text */
            astore 3 /* s */
        start local 3 // java.lang.String s
         1: .line 636
            aload 2 /* col */
            invokevirtual javafx.scene.control.TableColumnBase.getParentColumn:()Ljavafx/scene/control/TableColumnBase;
            astore 4 /* parentCol */
        start local 4 // javafx.scene.control.TableColumnBase parentCol
         2: .line 637
            goto 6
         3: .line 638
      StackMap locals: java.lang.String javafx.scene.control.TableColumnBase
      StackMap stack:
            aload 0 /* this */
            aload 4 /* parentCol */
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.tableSkin:Ljavafx/scene/control/skin/TableViewSkinBase;
            invokestatic javafx.scene.control.skin.TableSkinUtils.getColumns:(Ljavafx/scene/control/skin/TableViewSkinBase;)Ljavafx/collections/ObservableList;
            invokevirtual javafx.scene.control.skin.TableHeaderRow.isColumnVisibleInHeader:(Ljavafx/scene/control/TableColumnBase;Ljava/util/List;)Z
            ifeq 5
         4: .line 639
            new java.lang.StringBuilder
            dup
            aload 4 /* parentCol */
            invokevirtual javafx.scene.control.TableColumnBase.getText:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.MENU_SEPARATOR:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* s */
         5: .line 641
      StackMap locals:
      StackMap stack:
            aload 4 /* parentCol */
            invokevirtual javafx.scene.control.TableColumnBase.getParentColumn:()Ljavafx/scene/control/TableColumnBase;
            astore 4 /* parentCol */
         6: .line 637
      StackMap locals:
      StackMap stack:
            aload 4 /* parentCol */
            ifnonnull 3
         7: .line 643
            aload 3 /* s */
            areturn
        end local 4 // javafx.scene.control.TableColumnBase parentCol
        end local 3 // java.lang.String s
        end local 2 // javafx.scene.control.TableColumnBase col
        end local 1 // java.lang.String text
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Ljavafx/scene/control/skin/TableHeaderRow;
            0    8     1       text  Ljava/lang/String;
            0    8     2        col  Ljavafx/scene/control/TableColumnBase;
            1    8     3          s  Ljava/lang/String;
            2    8     4  parentCol  Ljavafx/scene/control/TableColumnBase;
    MethodParameters:
      Name  Flags
      text  
      col   

  private boolean isColumnVisibleInHeader(javafx.scene.control.TableColumnBase, java.util.List);
    descriptor: (Ljavafx/scene/control/TableColumnBase;Ljava/util/List;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // javafx.scene.control.TableColumnBase col
        start local 2 // java.util.List columns
         0: .line 651
            aload 1 /* col */
            ifnonnull 1
            iconst_0
            ireturn
         1: .line 653
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 9
         3: .line 654
      StackMap locals: int
      StackMap stack:
            aload 2 /* columns */
            iload 3 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javafx.scene.control.TableColumnBase
            astore 4 /* column */
        start local 4 // javafx.scene.control.TableColumnBase column
         4: .line 655
            aload 1 /* col */
            aload 4 /* column */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 5
            iconst_1
            ireturn
         5: .line 657
      StackMap locals: javafx.scene.control.TableColumnBase
      StackMap stack:
            aload 4 /* column */
            invokevirtual javafx.scene.control.TableColumnBase.getColumns:()Ljavafx/collections/ObservableList;
            invokeinterface javafx.collections.ObservableList.isEmpty:()Z
            ifne 8
         6: .line 658
            aload 0 /* this */
            aload 1 /* col */
            aload 4 /* column */
            invokevirtual javafx.scene.control.TableColumnBase.getColumns:()Ljavafx/collections/ObservableList;
            invokevirtual javafx.scene.control.skin.TableHeaderRow.isColumnVisibleInHeader:(Ljavafx/scene/control/TableColumnBase;Ljava/util/List;)Z
            istore 5 /* isVisible */
        start local 5 // boolean isVisible
         7: .line 659
            iload 5 /* isVisible */
            ifeq 8
            iconst_1
            ireturn
        end local 5 // boolean isVisible
        end local 4 // javafx.scene.control.TableColumnBase column
         8: .line 653
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            aload 2 /* columns */
            invokeinterface java.util.List.size:()I
            if_icmplt 3
        end local 3 // int i
        10: .line 663
            iconst_0
            ireturn
        end local 2 // java.util.List columns
        end local 1 // javafx.scene.control.TableColumnBase col
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Ljavafx/scene/control/skin/TableHeaderRow;
            0   11     1        col  Ljavafx/scene/control/TableColumnBase;
            0   11     2    columns  Ljava/util/List;
            2   10     3          i  I
            4    8     4     column  Ljavafx/scene/control/TableColumnBase;
            7    8     5  isVisible  Z
    MethodParameters:
         Name  Flags
      col      
      columns  

  private void lambda$0(javafx.beans.Observable);
    descriptor: (Ljavafx/beans/Observable;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // javafx.beans.Observable o
         0: .line 137
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.updateTableWidth:()V
            return
        end local 1 // javafx.beans.Observable o
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/skin/TableHeaderRow;
            0    1     1     o  Ljavafx/beans/Observable;

  private void lambda$1(javafx.beans.Observable);
    descriptor: (Ljavafx/beans/Observable;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // javafx.beans.Observable o
         0: .line 139
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.updateTableWidth:()V
            return
        end local 1 // javafx.beans.Observable o
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/skin/TableHeaderRow;
            0    1     1     o  Ljavafx/beans/Observable;

  private void lambda$2(javafx.collections.ListChangeListener$Change);
    descriptor: (Ljavafx/collections/ListChangeListener$Change;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // javafx.collections.ListChangeListener$Change c
         0: .line 142
            aload 0 /* this */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.getRootHeader:()Ljavafx/scene/control/skin/NestedTableColumnHeader;
            invokevirtual javafx.scene.control.skin.NestedTableColumnHeader.setHeadersNeedUpdate:()V
            return
        end local 1 // javafx.collections.ListChangeListener$Change c
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/skin/TableHeaderRow;
            0    1     1     c  Ljavafx/collections/ListChangeListener$Change;

  private void lambda$3(javafx.collections.ListChangeListener$Change);
    descriptor: (Ljavafx/collections/ListChangeListener$Change;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // javafx.collections.ListChangeListener$Change c
         0: .line 145
            goto 2
         1: .line 146
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* c */
            invokevirtual javafx.collections.ListChangeListener$Change.getAddedSubList:()Ljava/util/List;
            aload 1 /* c */
            invokevirtual javafx.collections.ListChangeListener$Change.getRemoved:()Ljava/util/List;
            invokevirtual javafx.scene.control.skin.TableHeaderRow.updateTableColumnListeners:(Ljava/util/List;Ljava/util/List;)V
         2: .line 145
      StackMap locals:
      StackMap stack:
            aload 1 /* c */
            invokevirtual javafx.collections.ListChangeListener$Change.next:()Z
            ifne 1
         3: .line 148
            return
        end local 1 // javafx.collections.ListChangeListener$Change c
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavafx/scene/control/skin/TableHeaderRow;
            0    4     1     c  Ljavafx/collections/ListChangeListener$Change;

  private void lambda$4(javafx.beans.Observable);
    descriptor: (Ljavafx/beans/Observable;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // javafx.beans.Observable observable
         0: .line 151
            aload 1 /* observable */
            checkcast javafx.beans.property.StringProperty
            invokevirtual javafx.beans.property.StringProperty.getBean:()Ljava/lang/Object;
            checkcast javafx.scene.control.TableColumnBase
            astore 2 /* column */
        start local 2 // javafx.scene.control.TableColumnBase column
         1: .line 152
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.columnMenuItems:Ljava/util/Map;
            aload 2 /* column */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javafx.scene.control.CheckMenuItem
            astore 3 /* menuItem */
        start local 3 // javafx.scene.control.CheckMenuItem menuItem
         2: .line 153
            aload 3 /* menuItem */
            ifnull 4
         3: .line 154
            aload 3 /* menuItem */
            aload 0 /* this */
            aload 2 /* column */
            invokevirtual javafx.scene.control.TableColumnBase.getText:()Ljava/lang/String;
            aload 2 /* column */
            invokevirtual javafx.scene.control.skin.TableHeaderRow.getText:(Ljava/lang/String;Ljavafx/scene/control/TableColumnBase;)Ljava/lang/String;
            invokevirtual javafx.scene.control.CheckMenuItem.setText:(Ljava/lang/String;)V
        end local 3 // javafx.scene.control.CheckMenuItem menuItem
        end local 2 // javafx.scene.control.TableColumnBase column
         4: .line 156
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javafx.beans.Observable observable
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Ljavafx/scene/control/skin/TableHeaderRow;
            0    5     1  observable  Ljavafx/beans/Observable;
            1    4     2      column  Ljavafx/scene/control/TableColumnBase<**>;
            2    4     3    menuItem  Ljavafx/scene/control/CheckMenuItem;

  private static void lambda$5(javafx.scene.control.skin.TableViewSkinBase, javafx.scene.input.MouseEvent);
    descriptor: (Ljavafx/scene/control/skin/TableViewSkinBase;Ljavafx/scene/input/MouseEvent;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=2, args_size=2
        start local 1 // javafx.scene.input.MouseEvent e
         0: .line 234
            aload 0
            invokevirtual javafx.scene.control.skin.TableViewSkinBase.getSkinnable:()Ljavafx/scene/control/Control;
            invokevirtual javafx.scene.control.Control.requestFocus:()V
         1: .line 235
            return
        end local 1 // javafx.scene.input.MouseEvent e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     1     e  Ljavafx/scene/input/MouseEvent;

  private void lambda$6(javafx.scene.input.MouseEvent);
    descriptor: (Ljavafx/scene/input/MouseEvent;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // javafx.scene.control.skin.TableHeaderRow this
        start local 1 // javafx.scene.input.MouseEvent me
         0: .line 261
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.columnPopupMenu:Ljavafx/scene/control/ContextMenu;
            aload 0 /* this */
            getfield javafx.scene.control.skin.TableHeaderRow.cornerRegion:Ljavafx/scene/layout/Pane;
            getstatic javafx.geometry.Side.BOTTOM:Ljavafx/geometry/Side;
            dconst_0
            dconst_0
            invokevirtual javafx.scene.control.ContextMenu.show:(Ljavafx/scene/Node;Ljavafx/geometry/Side;DD)V
         1: .line 262
            aload 1 /* me */
            invokevirtual javafx.scene.input.MouseEvent.consume:()V
         2: .line 263
            return
        end local 1 // javafx.scene.input.MouseEvent me
        end local 0 // javafx.scene.control.skin.TableHeaderRow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavafx/scene/control/skin/TableHeaderRow;
            0    3     1    me  Ljavafx/scene/input/MouseEvent;

  private static void lambda$7(javafx.scene.control.TableColumnBase, javafx.scene.control.CheckMenuItem, javafx.beans.Observable);
    descriptor: (Ljavafx/scene/control/TableColumnBase;Ljavafx/scene/control/CheckMenuItem;Ljavafx/beans/Observable;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 2 // javafx.beans.Observable o
         0: .line 623
            aload 0
            invokevirtual javafx.scene.control.TableColumnBase.visibleProperty:()Ljavafx/beans/property/BooleanProperty;
            invokevirtual javafx.beans.property.BooleanProperty.isBound:()Z
            ifeq 1
            return
         1: .line 624
      StackMap locals:
      StackMap stack:
            aload 0
            aload 1
            invokevirtual javafx.scene.control.CheckMenuItem.isSelected:()Z
            invokevirtual javafx.scene.control.TableColumnBase.setVisible:(Z)V
         2: .line 625
            return
        end local 2 // javafx.beans.Observable o
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     2     o  Ljavafx/beans/Observable;

  private static void lambda$8(javafx.scene.control.CheckMenuItem, javafx.scene.control.TableColumnBase, javafx.beans.Observable);
    descriptor: (Ljavafx/scene/control/CheckMenuItem;Ljavafx/scene/control/TableColumnBase;Ljavafx/beans/Observable;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 2 // javafx.beans.Observable o
         0: .line 626
            aload 0
            aload 1
            invokevirtual javafx.scene.control.TableColumnBase.isVisible:()Z
            invokevirtual javafx.scene.control.CheckMenuItem.setSelected:(Z)V
            return
        end local 2 // javafx.beans.Observable o
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     2     o  Ljavafx/beans/Observable;
}
SourceFile: "TableHeaderRow.java"
NestMembers:
  javafx.scene.control.skin.TableHeaderRow$1  javafx.scene.control.skin.TableHeaderRow$2
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Change = javafx.collections.ListChangeListener$Change of javafx.collections.ListChangeListener
  javafx.scene.control.skin.TableHeaderRow$1
  javafx.scene.control.skin.TableHeaderRow$2