class com.sun.javafx.logging.PrintLogger extends com.sun.javafx.logging.Logger
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.javafx.logging.PrintLogger
  super_class: com.sun.javafx.logging.Logger
{
  private static com.sun.javafx.logging.PrintLogger printLogger;
    descriptor: Lcom/sun/javafx/logging/PrintLogger;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static long THRESHOLD;
    descriptor: J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

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

  private int pulseCount;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

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

  private volatile int wrapCount;
    descriptor: I
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private volatile com.sun.javafx.logging.PrintLogger$PulseData fxData;
    descriptor: Lcom/sun/javafx/logging/PrintLogger$PulseData;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private volatile com.sun.javafx.logging.PrintLogger$PulseData renderData;
    descriptor: Lcom/sun/javafx/logging/PrintLogger$PulseData;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private long lastPulseStartTime;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Thread fxThread;
    descriptor: Ljava/lang/Thread;
    flags: (0x0002) ACC_PRIVATE

  private final java.lang.ThreadLocal<com.sun.javafx.logging.PrintLogger$ThreadLocalData> phaseData;
    descriptor: Ljava/lang/ThreadLocal;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/lang/ThreadLocal<Lcom/sun/javafx/logging/PrintLogger$ThreadLocalData;>;

  private com.sun.javafx.logging.PrintLogger$PulseData head;
    descriptor: Lcom/sun/javafx/logging/PrintLogger$PulseData;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.javafx.logging.PrintLogger$PulseData tail;
    descriptor: Lcom/sun/javafx/logging/PrintLogger$PulseData;
    flags: (0x0002) ACC_PRIVATE

  private java.util.concurrent.atomic.AtomicInteger active;
    descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
    flags: (0x0002) ACC_PRIVATE

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

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 65
            invokedynamic run()Ljava/security/PrivilegedAction;
              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:
                  ()Ljava/lang/Object;
                  com/sun/javafx/logging/PrintLogger.lambda$1()Ljava/lang/Integer; (6)
                  ()Ljava/lang/Integer;
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            i2l
         1: .line 64
            putstatic com.sun.javafx.logging.PrintLogger.THRESHOLD:J
         2: .line 71
            invokedynamic run()Ljava/security/PrivilegedAction;
              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:
                  ()Ljava/lang/Object;
                  com/sun/javafx/logging/PrintLogger.lambda$0()Ljava/lang/Integer; (6)
                  ()Ljava/lang/Integer;
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
         3: .line 70
            putstatic com.sun.javafx.logging.PrintLogger.EXIT_ON_PULSE:I
         4: .line 140
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.javafx.logging.PrintLogger this
         0: .line 145
            aload 0 /* this */
            invokespecial com.sun.javafx.logging.Logger.<init>:()V
         1: .line 77
            aload 0 /* this */
            iconst_1
            putfield com.sun.javafx.logging.PrintLogger.pulseCount:I
         2: .line 93
            aload 0 /* this */
            iconst_0
            putfield com.sun.javafx.logging.PrintLogger.wrapCount:I
         3: .line 112
            aload 0 /* this */
         4: .line 113
            new com.sun.javafx.logging.PrintLogger$1
            dup
            aload 0 /* this */
            invokespecial com.sun.javafx.logging.PrintLogger$1.<init>:(Lcom/sun/javafx/logging/PrintLogger;)V
            putfield com.sun.javafx.logging.PrintLogger.phaseData:Ljava/lang/ThreadLocal;
         5: .line 146
            aload 0 /* this */
            new com.sun.javafx.logging.PrintLogger$PulseData
            dup
            aload 0 /* this */
            invokespecial com.sun.javafx.logging.PrintLogger$PulseData.<init>:(Lcom/sun/javafx/logging/PrintLogger;)V
            putfield com.sun.javafx.logging.PrintLogger.head:Lcom/sun/javafx/logging/PrintLogger$PulseData;
         6: .line 147
            aload 0 /* this */
            new com.sun.javafx.logging.PrintLogger$PulseData
            dup
            aload 0 /* this */
            invokespecial com.sun.javafx.logging.PrintLogger$PulseData.<init>:(Lcom/sun/javafx/logging/PrintLogger;)V
            putfield com.sun.javafx.logging.PrintLogger.tail:Lcom/sun/javafx/logging/PrintLogger$PulseData;
         7: .line 148
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.head:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.tail:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            putfield com.sun.javafx.logging.PrintLogger$PulseData.next:Lcom/sun/javafx/logging/PrintLogger$PulseData;
         8: .line 149
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicInteger
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:(I)V
            putfield com.sun.javafx.logging.PrintLogger.active:Ljava/util/concurrent/atomic/AtomicInteger;
         9: .line 150
            return
        end local 0 // com.sun.javafx.logging.PrintLogger this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lcom/sun/javafx/logging/PrintLogger;

  public static com.sun.javafx.logging.Logger getInstance();
    descriptor: ()Lcom/sun/javafx/logging/Logger;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=0
         0: .line 153
            getstatic com.sun.javafx.logging.PrintLogger.printLogger:Lcom/sun/javafx/logging/PrintLogger;
            ifnonnull 4
         1: .line 154
            invokedynamic run()Ljava/security/PrivilegedAction;
              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:
                  ()Ljava/lang/Object;
                  com/sun/javafx/logging/PrintLogger.lambda$2()Ljava/lang/Boolean; (6)
                  ()Ljava/lang/Boolean;
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            istore 0 /* enabled */
        start local 0 // boolean enabled
         2: .line 155
            iload 0 /* enabled */
            ifeq 4
         3: .line 156
            new com.sun.javafx.logging.PrintLogger
            dup
            invokespecial com.sun.javafx.logging.PrintLogger.<init>:()V
            putstatic com.sun.javafx.logging.PrintLogger.printLogger:Lcom/sun/javafx/logging/PrintLogger;
        end local 0 // boolean enabled
         4: .line 159
      StackMap locals:
      StackMap stack:
            getstatic com.sun.javafx.logging.PrintLogger.printLogger:Lcom/sun/javafx/logging/PrintLogger;
            areturn
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            2    4     0  enabled  Z

  private com.sun.javafx.logging.PrintLogger$PulseData allocate(int);
    descriptor: (I)Lcom/sun/javafx/logging/PrintLogger$PulseData;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.sun.javafx.logging.PrintLogger this
        start local 1 // int n
         0: .line 167
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.head:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.tail:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            if_acmpeq 5
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.head:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            getfield com.sun.javafx.logging.PrintLogger$PulseData.state:I
            ifne 5
         1: .line 168
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.head:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            astore 2 /* res */
        start local 2 // com.sun.javafx.logging.PrintLogger$PulseData res
         2: .line 169
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.head:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            getfield com.sun.javafx.logging.PrintLogger$PulseData.next:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            putfield com.sun.javafx.logging.PrintLogger.head:Lcom/sun/javafx/logging/PrintLogger$PulseData;
         3: .line 170
            aload 2 /* res */
            aconst_null
            putfield com.sun.javafx.logging.PrintLogger$PulseData.next:Lcom/sun/javafx/logging/PrintLogger$PulseData;
         4: .line 171
            goto 6
        end local 2 // com.sun.javafx.logging.PrintLogger$PulseData res
         5: .line 173
      StackMap locals:
      StackMap stack:
            new com.sun.javafx.logging.PrintLogger$PulseData
            dup
            aload 0 /* this */
            invokespecial com.sun.javafx.logging.PrintLogger$PulseData.<init>:(Lcom/sun/javafx/logging/PrintLogger;)V
            astore 2 /* res */
        start local 2 // com.sun.javafx.logging.PrintLogger$PulseData res
         6: .line 175
      StackMap locals: com.sun.javafx.logging.PrintLogger$PulseData
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.tail:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            aload 2 /* res */
            putfield com.sun.javafx.logging.PrintLogger$PulseData.next:Lcom/sun/javafx/logging/PrintLogger$PulseData;
         7: .line 176
            aload 0 /* this */
            aload 2 /* res */
            putfield com.sun.javafx.logging.PrintLogger.tail:Lcom/sun/javafx/logging/PrintLogger$PulseData;
         8: .line 177
            aload 2 /* res */
            iload 1 /* n */
            invokevirtual com.sun.javafx.logging.PrintLogger$PulseData.init:(I)V
         9: .line 178
            aload 2 /* res */
            areturn
        end local 2 // com.sun.javafx.logging.PrintLogger$PulseData res
        end local 1 // int n
        end local 0 // com.sun.javafx.logging.PrintLogger this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lcom/sun/javafx/logging/PrintLogger;
            0   10     1     n  I
            2    5     2   res  Lcom/sun/javafx/logging/PrintLogger$PulseData;
            6   10     2   res  Lcom/sun/javafx/logging/PrintLogger$PulseData;
    MethodParameters:
      Name  Flags
      n     

  public void pulseStart();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // com.sun.javafx.logging.PrintLogger this
         0: .line 188
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxThread:Ljava/lang/Thread;
            ifnonnull 2
         1: .line 189
            aload 0 /* this */
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            putfield com.sun.javafx.logging.PrintLogger.fxThread:Ljava/lang/Thread;
         2: .line 191
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            ifnull 7
         3: .line 193
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            iconst_2
            putfield com.sun.javafx.logging.PrintLogger$PulseData.state:I
         4: .line 194
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.active:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.incrementAndGet:()I
            iconst_1
            if_icmpne 7
         5: .line 195
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            invokevirtual com.sun.javafx.logging.PrintLogger$PulseData.printAndReset:()V
         6: .line 196
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.active:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.decrementAndGet:()I
            pop
         7: .line 199
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            dup
            getfield com.sun.javafx.logging.PrintLogger.pulseCount:I
            dup_x1
            iconst_1
            iadd
            putfield com.sun.javafx.logging.PrintLogger.pulseCount:I
            invokevirtual com.sun.javafx.logging.PrintLogger.allocate:(I)Lcom/sun/javafx/logging/PrintLogger$PulseData;
            putfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
         8: .line 200
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.lastPulseStartTime:J
            lconst_0
            lcmp
            ifle 10
         9: .line 201
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            getfield com.sun.javafx.logging.PrintLogger$PulseData.startTime:J
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.lastPulseStartTime:J
            lsub
            ldc 1000000
            ldiv
            putfield com.sun.javafx.logging.PrintLogger$PulseData.interval:J
        10: .line 203
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            getfield com.sun.javafx.logging.PrintLogger$PulseData.startTime:J
            putfield com.sun.javafx.logging.PrintLogger.lastPulseStartTime:J
        11: .line 204
            return
        end local 0 // com.sun.javafx.logging.PrintLogger this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lcom/sun/javafx/logging/PrintLogger;

  public void renderStart();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.javafx.logging.PrintLogger this
         0: .line 217
            aload 0 /* this */
            aconst_null
            invokevirtual com.sun.javafx.logging.PrintLogger.newPhase:(Ljava/lang/String;)V
         1: .line 218
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            iconst_1
            putfield com.sun.javafx.logging.PrintLogger$PulseData.pushedRender:Z
         2: .line 219
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            putfield com.sun.javafx.logging.PrintLogger.renderData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
         3: .line 220
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.active:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.incrementAndGet:()I
            pop
         4: .line 221
            return
        end local 0 // com.sun.javafx.logging.PrintLogger this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/javafx/logging/PrintLogger;

  public void pulseEnd();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.javafx.logging.PrintLogger this
         0: .line 232
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            ifnull 5
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            getfield com.sun.javafx.logging.PrintLogger$PulseData.pushedRender:Z
            ifne 5
         1: .line 233
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            iconst_2
            putfield com.sun.javafx.logging.PrintLogger$PulseData.state:I
         2: .line 234
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.active:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.incrementAndGet:()I
            iconst_1
            if_icmpne 5
         3: .line 235
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            invokevirtual com.sun.javafx.logging.PrintLogger$PulseData.printAndReset:()V
         4: .line 236
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.active:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.decrementAndGet:()I
            pop
         5: .line 239
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
         6: .line 240
            return
        end local 0 // com.sun.javafx.logging.PrintLogger this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/sun/javafx/logging/PrintLogger;

  public void renderEnd();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.javafx.logging.PrintLogger this
         0: .line 249
            aload 0 /* this */
            aconst_null
            invokevirtual com.sun.javafx.logging.PrintLogger.newPhase:(Ljava/lang/String;)V
         1: .line 250
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.renderData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            iconst_2
            putfield com.sun.javafx.logging.PrintLogger$PulseData.state:I
         2: .line 252
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.renderData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            invokevirtual com.sun.javafx.logging.PrintLogger$PulseData.printAndReset:()V
         3: .line 253
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.active:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.decrementAndGet:()I
            ifne 5
         4: .line 254
            goto 7
         5: .line 256
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.renderData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            getfield com.sun.javafx.logging.PrintLogger$PulseData.next:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            putfield com.sun.javafx.logging.PrintLogger.renderData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
         6: .line 251
            goto 2
         7: .line 258
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield com.sun.javafx.logging.PrintLogger.renderData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
         8: .line 259
            return
        end local 0 // com.sun.javafx.logging.PrintLogger this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/sun/javafx/logging/PrintLogger;

  public void addMessage(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.sun.javafx.logging.PrintLogger this
        start local 1 // java.lang.String message
         0: .line 268
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxThread:Ljava/lang/Thread;
            ifnull 1
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxThread:Ljava/lang/Thread;
            if_acmpne 5
         1: .line 269
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            ifnonnull 3
         2: .line 270
            aload 0 /* this */
            aload 0 /* this */
            iconst_m1
            invokevirtual com.sun.javafx.logging.PrintLogger.allocate:(I)Lcom/sun/javafx/logging/PrintLogger$PulseData;
            putfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
         3: .line 272
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            astore 2 /* pulseData */
        start local 2 // com.sun.javafx.logging.PrintLogger$PulseData pulseData
         4: .line 273
            goto 6
        end local 2 // com.sun.javafx.logging.PrintLogger$PulseData pulseData
         5: .line 275
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.renderData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            astore 2 /* pulseData */
        start local 2 // com.sun.javafx.logging.PrintLogger$PulseData pulseData
         6: .line 277
      StackMap locals: com.sun.javafx.logging.PrintLogger$PulseData
      StackMap stack:
            aload 2 /* pulseData */
            ifnonnull 8
         7: .line 278
            return
         8: .line 280
      StackMap locals:
      StackMap stack:
            aload 2 /* pulseData */
            getfield com.sun.javafx.logging.PrintLogger$PulseData.message:Ljava/lang/StringBuffer;
         9: .line 281
            ldc "T"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
        10: .line 282
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.getId:()J
            invokevirtual java.lang.StringBuffer.append:(J)Ljava/lang/StringBuffer;
        11: .line 283
            ldc " : "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
        12: .line 284
            aload 1 /* message */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
        13: .line 285
            ldc "\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        14: .line 286
            return
        end local 2 // com.sun.javafx.logging.PrintLogger$PulseData pulseData
        end local 1 // java.lang.String message
        end local 0 // com.sun.javafx.logging.PrintLogger this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   15     0       this  Lcom/sun/javafx/logging/PrintLogger;
            0   15     1    message  Ljava/lang/String;
            4    5     2  pulseData  Lcom/sun/javafx/logging/PrintLogger$PulseData;
            6   15     2  pulseData  Lcom/sun/javafx/logging/PrintLogger$PulseData;
    MethodParameters:
         Name  Flags
      message  

  public void incrementCounter(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // com.sun.javafx.logging.PrintLogger this
        start local 1 // java.lang.String counter
         0: .line 295
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxThread:Ljava/lang/Thread;
            ifnull 1
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxThread:Ljava/lang/Thread;
            if_acmpne 5
         1: .line 296
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            ifnonnull 3
         2: .line 297
            aload 0 /* this */
            aload 0 /* this */
            iconst_m1
            invokevirtual com.sun.javafx.logging.PrintLogger.allocate:(I)Lcom/sun/javafx/logging/PrintLogger$PulseData;
            putfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
         3: .line 299
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            astore 2 /* pulseData */
        start local 2 // com.sun.javafx.logging.PrintLogger$PulseData pulseData
         4: .line 300
            goto 6
        end local 2 // com.sun.javafx.logging.PrintLogger$PulseData pulseData
         5: .line 302
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.renderData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            astore 2 /* pulseData */
        start local 2 // com.sun.javafx.logging.PrintLogger$PulseData pulseData
         6: .line 304
      StackMap locals: com.sun.javafx.logging.PrintLogger$PulseData
      StackMap stack:
            aload 2 /* pulseData */
            ifnonnull 8
         7: .line 305
            return
         8: .line 307
      StackMap locals:
      StackMap stack:
            aload 2 /* pulseData */
            getfield com.sun.javafx.logging.PrintLogger$PulseData.counters:Ljava/util/Map;
            astore 3 /* counters */
        start local 3 // java.util.Map counters
         9: .line 308
            aload 3 /* counters */
            aload 1 /* counter */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.javafx.logging.PrintLogger$Counter
            astore 4 /* cval */
        start local 4 // com.sun.javafx.logging.PrintLogger$Counter cval
        10: .line 309
            aload 4 /* cval */
            ifnonnull 13
        11: .line 310
            new com.sun.javafx.logging.PrintLogger$Counter
            dup
            invokespecial com.sun.javafx.logging.PrintLogger$Counter.<init>:()V
            astore 4 /* cval */
        12: .line 311
            aload 3 /* counters */
            aload 1 /* counter */
            aload 4 /* cval */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 313
      StackMap locals: java.util.Map com.sun.javafx.logging.PrintLogger$Counter
      StackMap stack:
            aload 4 /* cval */
            dup
            getfield com.sun.javafx.logging.PrintLogger$Counter.value:I
            iconst_1
            iadd
            putfield com.sun.javafx.logging.PrintLogger$Counter.value:I
        14: .line 314
            return
        end local 4 // com.sun.javafx.logging.PrintLogger$Counter cval
        end local 3 // java.util.Map counters
        end local 2 // com.sun.javafx.logging.PrintLogger$PulseData pulseData
        end local 1 // java.lang.String counter
        end local 0 // com.sun.javafx.logging.PrintLogger this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   15     0       this  Lcom/sun/javafx/logging/PrintLogger;
            0   15     1    counter  Ljava/lang/String;
            4    5     2  pulseData  Lcom/sun/javafx/logging/PrintLogger$PulseData;
            6   15     2  pulseData  Lcom/sun/javafx/logging/PrintLogger$PulseData;
            9   15     3   counters  Ljava/util/Map<Ljava/lang/String;Lcom/sun/javafx/logging/PrintLogger$Counter;>;
           10   15     4       cval  Lcom/sun/javafx/logging/PrintLogger$Counter;
    MethodParameters:
         Name  Flags
      counter  

  public void newPhase(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // com.sun.javafx.logging.PrintLogger this
        start local 1 // java.lang.String name
         0: .line 318
            invokestatic java.lang.System.nanoTime:()J
            lstore 2 /* curTime */
        start local 2 // long curTime
         1: .line 320
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.phaseData:Ljava/lang/ThreadLocal;
            invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
            checkcast com.sun.javafx.logging.PrintLogger$ThreadLocalData
            astore 4 /* curPhase */
        start local 4 // com.sun.javafx.logging.PrintLogger$ThreadLocalData curPhase
         2: .line 321
            aload 4 /* curPhase */
            getfield com.sun.javafx.logging.PrintLogger$ThreadLocalData.phaseName:Ljava/lang/String;
            ifnull 14
         3: .line 322
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxThread:Ljava/lang/Thread;
            if_acmpne 4
            aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.fxData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
            goto 5
      StackMap locals: long com.sun.javafx.logging.PrintLogger$ThreadLocalData
      StackMap stack:
         4: aload 0 /* this */
            getfield com.sun.javafx.logging.PrintLogger.renderData:Lcom/sun/javafx/logging/PrintLogger$PulseData;
      StackMap locals:
      StackMap stack: com.sun.javafx.logging.PrintLogger$PulseData
         5: astore 5 /* pulseData */
        start local 5 // com.sun.javafx.logging.PrintLogger$PulseData pulseData
         6: .line 323
            aload 5 /* pulseData */
            ifnull 14
         7: .line 324
            aload 5 /* pulseData */
            getfield com.sun.javafx.logging.PrintLogger$PulseData.message:Ljava/lang/StringBuffer;
         8: .line 325
            ldc "T"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
         9: .line 326
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.getId:()J
            invokevirtual java.lang.StringBuffer.append:(J)Ljava/lang/StringBuffer;
        10: .line 327
            ldc " ("
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            aload 4 /* curPhase */
            getfield com.sun.javafx.logging.PrintLogger$ThreadLocalData.phaseStart:J
            aload 5 /* pulseData */
            getfield com.sun.javafx.logging.PrintLogger$PulseData.startTime:J
            lsub
            ldc 1000000
            ldiv
            invokevirtual java.lang.StringBuffer.append:(J)Ljava/lang/StringBuffer;
        11: .line 328
            ldc " +"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            lload 2 /* curTime */
            aload 4 /* curPhase */
            getfield com.sun.javafx.logging.PrintLogger$ThreadLocalData.phaseStart:J
            lsub
            ldc 1000000
            ldiv
            invokevirtual java.lang.StringBuffer.append:(J)Ljava/lang/StringBuffer;
            ldc "ms): "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
        12: .line 329
            aload 4 /* curPhase */
            getfield com.sun.javafx.logging.PrintLogger$ThreadLocalData.phaseName:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
        13: .line 330
            ldc "\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        end local 5 // com.sun.javafx.logging.PrintLogger$PulseData pulseData
        14: .line 333
      StackMap locals:
      StackMap stack:
            aload 4 /* curPhase */
            aload 1 /* name */
            putfield com.sun.javafx.logging.PrintLogger$ThreadLocalData.phaseName:Ljava/lang/String;
        15: .line 334
            aload 4 /* curPhase */
            lload 2 /* curTime */
            putfield com.sun.javafx.logging.PrintLogger$ThreadLocalData.phaseStart:J
        16: .line 335
            return
        end local 4 // com.sun.javafx.logging.PrintLogger$ThreadLocalData curPhase
        end local 2 // long curTime
        end local 1 // java.lang.String name
        end local 0 // com.sun.javafx.logging.PrintLogger this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   17     0       this  Lcom/sun/javafx/logging/PrintLogger;
            0   17     1       name  Ljava/lang/String;
            1   17     2    curTime  J
            2   17     4   curPhase  Lcom/sun/javafx/logging/PrintLogger$ThreadLocalData;
            6   14     5  pulseData  Lcom/sun/javafx/logging/PrintLogger$PulseData;
    MethodParameters:
      Name  Flags
      name  

  private static java.lang.Integer lambda$1();
    descriptor: ()Ljava/lang/Integer;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 65
            ldc "javafx.pulseLogger.threshold"
            bipush 17
            invokestatic java.lang.Integer.getInteger:(Ljava/lang/String;I)Ljava/lang/Integer;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static java.lang.Integer lambda$0();
    descriptor: ()Ljava/lang/Integer;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 71
            ldc "javafx.pulseLogger.exitOnPulse"
            iconst_0
            invokestatic java.lang.Integer.getInteger:(Ljava/lang/String;I)Ljava/lang/Integer;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static java.lang.Boolean lambda$2();
    descriptor: ()Ljava/lang/Boolean;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 154
            ldc "javafx.pulseLogger"
            invokestatic java.lang.Boolean.getBoolean:(Ljava/lang/String;)Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "PrintLogger.java"
NestMembers:
  com.sun.javafx.logging.PrintLogger$1  com.sun.javafx.logging.PrintLogger$Counter  com.sun.javafx.logging.PrintLogger$PulseData  com.sun.javafx.logging.PrintLogger$ThreadLocalData
InnerClasses:
  com.sun.javafx.logging.PrintLogger$1
  private Counter = com.sun.javafx.logging.PrintLogger$Counter of com.sun.javafx.logging.PrintLogger
  private final PulseData = com.sun.javafx.logging.PrintLogger$PulseData of com.sun.javafx.logging.PrintLogger
  ThreadLocalData = com.sun.javafx.logging.PrintLogger$ThreadLocalData of com.sun.javafx.logging.PrintLogger
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles