final class jdk.jfr.internal.Utils$ThrottleUnit extends java.lang.Enum<jdk.jfr.internal.Utils$ThrottleUnit>
  minor version: 0
  major version: 59
  flags: flags: (0x4030) ACC_FINAL, ACC_SUPER, ACC_ANNOTATION
  this_class: jdk.jfr.internal.Utils$ThrottleUnit
  super_class: java.lang.Enum
{
  public static final jdk.jfr.internal.Utils$ThrottleUnit NANOSECONDS;
    descriptor: Ljdk/jfr/internal/Utils$ThrottleUnit;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final jdk.jfr.internal.Utils$ThrottleUnit MICROSECONDS;
    descriptor: Ljdk/jfr/internal/Utils$ThrottleUnit;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final jdk.jfr.internal.Utils$ThrottleUnit MILLISECONDS;
    descriptor: Ljdk/jfr/internal/Utils$ThrottleUnit;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final jdk.jfr.internal.Utils$ThrottleUnit SECONDS;
    descriptor: Ljdk/jfr/internal/Utils$ThrottleUnit;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final jdk.jfr.internal.Utils$ThrottleUnit MINUTES;
    descriptor: Ljdk/jfr/internal/Utils$ThrottleUnit;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final jdk.jfr.internal.Utils$ThrottleUnit HOUR;
    descriptor: Ljdk/jfr/internal/Utils$ThrottleUnit;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final jdk.jfr.internal.Utils$ThrottleUnit DAY;
    descriptor: Ljdk/jfr/internal/Utils$ThrottleUnit;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  private final java.lang.String text;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.concurrent.TimeUnit timeUnit;
    descriptor: Ljava/util/concurrent/TimeUnit;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final long factor;
    descriptor: J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final long millis;
    descriptor: J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final jdk.jfr.internal.Utils$ThrottleUnit[] ENUM$VALUES;
    descriptor: [Ljdk/jfr/internal/Utils$ThrottleUnit;
    flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=11, locals=0, args_size=0
         0: .line 210
            new jdk.jfr.internal.Utils$ThrottleUnit
            dup
            ldc "NANOSECONDS"
            iconst_0
            ldc "ns"
            getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
            lconst_1
            invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
            lconst_1
            invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
            invokespecial jdk.jfr.internal.Utils$ThrottleUnit.<init>:(Ljava/lang/String;ILjava/lang/String;Ljava/util/concurrent/TimeUnit;JJ)V
            putstatic jdk.jfr.internal.Utils$ThrottleUnit.NANOSECONDS:Ljdk/jfr/internal/Utils$ThrottleUnit;
         1: .line 211
            new jdk.jfr.internal.Utils$ThrottleUnit
            dup
            ldc "MICROSECONDS"
            iconst_1
            ldc "us"
            getstatic java.util.concurrent.TimeUnit.MICROSECONDS:Ljava/util/concurrent/TimeUnit;
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
            lconst_1
            invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
            ldc 1000
            ldiv
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
            lconst_1
            invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
            invokespecial jdk.jfr.internal.Utils$ThrottleUnit.<init>:(Ljava/lang/String;ILjava/lang/String;Ljava/util/concurrent/TimeUnit;JJ)V
            putstatic jdk.jfr.internal.Utils$ThrottleUnit.MICROSECONDS:Ljdk/jfr/internal/Utils$ThrottleUnit;
         2: .line 212
            new jdk.jfr.internal.Utils$ThrottleUnit
            dup
            ldc "MILLISECONDS"
            iconst_2
            ldc "ms"
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
            lconst_1
            invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
            lconst_1
            invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
            invokespecial jdk.jfr.internal.Utils$ThrottleUnit.<init>:(Ljava/lang/String;ILjava/lang/String;Ljava/util/concurrent/TimeUnit;JJ)V
            putstatic jdk.jfr.internal.Utils$ThrottleUnit.MILLISECONDS:Ljdk/jfr/internal/Utils$ThrottleUnit;
         3: .line 213
            new jdk.jfr.internal.Utils$ThrottleUnit
            dup
            ldc "SECONDS"
            iconst_3
            ldc "s"
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
            lconst_1
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
            lconst_1
            invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
            invokespecial jdk.jfr.internal.Utils$ThrottleUnit.<init>:(Ljava/lang/String;ILjava/lang/String;Ljava/util/concurrent/TimeUnit;JJ)V
            putstatic jdk.jfr.internal.Utils$ThrottleUnit.SECONDS:Ljdk/jfr/internal/Utils$ThrottleUnit;
         4: .line 214
            new jdk.jfr.internal.Utils$ThrottleUnit
            dup
            ldc "MINUTES"
            iconst_4
            ldc "m"
            getstatic java.util.concurrent.TimeUnit.MINUTES:Ljava/util/concurrent/TimeUnit;
            lconst_1
            getstatic java.util.concurrent.TimeUnit.MINUTES:Ljava/util/concurrent/TimeUnit;
            lconst_1
            invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
            invokespecial jdk.jfr.internal.Utils$ThrottleUnit.<init>:(Ljava/lang/String;ILjava/lang/String;Ljava/util/concurrent/TimeUnit;JJ)V
            putstatic jdk.jfr.internal.Utils$ThrottleUnit.MINUTES:Ljdk/jfr/internal/Utils$ThrottleUnit;
         5: .line 215
            new jdk.jfr.internal.Utils$ThrottleUnit
            dup
            ldc "HOUR"
            iconst_5
            ldc "h"
            getstatic java.util.concurrent.TimeUnit.HOURS:Ljava/util/concurrent/TimeUnit;
            lconst_1
            getstatic java.util.concurrent.TimeUnit.HOURS:Ljava/util/concurrent/TimeUnit;
            lconst_1
            invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
            invokespecial jdk.jfr.internal.Utils$ThrottleUnit.<init>:(Ljava/lang/String;ILjava/lang/String;Ljava/util/concurrent/TimeUnit;JJ)V
            putstatic jdk.jfr.internal.Utils$ThrottleUnit.HOUR:Ljdk/jfr/internal/Utils$ThrottleUnit;
         6: .line 216
            new jdk.jfr.internal.Utils$ThrottleUnit
            dup
            ldc "DAY"
            bipush 6
            ldc "d"
            getstatic java.util.concurrent.TimeUnit.DAYS:Ljava/util/concurrent/TimeUnit;
            lconst_1
            getstatic java.util.concurrent.TimeUnit.DAYS:Ljava/util/concurrent/TimeUnit;
            lconst_1
            invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
            invokespecial jdk.jfr.internal.Utils$ThrottleUnit.<init>:(Ljava/lang/String;ILjava/lang/String;Ljava/util/concurrent/TimeUnit;JJ)V
            putstatic jdk.jfr.internal.Utils$ThrottleUnit.DAY:Ljdk/jfr/internal/Utils$ThrottleUnit;
         7: .line 209
            bipush 7
            anewarray jdk.jfr.internal.Utils$ThrottleUnit
            dup
            iconst_0
            getstatic jdk.jfr.internal.Utils$ThrottleUnit.NANOSECONDS:Ljdk/jfr/internal/Utils$ThrottleUnit;
            aastore
            dup
            iconst_1
            getstatic jdk.jfr.internal.Utils$ThrottleUnit.MICROSECONDS:Ljdk/jfr/internal/Utils$ThrottleUnit;
            aastore
            dup
            iconst_2
            getstatic jdk.jfr.internal.Utils$ThrottleUnit.MILLISECONDS:Ljdk/jfr/internal/Utils$ThrottleUnit;
            aastore
            dup
            iconst_3
            getstatic jdk.jfr.internal.Utils$ThrottleUnit.SECONDS:Ljdk/jfr/internal/Utils$ThrottleUnit;
            aastore
            dup
            iconst_4
            getstatic jdk.jfr.internal.Utils$ThrottleUnit.MINUTES:Ljdk/jfr/internal/Utils$ThrottleUnit;
            aastore
            dup
            iconst_5
            getstatic jdk.jfr.internal.Utils$ThrottleUnit.HOUR:Ljdk/jfr/internal/Utils$ThrottleUnit;
            aastore
            dup
            bipush 6
            getstatic jdk.jfr.internal.Utils$ThrottleUnit.DAY:Ljdk/jfr/internal/Utils$ThrottleUnit;
            aastore
            putstatic jdk.jfr.internal.Utils$ThrottleUnit.ENUM$VALUES:[Ljdk/jfr/internal/Utils$ThrottleUnit;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>(java.lang.String, int, java.lang.String, java.util.concurrent.TimeUnit, long, long);
    descriptor: (Ljava/lang/String;ILjava/lang/String;Ljava/util/concurrent/TimeUnit;JJ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=9, args_size=7
        start local 0 // jdk.jfr.internal.Utils$ThrottleUnit this
        start local 3 // java.lang.String t
        start local 4 // java.util.concurrent.TimeUnit u
        start local 5 // long factor
        start local 7 // long millis
         0: .line 223
            aload 0 /* this */
            aload 1
            iload 2
            invokespecial java.lang.Enum.<init>:(Ljava/lang/String;I)V
         1: .line 224
            aload 0 /* this */
            aload 3 /* t */
            putfield jdk.jfr.internal.Utils$ThrottleUnit.text:Ljava/lang/String;
         2: .line 225
            aload 0 /* this */
            aload 4 /* u */
            putfield jdk.jfr.internal.Utils$ThrottleUnit.timeUnit:Ljava/util/concurrent/TimeUnit;
         3: .line 226
            aload 0 /* this */
            lload 5 /* factor */
            putfield jdk.jfr.internal.Utils$ThrottleUnit.factor:J
         4: .line 227
            aload 0 /* this */
            lload 7 /* millis */
            putfield jdk.jfr.internal.Utils$ThrottleUnit.millis:J
         5: .line 228
            return
        end local 7 // long millis
        end local 5 // long factor
        end local 4 // java.util.concurrent.TimeUnit u
        end local 3 // java.lang.String t
        end local 0 // jdk.jfr.internal.Utils$ThrottleUnit this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Ljdk/jfr/internal/Utils$ThrottleUnit;
            0    6     3       t  Ljava/lang/String;
            0    6     4       u  Ljava/util/concurrent/TimeUnit;
            0    6     5  factor  J
            0    6     7  millis  J
    MethodParameters:
               Name  Flags
      $enum$name     
      $enum$ordinal  
      t              
      u              
      factor         
      millis         

  private static jdk.jfr.internal.Utils$ThrottleUnit parse(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljdk/jfr/internal/Utils$ThrottleUnit;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 231
            aload 0 /* s */
            ldc "off"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 232
            getstatic jdk.jfr.internal.Utils$ThrottleUnit.MILLISECONDS:Ljdk/jfr/internal/Utils$ThrottleUnit;
            areturn
         2: .line 234
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            iconst_0
            invokestatic jdk.jfr.internal.Utils.parseThrottleString:(Ljava/lang/String;Z)Ljava/lang/String;
            invokestatic jdk.jfr.internal.Utils$ThrottleUnit.unit:(Ljava/lang/String;)Ljdk/jfr/internal/Utils$ThrottleUnit;
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  private static jdk.jfr.internal.Utils$ThrottleUnit unit(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljdk/jfr/internal/Utils$ThrottleUnit;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 238
            aload 0 /* s */
            ldc "ns"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 1
            aload 0 /* s */
            ldc "us"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 1
            aload 0 /* s */
            ldc "ms"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 239
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            iconst_2
            isub
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokestatic jdk.jfr.internal.Utils$ThrottleUnit.value:(Ljava/lang/String;)Ljdk/jfr/internal/Utils$ThrottleUnit;
            areturn
         2: .line 241
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            ldc "s"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 3
            aload 0 /* s */
            ldc "m"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 3
            aload 0 /* s */
            ldc "h"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 3
            aload 0 /* s */
            ldc "d"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 4
         3: .line 242
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokestatic jdk.jfr.internal.Utils$ThrottleUnit.value:(Ljava/lang/String;)Ljdk/jfr/internal/Utils$ThrottleUnit;
            areturn
         4: .line 244
      StackMap locals:
      StackMap stack:
            new java.lang.NumberFormatException
            dup
            new java.lang.StringBuilder
            dup
            ldc "'"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' is not a valid time unit."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.NumberFormatException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  private static jdk.jfr.internal.Utils$ThrottleUnit value(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljdk/jfr/internal/Utils$ThrottleUnit;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // java.lang.String s
         0: .line 248
            invokestatic jdk.jfr.internal.Utils$ThrottleUnit.values:()[Ljdk/jfr/internal/Utils$ThrottleUnit;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 5
      StackMap locals: java.lang.String top int int jdk.jfr.internal.Utils$ThrottleUnit[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* t */
        start local 1 // jdk.jfr.internal.Utils$ThrottleUnit t
         2: .line 249
            aload 1 /* t */
            getfield jdk.jfr.internal.Utils$ThrottleUnit.text:Ljava/lang/String;
            aload 0 /* s */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 250
            aload 1 /* t */
            areturn
        end local 1 // jdk.jfr.internal.Utils$ThrottleUnit t
         4: .line 248
      StackMap locals:
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
         5: iload 2
            iload 3
            if_icmplt 1
         6: .line 253
            new java.lang.NumberFormatException
            dup
            new java.lang.StringBuilder
            dup
            ldc "'"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' is not a valid time unit."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.NumberFormatException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0     s  Ljava/lang/String;
            2    4     1     t  Ljdk/jfr/internal/Utils$ThrottleUnit;
    MethodParameters:
      Name  Flags
      s     

  static long asMillis(java.lang.String);
    descriptor: (Ljava/lang/String;)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 257
            aload 0 /* s */
            invokestatic jdk.jfr.internal.Utils$ThrottleUnit.parse:(Ljava/lang/String;)Ljdk/jfr/internal/Utils$ThrottleUnit;
            getfield jdk.jfr.internal.Utils$ThrottleUnit.millis:J
            lreturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  static long normalizeValueAsMillis(long, java.lang.String);
    descriptor: (JLjava/lang/String;)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // long value
        start local 2 // java.lang.String s
         0: .line 261
            lload 0 /* value */
            aload 2 /* s */
            invokestatic jdk.jfr.internal.Utils$ThrottleUnit.parse:(Ljava/lang/String;)Ljdk/jfr/internal/Utils$ThrottleUnit;
            getfield jdk.jfr.internal.Utils$ThrottleUnit.factor:J
            lmul
            lreturn
        end local 2 // java.lang.String s
        end local 0 // long value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  value  J
            0    1     2      s  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      value  
      s      

  public static jdk.jfr.internal.Utils$ThrottleUnit[] values();
    descriptor: ()[Ljdk/jfr/internal/Utils$ThrottleUnit;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=0
         0: .line 1
            getstatic jdk.jfr.internal.Utils$ThrottleUnit.ENUM$VALUES:[Ljdk/jfr/internal/Utils$ThrottleUnit;
            dup
            astore 0
            iconst_0
            aload 0
            arraylength
            dup
            istore 1
            anewarray jdk.jfr.internal.Utils$ThrottleUnit
            dup
            astore 2
            iconst_0
            iload 1
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
            aload 2
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static jdk.jfr.internal.Utils$ThrottleUnit valueOf(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljdk/jfr/internal/Utils$ThrottleUnit;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
         0: .line 1
            ldc Ljdk/jfr/internal/Utils$ThrottleUnit;
            aload 0
            invokestatic java.lang.Enum.valueOf:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
            checkcast jdk.jfr.internal.Utils$ThrottleUnit
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
      Name  Flags
      name  
}
Signature: Ljava/lang/Enum<Ljdk/jfr/internal/Utils$ThrottleUnit;>;
SourceFile: "Utils.java"
NestHost: jdk.jfr.internal.Utils
InnerClasses:
  final ThrottleUnit = jdk.jfr.internal.Utils$ThrottleUnit of jdk.jfr.internal.Utils