class android.animation.FloatKeyframeSet extends android.animation.KeyframeSet implements android.animation.Keyframes$FloatKeyframes
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: android.animation.FloatKeyframeSet
  super_class: android.animation.KeyframeSet
{
  public void <init>(android.animation.Keyframe$FloatKeyframe[]);
    descriptor: ([Landroid/animation/Keyframe$FloatKeyframe;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.animation.FloatKeyframeSet this
        start local 1 // android.animation.Keyframe$FloatKeyframe[] keyframes
         0: .line 35
            aload 0 /* this */
            aload 1 /* keyframes */
            invokespecial android.animation.KeyframeSet.<init>:([Landroid/animation/Keyframe;)V
         1: .line 36
            return
        end local 1 // android.animation.Keyframe$FloatKeyframe[] keyframes
        end local 0 // android.animation.FloatKeyframeSet this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Landroid/animation/FloatKeyframeSet;
            0    2     1  keyframes  [Landroid/animation/Keyframe$FloatKeyframe;
    MethodParameters:
           Name  Flags
      keyframes  

  public java.lang.Object getValue(float);
    descriptor: (F)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.animation.FloatKeyframeSet this
        start local 1 // float fraction
         0: .line 40
            aload 0 /* this */
            fload 1 /* fraction */
            invokevirtual android.animation.FloatKeyframeSet.getFloatValue:(F)F
            invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
            areturn
        end local 1 // float fraction
        end local 0 // android.animation.FloatKeyframeSet this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Landroid/animation/FloatKeyframeSet;
            0    1     1  fraction  F
    MethodParameters:
          Name  Flags
      fraction  

  public android.animation.FloatKeyframeSet clone();
    descriptor: ()Landroid/animation/FloatKeyframeSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // android.animation.FloatKeyframeSet this
         0: .line 45
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mKeyframes:Ljava/util/List;
            astore 1 /* keyframes */
        start local 1 // java.util.List keyframes
         1: .line 46
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mKeyframes:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 2 /* numKeyframes */
        start local 2 // int numKeyframes
         2: .line 47
            iload 2 /* numKeyframes */
            anewarray android.animation.Keyframe$FloatKeyframe
            astore 3 /* newKeyframes */
        start local 3 // android.animation.Keyframe$FloatKeyframe[] newKeyframes
         3: .line 48
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 7
         5: .line 49
      StackMap locals: android.animation.FloatKeyframeSet java.util.List int android.animation.Keyframe$FloatKeyframe[] int
      StackMap stack:
            aload 3 /* newKeyframes */
            iload 4 /* i */
            aload 1 /* keyframes */
            iload 4 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast android.animation.Keyframe
            invokevirtual android.animation.Keyframe.clone:()Landroid/animation/Keyframe;
            checkcast android.animation.Keyframe$FloatKeyframe
            aastore
         6: .line 48
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            iload 2 /* numKeyframes */
            if_icmplt 5
        end local 4 // int i
         8: .line 51
            new android.animation.FloatKeyframeSet
            dup
            aload 3 /* newKeyframes */
            invokespecial android.animation.FloatKeyframeSet.<init>:([Landroid/animation/Keyframe$FloatKeyframe;)V
            astore 4 /* newSet */
        start local 4 // android.animation.FloatKeyframeSet newSet
         9: .line 52
            aload 4 /* newSet */
            areturn
        end local 4 // android.animation.FloatKeyframeSet newSet
        end local 3 // android.animation.Keyframe$FloatKeyframe[] newKeyframes
        end local 2 // int numKeyframes
        end local 1 // java.util.List keyframes
        end local 0 // android.animation.FloatKeyframeSet this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0          this  Landroid/animation/FloatKeyframeSet;
            1   10     1     keyframes  Ljava/util/List<Landroid/animation/Keyframe;>;
            2   10     2  numKeyframes  I
            3   10     3  newKeyframes  [Landroid/animation/Keyframe$FloatKeyframe;
            4    8     4             i  I
            9   10     4        newSet  Landroid/animation/FloatKeyframeSet;

  public float getFloatValue(float);
    descriptor: (F)F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=10, args_size=2
        start local 0 // android.animation.FloatKeyframeSet this
        start local 1 // float fraction
         0: .line 57
            fload 1 /* fraction */
            fconst_0
            fcmpg
            ifgt 16
         1: .line 58
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mKeyframes:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast android.animation.Keyframe$FloatKeyframe
            astore 2 /* prevKeyframe */
        start local 2 // android.animation.Keyframe$FloatKeyframe prevKeyframe
         2: .line 59
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mKeyframes:Ljava/util/List;
            iconst_1
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast android.animation.Keyframe$FloatKeyframe
            astore 3 /* nextKeyframe */
        start local 3 // android.animation.Keyframe$FloatKeyframe nextKeyframe
         3: .line 60
            aload 2 /* prevKeyframe */
            invokevirtual android.animation.Keyframe$FloatKeyframe.getFloatValue:()F
            fstore 4 /* prevValue */
        start local 4 // float prevValue
         4: .line 61
            aload 3 /* nextKeyframe */
            invokevirtual android.animation.Keyframe$FloatKeyframe.getFloatValue:()F
            fstore 5 /* nextValue */
        start local 5 // float nextValue
         5: .line 62
            aload 2 /* prevKeyframe */
            invokevirtual android.animation.Keyframe$FloatKeyframe.getFraction:()F
            fstore 6 /* prevFraction */
        start local 6 // float prevFraction
         6: .line 63
            aload 3 /* nextKeyframe */
            invokevirtual android.animation.Keyframe$FloatKeyframe.getFraction:()F
            fstore 7 /* nextFraction */
        start local 7 // float nextFraction
         7: .line 64
            aload 3 /* nextKeyframe */
            invokevirtual android.animation.Keyframe$FloatKeyframe.getInterpolator:()Landroid/animation/TimeInterpolator;
            astore 8 /* interpolator */
        start local 8 // android.animation.TimeInterpolator interpolator
         8: .line 65
            aload 8 /* interpolator */
            ifnull 10
         9: .line 66
            aload 8 /* interpolator */
            fload 1 /* fraction */
            invokeinterface android.animation.TimeInterpolator.getInterpolation:(F)F
            fstore 1 /* fraction */
        10: .line 68
      StackMap locals: android.animation.FloatKeyframeSet float android.animation.Keyframe$FloatKeyframe android.animation.Keyframe$FloatKeyframe float float float float android.animation.TimeInterpolator
      StackMap stack:
            fload 1 /* fraction */
            fload 6 /* prevFraction */
            fsub
            fload 7 /* nextFraction */
            fload 6 /* prevFraction */
            fsub
            fdiv
            fstore 9 /* intervalFraction */
        start local 9 // float intervalFraction
        11: .line 69
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mEvaluator:Landroid/animation/TypeEvaluator;
            ifnonnull 13
        12: .line 70
            fload 4 /* prevValue */
            fload 9 /* intervalFraction */
            fload 5 /* nextValue */
            fload 4 /* prevValue */
            fsub
            fmul
            fadd
            goto 15
        13: .line 71
      StackMap locals: float
      StackMap stack:
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mEvaluator:Landroid/animation/TypeEvaluator;
            fload 9 /* intervalFraction */
            fload 4 /* prevValue */
            invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
            fload 5 /* nextValue */
            invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
            invokeinterface android.animation.TypeEvaluator.evaluate:(FLjava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Number
        14: .line 72
            invokevirtual java.lang.Number.floatValue:()F
        15: .line 69
      StackMap locals:
      StackMap stack: float
            freturn
        end local 9 // float intervalFraction
        end local 8 // android.animation.TimeInterpolator interpolator
        end local 7 // float nextFraction
        end local 6 // float prevFraction
        end local 5 // float nextValue
        end local 4 // float prevValue
        end local 3 // android.animation.Keyframe$FloatKeyframe nextKeyframe
        end local 2 // android.animation.Keyframe$FloatKeyframe prevKeyframe
        16: .line 73
      StackMap locals: android.animation.FloatKeyframeSet float
      StackMap stack:
            fload 1 /* fraction */
            fconst_1
            fcmpl
            iflt 32
        17: .line 74
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mKeyframes:Ljava/util/List;
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mNumKeyframes:I
            iconst_2
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast android.animation.Keyframe$FloatKeyframe
            astore 2 /* prevKeyframe */
        start local 2 // android.animation.Keyframe$FloatKeyframe prevKeyframe
        18: .line 75
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mKeyframes:Ljava/util/List;
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mNumKeyframes:I
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast android.animation.Keyframe$FloatKeyframe
            astore 3 /* nextKeyframe */
        start local 3 // android.animation.Keyframe$FloatKeyframe nextKeyframe
        19: .line 76
            aload 2 /* prevKeyframe */
            invokevirtual android.animation.Keyframe$FloatKeyframe.getFloatValue:()F
            fstore 4 /* prevValue */
        start local 4 // float prevValue
        20: .line 77
            aload 3 /* nextKeyframe */
            invokevirtual android.animation.Keyframe$FloatKeyframe.getFloatValue:()F
            fstore 5 /* nextValue */
        start local 5 // float nextValue
        21: .line 78
            aload 2 /* prevKeyframe */
            invokevirtual android.animation.Keyframe$FloatKeyframe.getFraction:()F
            fstore 6 /* prevFraction */
        start local 6 // float prevFraction
        22: .line 79
            aload 3 /* nextKeyframe */
            invokevirtual android.animation.Keyframe$FloatKeyframe.getFraction:()F
            fstore 7 /* nextFraction */
        start local 7 // float nextFraction
        23: .line 80
            aload 3 /* nextKeyframe */
            invokevirtual android.animation.Keyframe$FloatKeyframe.getInterpolator:()Landroid/animation/TimeInterpolator;
            astore 8 /* interpolator */
        start local 8 // android.animation.TimeInterpolator interpolator
        24: .line 81
            aload 8 /* interpolator */
            ifnull 26
        25: .line 82
            aload 8 /* interpolator */
            fload 1 /* fraction */
            invokeinterface android.animation.TimeInterpolator.getInterpolation:(F)F
            fstore 1 /* fraction */
        26: .line 84
      StackMap locals: android.animation.FloatKeyframeSet float android.animation.Keyframe$FloatKeyframe android.animation.Keyframe$FloatKeyframe float float float float android.animation.TimeInterpolator
      StackMap stack:
            fload 1 /* fraction */
            fload 6 /* prevFraction */
            fsub
            fload 7 /* nextFraction */
            fload 6 /* prevFraction */
            fsub
            fdiv
            fstore 9 /* intervalFraction */
        start local 9 // float intervalFraction
        27: .line 85
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mEvaluator:Landroid/animation/TypeEvaluator;
            ifnonnull 29
        28: .line 86
            fload 4 /* prevValue */
            fload 9 /* intervalFraction */
            fload 5 /* nextValue */
            fload 4 /* prevValue */
            fsub
            fmul
            fadd
            goto 31
        29: .line 87
      StackMap locals: float
      StackMap stack:
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mEvaluator:Landroid/animation/TypeEvaluator;
            fload 9 /* intervalFraction */
            fload 4 /* prevValue */
            invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
            fload 5 /* nextValue */
            invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
            invokeinterface android.animation.TypeEvaluator.evaluate:(FLjava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Number
        30: .line 88
            invokevirtual java.lang.Number.floatValue:()F
        31: .line 85
      StackMap locals:
      StackMap stack: float
            freturn
        end local 9 // float intervalFraction
        end local 8 // android.animation.TimeInterpolator interpolator
        end local 7 // float nextFraction
        end local 6 // float prevFraction
        end local 5 // float nextValue
        end local 4 // float prevValue
        end local 3 // android.animation.Keyframe$FloatKeyframe nextKeyframe
        end local 2 // android.animation.Keyframe$FloatKeyframe prevKeyframe
        32: .line 90
      StackMap locals: android.animation.FloatKeyframeSet float
      StackMap stack:
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mKeyframes:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast android.animation.Keyframe$FloatKeyframe
            astore 2 /* prevKeyframe */
        start local 2 // android.animation.Keyframe$FloatKeyframe prevKeyframe
        33: .line 91
            iconst_1
            istore 3 /* i */
        start local 3 // int i
        34: goto 52
        35: .line 92
      StackMap locals: android.animation.Keyframe$FloatKeyframe int
      StackMap stack:
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mKeyframes:Ljava/util/List;
            iload 3 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast android.animation.Keyframe$FloatKeyframe
            astore 4 /* nextKeyframe */
        start local 4 // android.animation.Keyframe$FloatKeyframe nextKeyframe
        36: .line 93
            fload 1 /* fraction */
            aload 4 /* nextKeyframe */
            invokevirtual android.animation.Keyframe$FloatKeyframe.getFraction:()F
            fcmpg
            ifge 50
        37: .line 94
            aload 4 /* nextKeyframe */
            invokevirtual android.animation.Keyframe$FloatKeyframe.getInterpolator:()Landroid/animation/TimeInterpolator;
            astore 5 /* interpolator */
        start local 5 // android.animation.TimeInterpolator interpolator
        38: .line 95
            fload 1 /* fraction */
            aload 2 /* prevKeyframe */
            invokevirtual android.animation.Keyframe$FloatKeyframe.getFraction:()F
            fsub
        39: .line 96
            aload 4 /* nextKeyframe */
            invokevirtual android.animation.Keyframe$FloatKeyframe.getFraction:()F
            aload 2 /* prevKeyframe */
            invokevirtual android.animation.Keyframe$FloatKeyframe.getFraction:()F
            fsub
        40: .line 95
            fdiv
            fstore 6 /* intervalFraction */
        start local 6 // float intervalFraction
        41: .line 97
            aload 2 /* prevKeyframe */
            invokevirtual android.animation.Keyframe$FloatKeyframe.getFloatValue:()F
            fstore 7 /* prevValue */
        start local 7 // float prevValue
        42: .line 98
            aload 4 /* nextKeyframe */
            invokevirtual android.animation.Keyframe$FloatKeyframe.getFloatValue:()F
            fstore 8 /* nextValue */
        start local 8 // float nextValue
        43: .line 100
            aload 5 /* interpolator */
            ifnull 45
        44: .line 101
            aload 5 /* interpolator */
            fload 6 /* intervalFraction */
            invokeinterface android.animation.TimeInterpolator.getInterpolation:(F)F
            fstore 6 /* intervalFraction */
        45: .line 103
      StackMap locals: android.animation.FloatKeyframeSet float android.animation.Keyframe$FloatKeyframe int android.animation.Keyframe$FloatKeyframe android.animation.TimeInterpolator float float float
      StackMap stack:
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mEvaluator:Landroid/animation/TypeEvaluator;
            ifnonnull 47
        46: .line 104
            fload 7 /* prevValue */
            fload 6 /* intervalFraction */
            fload 8 /* nextValue */
            fload 7 /* prevValue */
            fsub
            fmul
            fadd
            goto 49
        47: .line 105
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mEvaluator:Landroid/animation/TypeEvaluator;
            fload 6 /* intervalFraction */
            fload 7 /* prevValue */
            invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
            fload 8 /* nextValue */
            invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
            invokeinterface android.animation.TypeEvaluator.evaluate:(FLjava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Number
        48: .line 106
            invokevirtual java.lang.Number.floatValue:()F
        49: .line 103
      StackMap locals:
      StackMap stack: float
            freturn
        end local 8 // float nextValue
        end local 7 // float prevValue
        end local 6 // float intervalFraction
        end local 5 // android.animation.TimeInterpolator interpolator
        50: .line 108
      StackMap locals: android.animation.FloatKeyframeSet float android.animation.Keyframe$FloatKeyframe int android.animation.Keyframe$FloatKeyframe
      StackMap stack:
            aload 4 /* nextKeyframe */
            astore 2 /* prevKeyframe */
        end local 4 // android.animation.Keyframe$FloatKeyframe nextKeyframe
        51: .line 91
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        52: iload 3 /* i */
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mNumKeyframes:I
            if_icmplt 35
        end local 3 // int i
        53: .line 111
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mKeyframes:Ljava/util/List;
            aload 0 /* this */
            getfield android.animation.FloatKeyframeSet.mNumKeyframes:I
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast android.animation.Keyframe
            invokevirtual android.animation.Keyframe.getValue:()Ljava/lang/Object;
            checkcast java.lang.Number
            invokevirtual java.lang.Number.floatValue:()F
            freturn
        end local 2 // android.animation.Keyframe$FloatKeyframe prevKeyframe
        end local 1 // float fraction
        end local 0 // android.animation.FloatKeyframeSet this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   54     0              this  Landroid/animation/FloatKeyframeSet;
            0   54     1          fraction  F
            2   16     2      prevKeyframe  Landroid/animation/Keyframe$FloatKeyframe;
            3   16     3      nextKeyframe  Landroid/animation/Keyframe$FloatKeyframe;
            4   16     4         prevValue  F
            5   16     5         nextValue  F
            6   16     6      prevFraction  F
            7   16     7      nextFraction  F
            8   16     8      interpolator  Landroid/animation/TimeInterpolator;
           11   16     9  intervalFraction  F
           18   32     2      prevKeyframe  Landroid/animation/Keyframe$FloatKeyframe;
           19   32     3      nextKeyframe  Landroid/animation/Keyframe$FloatKeyframe;
           20   32     4         prevValue  F
           21   32     5         nextValue  F
           22   32     6      prevFraction  F
           23   32     7      nextFraction  F
           24   32     8      interpolator  Landroid/animation/TimeInterpolator;
           27   32     9  intervalFraction  F
           33   54     2      prevKeyframe  Landroid/animation/Keyframe$FloatKeyframe;
           34   53     3                 i  I
           36   51     4      nextKeyframe  Landroid/animation/Keyframe$FloatKeyframe;
           38   50     5      interpolator  Landroid/animation/TimeInterpolator;
           41   50     6  intervalFraction  F
           42   50     7         prevValue  F
           43   50     8         nextValue  F
    MethodParameters:
          Name  Flags
      fraction  

  public java.lang.Class getType();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.animation.FloatKeyframeSet this
         0: .line 116
            ldc Ljava/lang/Float;
            areturn
        end local 0 // android.animation.FloatKeyframeSet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/animation/FloatKeyframeSet;

  public android.animation.KeyframeSet clone();
    descriptor: ()Landroid/animation/KeyframeSet;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual android.animation.FloatKeyframeSet.clone:()Landroid/animation/FloatKeyframeSet;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public android.animation.Keyframes clone();
    descriptor: ()Landroid/animation/Keyframes;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual android.animation.FloatKeyframeSet.clone:()Landroid/animation/FloatKeyframeSet;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.lang.Object clone();
    descriptor: ()Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual android.animation.FloatKeyframeSet.clone:()Landroid/animation/FloatKeyframeSet;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.lang.CloneNotSupportedException
}
SourceFile: "FloatKeyframeSet.java"
InnerClasses:
  FloatKeyframe = android.animation.Keyframe$FloatKeyframe of android.animation.Keyframe
  public abstract FloatKeyframes = android.animation.Keyframes$FloatKeyframes of android.animation.Keyframes