diff --git a/lottie/src/main/java/com/airbnb/lottie/model/animatable/AnimatableGradientColorValue.java b/lottie/src/main/java/com/airbnb/lottie/model/animatable/AnimatableGradientColorValue.java
index 027c6c6..963b7ff 100644
--- a/lottie/src/main/java/com/airbnb/lottie/model/animatable/AnimatableGradientColorValue.java
+++ b/lottie/src/main/java/com/airbnb/lottie/model/animatable/AnimatableGradientColorValue.java
@@ -5,13 +5,49 @@
 import com.airbnb.lottie.model.content.GradientColor;
 import com.airbnb.lottie.value.Keyframe;
 
+import java.util.Arrays;
+import java.util.Collections;
 import java.util.List;
 
 public class AnimatableGradientColorValue extends BaseAnimatableValue<GradientColor,
     GradientColor> {
-  public AnimatableGradientColorValue(
-      List<Keyframe<GradientColor>> keyframes) {
-    super(keyframes);
+  public AnimatableGradientColorValue(List<Keyframe<GradientColor>> keyframes) {
+    super(ensureInterpolatableKeyframes(keyframes));
+  }
+
+  private static List<Keyframe<GradientColor>> ensureInterpolatableKeyframes(List<Keyframe<GradientColor>> keyframes) {
+    for (int i = 0; i < keyframes.size(); i++) {
+      keyframes.set(i, ensureInterpolatableKeyframe(keyframes.get(i)));
+    }
+    return keyframes;
+  }
+
+  private static Keyframe<GradientColor> ensureInterpolatableKeyframe(Keyframe<GradientColor> keyframe) {
+    GradientColor startValue = keyframe.startValue;
+    GradientColor endValue = keyframe.endValue;
+    if (startValue == null || endValue == null || startValue.getPositions().length == endValue.getPositions().length) {
+      return keyframe;
+    }
+    float[] mergedPositions = mergePositions(startValue.getPositions(), endValue.getPositions());
+    // The start/end has opacity stops which required adding extra positions in between the existing colors.
+    return keyframe.copyWith(startValue.copyWithPositions(mergedPositions), endValue.copyWithPositions(mergedPositions));
+  }
+
+  static float[] mergePositions(float[] startPositions, float[] endPositions) {
+    float[] mergedArray = new float[startPositions.length + endPositions.length];
+    System.arraycopy(startPositions, 0, mergedArray, 0, startPositions.length);
+    System.arraycopy(endPositions, 0, mergedArray, startPositions.length, endPositions.length);
+    Arrays.sort(mergedArray);
+    int uniqueValues = 0;
+    float lastValue = Float.NaN;
+    for (int i = 0; i < mergedArray.length; i++) {
+      if (mergedArray[i] != lastValue) {
+        mergedArray[uniqueValues] = mergedArray[i];
+        uniqueValues++;
+        lastValue = mergedArray[i];
+      }
+    }
+    return Arrays.copyOfRange(mergedArray, 0, uniqueValues);
   }
 
   @Override public BaseKeyframeAnimation<GradientColor, GradientColor> createAnimation() {
diff --git a/lottie/src/main/java/com/airbnb/lottie/model/content/GradientColor.java b/lottie/src/main/java/com/airbnb/lottie/model/content/GradientColor.java
index 8385c15..aa69e04 100644
--- a/lottie/src/main/java/com/airbnb/lottie/model/content/GradientColor.java
+++ b/lottie/src/main/java/com/airbnb/lottie/model/content/GradientColor.java
@@ -3,6 +3,8 @@
 import com.airbnb.lottie.utils.GammaEvaluator;
 import com.airbnb.lottie.utils.MiscUtils;
 
+import java.util.Arrays;
+
 
 public class GradientColor {
   private final float[] positions;
@@ -36,4 +38,33 @@
       colors[i] = GammaEvaluator.evaluate(progress, gc1.colors[i], gc2.colors[i]);
     }
   }
+
+  public GradientColor copyWithPositions(float[] positions) {
+    int[] colors = new int[positions.length];
+    for (int i = 0; i < positions.length; i++) {
+      colors[i] = getColorForPosition(positions[i]);
+    }
+    return new GradientColor(positions, colors);
+  }
+
+  private int getColorForPosition(float position) {
+    int existingIndex = Arrays.binarySearch(positions, position);
+    if (existingIndex >= 0) {
+      return colors[existingIndex];
+    }
+    // binarySearch returns -insertionPoint - 1 if it is not found.
+    int insertionPoint = -(existingIndex + 1);
+    if (insertionPoint == 0) {
+      return colors[0];
+    } else if (insertionPoint == colors.length - 1) {
+      return colors[colors.length - 1];
+    }
+    float startPosition = positions[insertionPoint - 1];
+    float endPosition = positions[insertionPoint];
+    int startColor = colors[insertionPoint - 1];
+    int endColor = colors[insertionPoint];
+
+    float fraction = (position - startPosition) / (endPosition - startPosition);
+    return GammaEvaluator.evaluate(fraction, startColor, endColor);
+  }
 }
diff --git a/lottie/src/main/java/com/airbnb/lottie/parser/AnimatableValueParser.java b/lottie/src/main/java/com/airbnb/lottie/parser/AnimatableValueParser.java
index 01ea02c..99ff81d 100644
--- a/lottie/src/main/java/com/airbnb/lottie/parser/AnimatableValueParser.java
+++ b/lottie/src/main/java/com/airbnb/lottie/parser/AnimatableValueParser.java
@@ -65,8 +65,9 @@
 
   static AnimatableGradientColorValue parseGradientColor(
       JsonReader reader, LottieComposition composition, int points) throws IOException {
-    return new AnimatableGradientColorValue(
+    AnimatableGradientColorValue animatableGradientColorValue = new AnimatableGradientColorValue(
         parse(reader, composition, new GradientColorParser(points)));
+    return animatableGradientColorValue;
   }
 
   /**
diff --git a/lottie/src/main/java/com/airbnb/lottie/parser/GradientColorParser.java b/lottie/src/main/java/com/airbnb/lottie/parser/GradientColorParser.java
index 50a52e3..f1c5641 100644
--- a/lottie/src/main/java/com/airbnb/lottie/parser/GradientColorParser.java
+++ b/lottie/src/main/java/com/airbnb/lottie/parser/GradientColorParser.java
@@ -4,6 +4,7 @@
 
 import com.airbnb.lottie.model.content.GradientColor;
 import com.airbnb.lottie.parser.moshi.JsonReader;
+import com.airbnb.lottie.utils.GammaEvaluator;
 import com.airbnb.lottie.utils.MiscUtils;
 
 import java.io.IOException;
@@ -167,7 +168,7 @@
     return new GradientColor(newPositions, newColors);
   }
 
-  private int getColorInBetweenColorStops(float position, float opacity, float[] colorStopPositions, int[] colorStopColors) {
+  int getColorInBetweenColorStops(float position, float opacity, float[] colorStopPositions, int[] colorStopColors) {
     if (colorStopColors.length < 2 || position == colorStopPositions[0]) {
       return colorStopColors[0];
     }
@@ -183,9 +184,9 @@
       int upperColor = colorStopColors[i];
       int lowerColor = colorStopColors[i - 1];
       int a = (int) (opacity * 255);
-      int r = MiscUtils.lerp(Color.red(lowerColor), Color.red(upperColor), percentage);
-      int g = MiscUtils.lerp(Color.green(lowerColor), Color.green(upperColor), percentage);
-      int b = MiscUtils.lerp(Color.blue(lowerColor), Color.blue(upperColor), percentage);
+      int r = GammaEvaluator.evaluate(percentage, Color.red(lowerColor), Color.red(upperColor));
+      int g = GammaEvaluator.evaluate(percentage, Color.green(lowerColor), Color.green(upperColor));
+      int b = GammaEvaluator.evaluate(percentage, Color.blue(lowerColor), Color.blue(upperColor));
       return Color.argb(a, r, g, b);
     }
     throw new IllegalArgumentException("Unreachable code.");
diff --git a/lottie/src/main/java/com/airbnb/lottie/value/Keyframe.java b/lottie/src/main/java/com/airbnb/lottie/value/Keyframe.java
index 78f74db..6d110b7 100644
--- a/lottie/src/main/java/com/airbnb/lottie/value/Keyframe.java
+++ b/lottie/src/main/java/com/airbnb/lottie/value/Keyframe.java
@@ -90,6 +90,21 @@
     endFrame = Float.MAX_VALUE;
   }
 
+  private Keyframe(T startValue, T endValue) {
+    composition = null;
+    this.startValue = startValue;
+    this.endValue = endValue;
+    interpolator = null;
+    xInterpolator = null;
+    yInterpolator = null;
+    startFrame = Float.MIN_VALUE;
+    endFrame = Float.MAX_VALUE;
+  }
+
+  public Keyframe<T> copyWith(T startValue, T endValue) {
+    return new Keyframe<T>(startValue, endValue);
+  }
+
   public float getStartProgress() {
     if (composition == null) {
       return 0f;
diff --git a/lottie/src/test/java/com/airbnb/lottie/model/animatable/AnimatableGradientColorValueTest.java b/lottie/src/test/java/com/airbnb/lottie/model/animatable/AnimatableGradientColorValueTest.java
new file mode 100644
index 0000000..0b5004c
--- /dev/null
+++ b/lottie/src/test/java/com/airbnb/lottie/model/animatable/AnimatableGradientColorValueTest.java
@@ -0,0 +1,22 @@
+package com.airbnb.lottie.model.animatable;
+
+import static org.junit.Assert.*;
+
+import org.junit.Test;
+
+public class AnimatableGradientColorValueTest {
+  @Test
+  public void testMergeTheSame() {
+    assertArrayEquals(new float[]{1, 2}, AnimatableGradientColorValue.mergePositions(new float[]{1, 2}, new float[]{1, 2}), 0f);
+  }
+
+  @Test
+  public void testMergeDifferent() {
+    assertArrayEquals(new float[]{1, 2, 3, 4}, AnimatableGradientColorValue.mergePositions(new float[]{1, 2}, new float[]{3, 4}), 0f);
+  }
+
+  @Test
+  public void testMergeOneOverlap() {
+    assertArrayEquals(new float[]{1, 2, 3}, AnimatableGradientColorValue.mergePositions(new float[]{1, 2}, new float[]{2, 3}), 0f);
+  }
+}
\ No newline at end of file
diff --git a/snapshot-tests/src/main/assets/Tests/InterpolateBetweenOpacityStops.json b/snapshot-tests/src/main/assets/Tests/InterpolateBetweenOpacityStops.json
new file mode 100755
index 0000000..a049e73
--- /dev/null
+++ b/snapshot-tests/src/main/assets/Tests/InterpolateBetweenOpacityStops.json
@@ -0,0 +1,1038 @@
+{
+  "v": "5.7.4",
+  "fr": 60,
+  "ip": 0,
+  "op": 540,
+  "w": 750,
+  "h": 672,
+  "nm": "app_morning_background",
+  "ddd": 0,
+  "assets": [],
+  "layers": [
+    {
+      "ddd": 0,
+      "ind": 1,
+      "ty": 4,
+      "nm": "City state 2",
+      "td": 1,
+      "sr": 1,
+      "ks": {
+        "o": {
+          "a": 0,
+          "k": 100,
+          "ix": 11
+        },
+        "r": {
+          "a": 0,
+          "k": 0,
+          "ix": 10
+        },
+        "p": {
+          "a": 0,
+          "k": [
+            375,
+            336,
+            0
+          ],
+          "ix": 2,
+          "l": 2
+        },
+        "a": {
+          "a": 0,
+          "k": [
+            0,
+            0,
+            0
+          ],
+          "ix": 1,
+          "l": 2
+        },
+        "s": {
+          "a": 0,
+          "k": [
+            100,
+            100,
+            100
+          ],
+          "ix": 6,
+          "l": 2
+        }
+      },
+      "ao": 0,
+      "shapes": [
+        {
+          "ty": "gr",
+          "it": [
+            {
+              "ty": "rc",
+              "d": 1,
+              "s": {
+                "a": 0,
+                "k": [
+                  375,
+                  336
+                ],
+                "ix": 2
+              },
+              "p": {
+                "a": 0,
+                "k": [
+                  0,
+                  0
+                ],
+                "ix": 3
+              },
+              "r": {
+                "a": 0,
+                "k": 0,
+                "ix": 4
+              },
+              "nm": "Rectangle Path 1",
+              "mn": "ADBE Vector Shape - Rect",
+              "hd": false
+            },
+            {
+              "ty": "tr",
+              "p": {
+                "a": 0,
+                "k": [
+                  0,
+                  0
+                ],
+                "ix": 2
+              },
+              "a": {
+                "a": 0,
+                "k": [
+                  0,
+                  0
+                ],
+                "ix": 1
+              },
+              "s": {
+                "a": 0,
+                "k": [
+                  200,
+                  200
+                ],
+                "ix": 3
+              },
+              "r": {
+                "a": 0,
+                "k": 0,
+                "ix": 6
+              },
+              "o": {
+                "a": 0,
+                "k": 100,
+                "ix": 7
+              },
+              "sk": {
+                "a": 0,
+                "k": 0,
+                "ix": 4
+              },
+              "sa": {
+                "a": 0,
+                "k": 0,
+                "ix": 5
+              },
+              "nm": "Transform"
+            }
+          ],
+          "nm": "City state",
+          "np": 3,
+          "cix": 2,
+          "bm": 0,
+          "ix": 1,
+          "mn": "ADBE Vector Group",
+          "hd": false
+        }
+      ],
+      "ip": 0,
+      "op": 540,
+      "st": 0,
+      "bm": 0
+    },
+    {
+      "ddd": 0,
+      "ind": 2,
+      "ty": 4,
+      "nm": "Ellipse 3",
+      "tt": 2,
+      "sr": 1,
+      "ks": {
+        "o": {
+          "a": 0,
+          "k": 100,
+          "ix": 11
+        },
+        "r": {
+          "a": 0,
+          "k": 0,
+          "ix": 10
+        },
+        "p": {
+          "a": 0,
+          "k": [
+            375,
+            699,
+            0
+          ],
+          "ix": 2,
+          "l": 2
+        },
+        "a": {
+          "a": 0,
+          "k": [
+            0,
+            0,
+            0
+          ],
+          "ix": 1,
+          "l": 2
+        },
+        "s": {
+          "a": 1,
+          "k": [
+            {
+              "i": {
+                "x": [
+                  0.52,
+                  0.52,
+                  0.52
+                ],
+                "y": [
+                  0.979,
+                  0.984,
+                  1
+                ]
+              },
+              "o": {
+                "x": [
+                  0.48,
+                  0.48,
+                  0.48
+                ],
+                "y": [
+                  0.021,
+                  0.016,
+                  0
+                ]
+              },
+              "t": 0,
+              "s": [
+                100,
+                66,
+                100
+              ],
+              "e": [
+                173,
+                147,
+                100
+              ]
+            },
+            {
+              "i": {
+                "x": [
+                  0.52,
+                  0.52,
+                  0.52
+                ],
+                "y": [
+                  1,
+                  1,
+                  1
+                ]
+              },
+              "o": {
+                "x": [
+                  0.48,
+                  0.48,
+                  0.48
+                ],
+                "y": [
+                  0,
+                  0,
+                  0
+                ]
+              },
+              "t": 289,
+              "s": [
+                173,
+                147,
+                100
+              ],
+              "e": [
+                199,
+                169.092,
+                100
+              ]
+            },
+            {
+              "i": {
+                "x": [
+                  0.52,
+                  0.52,
+                  0.52
+                ],
+                "y": [
+                  1,
+                  1,
+                  1
+                ]
+              },
+              "o": {
+                "x": [
+                  0.48,
+                  0.48,
+                  0.48
+                ],
+                "y": [
+                  0,
+                  0,
+                  0
+                ]
+              },
+              "t": 300,
+              "s": [
+                199,
+                169.092,
+                100
+              ],
+              "e": [
+                100,
+                66,
+                100
+              ]
+            },
+            {
+              "t": 540
+            }
+          ],
+          "ix": 6,
+          "l": 2
+        }
+      },
+      "ao": 0,
+      "shapes": [
+        {
+          "ty": "gr",
+          "it": [
+            {
+              "d": 1,
+              "ty": "el",
+              "s": {
+                "a": 0,
+                "k": [
+                  363,
+                  363
+                ],
+                "ix": 2
+              },
+              "p": {
+                "a": 0,
+                "k": [
+                  0,
+                  0
+                ],
+                "ix": 3
+              },
+              "nm": "Ellipse Path 1",
+              "mn": "ADBE Vector Shape - Ellipse",
+              "hd": false
+            },
+            {
+              "ty": "gf",
+              "o": {
+                "a": 0,
+                "k": 100,
+                "ix": 10
+              },
+              "r": 1,
+              "bm": 0,
+              "g": {
+                "p": 5,
+                "k": {
+                  "a": 1,
+                  "k": [
+                    {
+                      "i": {
+                        "x": 0.833,
+                        "y": 0.833
+                      },
+                      "o": {
+                        "x": 0.167,
+                        "y": 0.167
+                      },
+                      "t": 0,
+                      "s": [
+                        0,
+                        0.956,
+                        0.474,
+                        0.442,
+                        0.265,
+                        0.89,
+                        0.468,
+                        0.367,
+                        0.529,
+                        0.824,
+                        0.461,
+                        0.292,
+                        0.765,
+                        0.878,
+                        0.614,
+                        0.397,
+                        1,
+                        0.931,
+                        0.766,
+                        0.502,
+                        0,
+                        1,
+                        0.256,
+                        0.665,
+                        0.513,
+                        0.33,
+                        0.756,
+                        0.165,
+                        1,
+                        0
+                      ],
+                      "e": [
+                        0.001,
+                        1,
+                        0.798,
+                        0.325,
+                        0.293,
+                        0.988,
+                        0.775,
+                        0.278,
+                        0.584,
+                        0.975,
+                        0.752,
+                        0.23,
+                        0.79,
+                        0.988,
+                        0.844,
+                        0.437,
+                        0.996,
+                        1,
+                        0.936,
+                        0.643,
+                        0,
+                        1,
+                        0.302,
+                        0.635,
+                        0.604,
+                        0.27,
+                        0.802,
+                        0.135,
+                        1,
+                        0
+                      ]
+                    },
+                    {
+                      "i": {
+                        "x": 0.833,
+                        "y": 0.833
+                      },
+                      "o": {
+                        "x": 0.167,
+                        "y": 0.167
+                      },
+                      "t": 247,
+                      "s": [
+                        0.001,
+                        1,
+                        0.798,
+                        0.325,
+                        0.293,
+                        0.988,
+                        0.775,
+                        0.278,
+                        0.584,
+                        0.975,
+                        0.752,
+                        0.23,
+                        0.79,
+                        0.988,
+                        0.844,
+                        0.437,
+                        0.996,
+                        1,
+                        0.936,
+                        0.643,
+                        0,
+                        1,
+                        0.302,
+                        0.635,
+                        0.604,
+                        0.27,
+                        0.802,
+                        0.135,
+                        1,
+                        0
+                      ],
+                      "e": [
+                        0,
+                        0.902,
+                        0.669,
+                        0.18,
+                        0.265,
+                        0.94,
+                        0.643,
+                        0.283,
+                        0.529,
+                        0.979,
+                        0.616,
+                        0.387,
+                        0.765,
+                        0.949,
+                        0.577,
+                        0.331,
+                        1,
+                        0.919,
+                        0.537,
+                        0.275,
+                        0,
+                        1,
+                        0.264,
+                        0.665,
+                        0.527,
+                        0.33,
+                        0.764,
+                        0.165,
+                        1,
+                        0
+                      ]
+                    },
+                    {
+                      "i": {
+                        "x": 0.833,
+                        "y": 0.833
+                      },
+                      "o": {
+                        "x": 0.167,
+                        "y": 0.167
+                      },
+                      "t": 301,
+                      "s": [
+                        0,
+                        0.902,
+                        0.669,
+                        0.18,
+                        0.265,
+                        0.94,
+                        0.643,
+                        0.283,
+                        0.529,
+                        0.979,
+                        0.616,
+                        0.387,
+                        0.765,
+                        0.949,
+                        0.577,
+                        0.331,
+                        1,
+                        0.919,
+                        0.537,
+                        0.275,
+                        0,
+                        1,
+                        0.264,
+                        0.665,
+                        0.527,
+                        0.33,
+                        0.764,
+                        0.165,
+                        1,
+                        0
+                      ],
+                      "e": [
+                        0,
+                        0.956,
+                        0.474,
+                        0.442,
+                        0.265,
+                        0.89,
+                        0.468,
+                        0.367,
+                        0.529,
+                        0.824,
+                        0.461,
+                        0.292,
+                        0.765,
+                        0.878,
+                        0.614,
+                        0.397,
+                        1,
+                        0.931,
+                        0.766,
+                        0.502,
+                        0,
+                        1,
+                        0.256,
+                        0.665,
+                        0.513,
+                        0.33,
+                        0.756,
+                        0.165,
+                        1,
+                        0
+                      ]
+                    },
+                    {
+                      "t": 540
+                    }
+                  ],
+                  "ix": 9
+                }
+              },
+              "s": {
+                "a": 0,
+                "k": [
+                  0,
+                  0
+                ],
+                "ix": 5
+              },
+              "e": {
+                "a": 0,
+                "k": [
+                  181.5,
+                  0
+                ],
+                "ix": 6
+              },
+              "t": 2,
+              "h": {
+                "a": 0,
+                "k": 0,
+                "ix": 7
+              },
+              "a": {
+                "a": 0,
+                "k": 0,
+                "ix": 8
+              },
+              "nm": "Gradient Fill 1",
+              "mn": "ADBE Vector Graphic - G-Fill",
+              "hd": false
+            },
+            {
+              "ty": "tr",
+              "p": {
+                "a": 0,
+                "k": [
+                  0,
+                  0
+                ],
+                "ix": 2
+              },
+              "a": {
+                "a": 0,
+                "k": [
+                  0,
+                  0
+                ],
+                "ix": 1
+              },
+              "s": {
+                "a": 0,
+                "k": [
+                  200,
+                  200
+                ],
+                "ix": 3
+              },
+              "r": {
+                "a": 0,
+                "k": 0,
+                "ix": 6
+              },
+              "o": {
+                "a": 0,
+                "k": 100,
+                "ix": 7
+              },
+              "sk": {
+                "a": 0,
+                "k": 0,
+                "ix": 4
+              },
+              "sa": {
+                "a": 0,
+                "k": 0,
+                "ix": 5
+              },
+              "nm": "Transform"
+            }
+          ],
+          "nm": "Ellipse 3",
+          "np": 2,
+          "cix": 2,
+          "bm": 0,
+          "ix": 1,
+          "mn": "ADBE Vector Group",
+          "hd": false
+        }
+      ],
+      "ip": 0,
+      "op": 540,
+      "st": 0,
+      "bm": 0
+    },
+    {
+      "ddd": 0,
+      "ind": 3,
+      "ty": 4,
+      "nm": "Shape Layer 1",
+      "sr": 1,
+      "ks": {
+        "o": {
+          "a": 0,
+          "k": 100,
+          "ix": 11
+        },
+        "r": {
+          "a": 0,
+          "k": 0,
+          "ix": 10
+        },
+        "p": {
+          "a": 0,
+          "k": [
+            375,
+            336,
+            0
+          ],
+          "ix": 2,
+          "l": 2
+        },
+        "a": {
+          "a": 0,
+          "k": [
+            0,
+            0,
+            0
+          ],
+          "ix": 1,
+          "l": 2
+        },
+        "s": {
+          "a": 0,
+          "k": [
+            100,
+            100,
+            100
+          ],
+          "ix": 6,
+          "l": 2
+        }
+      },
+      "ao": 0,
+      "shapes": [
+        {
+          "ty": "gr",
+          "it": [
+            {
+              "ty": "rc",
+              "d": 1,
+              "s": {
+                "a": 0,
+                "k": [
+                  750,
+                  672
+                ],
+                "ix": 2
+              },
+              "p": {
+                "a": 0,
+                "k": [
+                  0,
+                  0
+                ],
+                "ix": 3
+              },
+              "r": {
+                "a": 0,
+                "k": 0,
+                "ix": 4
+              },
+              "nm": "Rectangle Path 1",
+              "mn": "ADBE Vector Shape - Rect",
+              "hd": false
+            },
+            {
+              "ty": "gf",
+              "o": {
+                "a": 0,
+                "k": 100,
+                "ix": 10
+              },
+              "r": 1,
+              "bm": 0,
+              "g": {
+                "p": 5,
+                "k": {
+                  "a": 1,
+                  "k": [
+                    {
+                      "i": {
+                        "x": 0.833,
+                        "y": 0.833
+                      },
+                      "o": {
+                        "x": 0.167,
+                        "y": 0.167
+                      },
+                      "t": 0,
+                      "s": [
+                        0,
+                        0.971,
+                        0.408,
+                        0,
+                        0.377,
+                        0.956,
+                        0.515,
+                        0,
+                        0.755,
+                        0.942,
+                        0.621,
+                        0,
+                        0.877,
+                        0.971,
+                        0.671,
+                        0,
+                        1,
+                        1,
+                        0.72,
+                        0
+                      ],
+                      "e": [
+                        0,
+                        0.966,
+                        0.445,
+                        0,
+                        0.362,
+                        0.951,
+                        0.51,
+                        0,
+                        0.725,
+                        0.936,
+                        0.576,
+                        0,
+                        0.862,
+                        0.967,
+                        0.628,
+                        0,
+                        1,
+                        0.998,
+                        0.68,
+                        0
+                      ]
+                    },
+                    {
+                      "i": {
+                        "x": 0.833,
+                        "y": 0.833
+                      },
+                      "o": {
+                        "x": 0.167,
+                        "y": 0.167
+                      },
+                      "t": 49,
+                      "s": [
+                        0,
+                        0.966,
+                        0.445,
+                        0,
+                        0.362,
+                        0.951,
+                        0.51,
+                        0,
+                        0.725,
+                        0.936,
+                        0.576,
+                        0,
+                        0.862,
+                        0.967,
+                        0.628,
+                        0,
+                        1,
+                        0.998,
+                        0.68,
+                        0
+                      ],
+                      "e": [
+                        0,
+                        0.946,
+                        0.606,
+                        0,
+                        0.275,
+                        0.928,
+                        0.492,
+                        0,
+                        0.55,
+                        0.91,
+                        0.378,
+                        0,
+                        0.775,
+                        0.948,
+                        0.442,
+                        0,
+                        1,
+                        0.987,
+                        0.507,
+                        0
+                      ]
+                    },
+                    {
+                      "i": {
+                        "x": 0.833,
+                        "y": 0.833
+                      },
+                      "o": {
+                        "x": 0.167,
+                        "y": 0.167
+                      },
+                      "t": 260.375,
+                      "s": [
+                        0,
+                        0.946,
+                        0.606,
+                        0,
+                        0.275,
+                        0.928,
+                        0.492,
+                        0,
+                        0.55,
+                        0.91,
+                        0.378,
+                        0,
+                        0.775,
+                        0.948,
+                        0.442,
+                        0,
+                        1,
+                        0.987,
+                        0.507,
+                        0
+                      ],
+                      "e": [
+                        0,
+                        0.971,
+                        0.408,
+                        0,
+                        0.383,
+                        0.956,
+                        0.515,
+                        0,
+                        0.766,
+                        0.942,
+                        0.621,
+                        0,
+                        0.883,
+                        0.971,
+                        0.671,
+                        0,
+                        1,
+                        1,
+                        0.72,
+                        0
+                      ]
+                    },
+                    {
+                      "t": 540
+                    }
+                  ],
+                  "ix": 9
+                }
+              },
+              "s": {
+                "a": 0,
+                "k": [
+                  -2.047,
+                  331.848
+                ],
+                "ix": 5
+              },
+              "e": {
+                "a": 0,
+                "k": [
+                  3.137,
+                  -336.078
+                ],
+                "ix": 6
+              },
+              "t": 1,
+              "nm": "Gradient Fill 1",
+              "mn": "ADBE Vector Graphic - G-Fill",
+              "hd": false
+            },
+            {
+              "ty": "tr",
+              "p": {
+                "a": 0,
+                "k": [
+                  0,
+                  0
+                ],
+                "ix": 2
+              },
+              "a": {
+                "a": 0,
+                "k": [
+                  0,
+                  0
+                ],
+                "ix": 1
+              },
+              "s": {
+                "a": 0,
+                "k": [
+                  100,
+                  100
+                ],
+                "ix": 3
+              },
+              "r": {
+                "a": 0,
+                "k": 0,
+                "ix": 6
+              },
+              "o": {
+                "a": 0,
+                "k": 100,
+                "ix": 7
+              },
+              "sk": {
+                "a": 0,
+                "k": 0,
+                "ix": 4
+              },
+              "sa": {
+                "a": 0,
+                "k": 0,
+                "ix": 5
+              },
+              "nm": "Transform"
+            }
+          ],
+          "nm": "Rectangle 1",
+          "np": 2,
+          "cix": 2,
+          "bm": 0,
+          "ix": 1,
+          "mn": "ADBE Vector Group",
+          "hd": false
+        }
+      ],
+      "ip": 0,
+      "op": 540,
+      "st": 0,
+      "bm": 0
+    }
+  ],
+  "markers": []
+}
\ No newline at end of file
