Initial implementation of Lottie Compose (#1652)

This PR kicks off the work required to use Lottie with [Jetpack Compose](https://developer.android.com/jetpack/compose).
The API here will almost certainly change over time but I feel confident that this is a solid starting point with which to begin further API discussions.

The three primitives are:
* LottieAnimation: the `@Composable` that does the rendering aka replacement for LottieDrawable or LottieAnimationView.
* LottieAnimationSpec: a specification for where an animation should come from, whether it be from resources or the internet.
* LottieAnimationState: the current animation state (playing, progress, repeatCount, etc) and the ability to control the animation(start(), stop(), etc).

Its most basic usage is:
```
@Composable
fun MyComposable() {
  val animationSpec = remember { LottieAnimationSpec.Url("https://...") }
  LottieAnimation(animationSpec)
}
```

Or slightly more advanced:
```
@Composable
fun MyComposable(loaded: Boolean) {
  val animationSpec = remember { LottieAnimationSpec.Url(animationData.file) }
  val animationState = rememberLottieAnimationState()
  onCommit(loaded) {
    if (loaded) animationState.play()
  }
  LottieAnimation(animationSpec, animationState)
}
```
diff --git a/build.gradle b/build.gradle
index 84bc63d..cb6383f 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,7 +1,11 @@
 import org.ajoberstar.grgit.Grgit
 
 buildscript {
-  ext.kotlinVersion = '1.4.0'
+  ext {
+    composeVersion = '1.0.0-alpha05'
+    kotlinVersion = '1.4.10'
+    daggerVersion = '2.29.1'
+  }
 
   repositories {
     jcenter()
@@ -12,7 +16,7 @@
   }
   dependencies {
     classpath 'org.ajoberstar:grgit:1.9.3'
-    classpath 'com.android.tools.build:gradle:4.1.0-rc03'
+    classpath 'com.android.tools.build:gradle:4.2.0-alpha14'
     classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion"
     classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlinVersion"
     classpath 'org.ajoberstar:grgit:1.9.3'
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 4999dc7..883054f 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-6.6.1-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip
diff --git a/lottie-compose/.gitignore b/lottie-compose/.gitignore
new file mode 100644
index 0000000..42afabf
--- /dev/null
+++ b/lottie-compose/.gitignore
@@ -0,0 +1 @@
+/build
\ No newline at end of file
diff --git a/lottie-compose/build.gradle b/lottie-compose/build.gradle
new file mode 100644
index 0000000..5bf3d6e
--- /dev/null
+++ b/lottie-compose/build.gradle
@@ -0,0 +1,45 @@
+plugins {
+  id 'com.android.library'
+  id 'kotlin-android'
+}
+
+android {
+  compileSdkVersion 30
+  buildToolsVersion "30.0.2"
+
+  defaultConfig {
+    minSdkVersion 21
+    targetSdkVersion 30
+
+    testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
+  }
+
+  buildTypes {
+    release {
+      minifyEnabled false
+    }
+  }
+  compileOptions {
+    sourceCompatibility JavaVersion.VERSION_1_8
+    targetCompatibility JavaVersion.VERSION_1_8
+  }
+  kotlinOptions {
+    jvmTarget = '1.8'
+    freeCompilerArgs += ["-Xallow-jvm-ir-dependencies", "-Xskip-prerelease-check"]
+  }
+  buildFeatures {
+    compose true
+  }
+  composeOptions {
+    kotlinCompilerExtensionVersion composeVersion
+    kotlinCompilerVersion kotlinVersion
+  }
+}
+
+dependencies {
+  api project(':lottie')
+  implementation "androidx.compose.ui:ui:$composeVersion"
+  implementation "androidx.compose.material:material:$composeVersion"
+  implementation "androidx.compose.material:material-icons-extended:$composeVersion"
+  implementation 'androidx.lifecycle:lifecycle-common-java8:2.3.0-beta01'
+}
\ No newline at end of file
diff --git a/lottie-compose/gradle-maven-push.gradle b/lottie-compose/gradle-maven-push.gradle
new file mode 100644
index 0000000..436040a
--- /dev/null
+++ b/lottie-compose/gradle-maven-push.gradle
@@ -0,0 +1,126 @@
+/*
+ * Copyright 2013 Chris Banes
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+apply plugin: 'maven'
+apply plugin: 'signing'
+
+def isReleaseBuild() {
+    return VERSION_NAME.contains("SNAPSHOT") == false
+}
+
+def getReleaseRepositoryUrl() {
+    return hasProperty('RELEASE_REPOSITORY_URL') ? RELEASE_REPOSITORY_URL
+            : "https://oss.sonatype.org/service/local/staging/deploy/maven2/"
+}
+
+def getSnapshotRepositoryUrl() {
+    return hasProperty('SNAPSHOT_REPOSITORY_URL') ? SNAPSHOT_REPOSITORY_URL
+            : "https://oss.sonatype.org/content/repositories/snapshots/"
+}
+
+def getRepositoryUsername() {
+    return hasProperty('SONATYPE_USERNAME') ? SONATYPE_USERNAME : ""
+}
+
+def getRepositoryPassword() {
+    return hasProperty('SONATYPE_PASSWORD') ? SONATYPE_PASSWORD : ""
+}
+
+afterEvaluate { project ->
+    uploadArchives {
+        repositories {
+            mavenDeployer {
+                beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }
+
+                pom.withXml {
+                    asNode().dependencies.dependency.findAll {
+                        it.artifactId.text() == 'okhttp' || it.artifactId.text() == 'jackson-databind'
+                    }.each {
+                        if (it.optional)
+                            it.optional.value = 'true'
+                        else
+                            it.appendNode('optional', 'true')
+                    }
+                }
+
+                pom.groupId = GROUP
+                pom.artifactId = POM_ARTIFACT_ID
+                pom.version = VERSION_NAME
+
+                repository(url: getReleaseRepositoryUrl()) {
+                    authentication(userName: getRepositoryUsername(), password: getRepositoryPassword())
+                }
+                snapshotRepository(url: getSnapshotRepositoryUrl()) {
+                    authentication(userName: getRepositoryUsername(), password: getRepositoryPassword())
+                }
+
+                pom.project {
+                    name POM_NAME
+                    packaging POM_PACKAGING
+                    description POM_DESCRIPTION
+                    url POM_URL
+
+                    scm {
+                        url POM_SCM_URL
+                        connection POM_SCM_CONNECTION
+                        developerConnection POM_SCM_DEV_CONNECTION
+                    }
+
+                    licenses {
+                        license {
+                            name POM_LICENSE_NAME
+                            url POM_LICENSE_URL
+                            distribution POM_LICENSE_DIST
+                        }
+                    }
+
+                    developers {
+                        developer {
+                            id POM_DEVELOPER_ID
+                            name POM_DEVELOPER_NAME
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    signing {
+        required { isReleaseBuild() && gradle.taskGraph.hasTask("uploadArchives") }
+        sign configurations.archives
+    }
+
+    task androidJavadocs(type: Javadoc) {
+        failOnError false
+        source = android.sourceSets.main.java.srcDirs
+        classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
+    }
+
+    task androidJavadocsJar(type: Jar, dependsOn: androidJavadocs) {
+        classifier = 'javadoc'
+        from androidJavadocs.destinationDir
+    }
+
+    task androidSourcesJar(type: Jar) {
+        classifier = 'sources'
+        from android.sourceSets.main.java.sourceFiles
+    }
+
+    artifacts {
+        archives androidSourcesJar
+        archives androidJavadocsJar
+    }
+}
diff --git a/lottie-compose/gradle.properties b/lottie-compose/gradle.properties
new file mode 100644
index 0000000..aae9301
--- /dev/null
+++ b/lottie-compose/gradle.properties
@@ -0,0 +1,5 @@
+POM_NAME=Lottie Compose
+POM_ARTIFACT_ID=lottie-compose
+POM_PACKAGING=aar
+GROUP=com.airbnb.android
+VERSION_NAME=1.0.0-dev01-SNAPSHOT
\ No newline at end of file
diff --git a/lottie-compose/src/main/AndroidManifest.xml b/lottie-compose/src/main/AndroidManifest.xml
new file mode 100644
index 0000000..aca4467
--- /dev/null
+++ b/lottie-compose/src/main/AndroidManifest.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest package="com.airbnb.lottie.compose" />
\ No newline at end of file
diff --git a/lottie-compose/src/main/java/com/airbnb/lottie/compose/LottieAnimation.kt b/lottie-compose/src/main/java/com/airbnb/lottie/compose/LottieAnimation.kt
new file mode 100644
index 0000000..9951d50
--- /dev/null
+++ b/lottie-compose/src/main/java/com/airbnb/lottie/compose/LottieAnimation.kt
@@ -0,0 +1,154 @@
+package com.airbnb.lottie.compose
+
+import androidx.compose.foundation.Canvas
+import androidx.compose.foundation.layout.aspectRatio
+import androidx.compose.runtime.*
+import androidx.compose.runtime.dispatch.withFrameNanos
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.geometry.Offset
+import androidx.compose.ui.graphics.drawscope.drawIntoCanvas
+import androidx.compose.ui.graphics.drawscope.withTransform
+import androidx.compose.ui.graphics.nativeCanvas
+import androidx.compose.ui.platform.ContextAmbient
+import androidx.compose.ui.platform.LifecycleOwnerAmbient
+import androidx.lifecycle.DefaultLifecycleObserver
+import androidx.lifecycle.LifecycleOwner
+import java.util.concurrent.TimeUnit
+import androidx.compose.runtime.getValue
+import androidx.compose.ui.util.lerp
+import com.airbnb.lottie.*
+import com.airbnb.lottie.utils.Logger
+import java.io.FileInputStream
+import java.util.zip.ZipInputStream
+import kotlin.math.floor
+
+
+/**
+ * TODO: add error handling
+ */
+@Composable
+fun rememberLottieComposition(spec: LottieAnimationSpec): LottieCompositionResult {
+    val context = ContextAmbient.current
+    var result: LottieCompositionResult by remember { mutableStateOf(LottieCompositionResult.Loading) }
+    onCommit(spec) {
+        var isDisposed = false
+        val task = when(spec) {
+            is LottieAnimationSpec.RawRes -> LottieCompositionFactory.fromRawRes(context, spec.resId)
+            is LottieAnimationSpec.Url -> LottieCompositionFactory.fromUrl(context, spec.url)
+            is LottieAnimationSpec.File -> {
+                val fis = FileInputStream(spec.fileName)
+                when {
+                    spec.fileName.endsWith("zip") -> LottieCompositionFactory.fromZipStream(ZipInputStream(fis), spec.fileName)
+                    else -> LottieCompositionFactory.fromJsonInputStream(fis, spec.fileName)
+                }
+            }
+            is LottieAnimationSpec.Asset -> LottieCompositionFactory.fromAsset(context, spec.assetName)
+        }
+        task.addListener { c ->
+            if (!isDisposed) result = LottieCompositionResult.Success(c)
+        }.addFailureListener { e ->
+            if (!isDisposed) {
+                Logger.error("Failed to parse composition.", e)
+                result = LottieCompositionResult.Fail(e)
+            }
+        }
+        onDispose {
+            isDisposed = true
+        }
+    }
+    return result
+}
+
+@Composable
+fun LottieAnimation(
+    spec: LottieAnimationSpec,
+    animationState: LottieAnimationState = rememberLottieAnimationState(autoPlay = true),
+    modifier: Modifier = Modifier,
+) {
+    val composition = rememberLottieComposition(spec)
+
+    LottieAnimation(composition(), animationState, modifier)
+}
+
+@Composable
+fun LottieAnimation(
+    composition: LottieComposition?,
+    state: LottieAnimationState,
+    modifier: Modifier = Modifier
+) {
+    val drawable = remember { LottieDrawable() }
+    val isStarted by isStarted()
+    val isPlaying = state.isPlaying && isStarted
+
+    onCommit(composition) {
+        drawable.composition = composition
+    }
+
+    // TODO: handle min/max frame setting
+
+    LaunchedTask(composition, isPlaying) {
+        if (!isPlaying || composition == null) return@LaunchedTask
+        var repeatCount = 0
+        if (isPlaying && state.progress == 1f) state.progress = 0f
+        var lastFrameTime = withFrameNanos { it }
+        while (true) {
+            withFrameNanos { frameTime ->
+                val dTime = (frameTime - lastFrameTime) / TimeUnit.MILLISECONDS.toNanos(1).toFloat()
+                lastFrameTime = frameTime
+                val dProgress = (dTime * state.speed) / composition.duration
+                val previousProgress = state.progress
+                state.progress = (state.progress + dProgress) % 1f
+                if (previousProgress > state.progress) {
+                    repeatCount++
+                    if (repeatCount != 0 && repeatCount > state.repeatCount) {
+                        state.progress = 1f
+                        state.isPlaying = false
+                    }
+                }
+                val frame = floor(lerp(drawable.minFrame, drawable.maxFrame, state.progress)).toInt()
+                state.updateFrame(frame)
+            }
+        }
+    }
+
+    if (composition == null || composition.duration == 0f) return
+    drawable.progress = state.progress
+
+    Canvas(
+        modifier = Modifier
+            .maintainAspectRatio(composition)
+            .then(modifier)
+    ) {
+        drawIntoCanvas { canvas ->
+            withTransform({
+                scale(size.width / composition.bounds.width().toFloat(), size.height / composition.bounds.height().toFloat(), Offset.Zero)
+            }) {
+                drawable.draw(canvas.nativeCanvas)
+            }
+        }
+    }
+}
+
+@Composable
+private fun isStarted(): State<Boolean> {
+    val state = remember { mutableStateOf(false) }
+    val lifecycleOwner = LifecycleOwnerAmbient.current
+    onCommit(lifecycleOwner) {
+        lifecycleOwner.lifecycle.addObserver(object : DefaultLifecycleObserver {
+            override fun onStart(owner: LifecycleOwner) {
+                state.value = true
+            }
+
+            override fun onStop(owner: LifecycleOwner) {
+                state.value = false
+            }
+        })
+    }
+    return state
+}
+
+@Composable
+private fun Modifier.maintainAspectRatio(composition: LottieComposition?): Modifier {
+    composition ?: return this
+    return this.then(aspectRatio(composition.bounds.width() / composition.bounds.height().toFloat()))
+}
diff --git a/lottie-compose/src/main/java/com/airbnb/lottie/compose/LottieAnimationSpec.kt b/lottie-compose/src/main/java/com/airbnb/lottie/compose/LottieAnimationSpec.kt
new file mode 100644
index 0000000..47393bb
--- /dev/null
+++ b/lottie-compose/src/main/java/com/airbnb/lottie/compose/LottieAnimationSpec.kt
@@ -0,0 +1,11 @@
+package com.airbnb.lottie.compose
+
+/**
+ * Specification for a Lottie animation. Each subclass represents a different source.
+ */
+sealed class LottieAnimationSpec {
+    data class RawRes(@androidx.annotation.RawRes val resId: Int) : LottieAnimationSpec()
+    data class Url(val url: String) : LottieAnimationSpec()
+    data class File(val fileName: String) : LottieAnimationSpec()
+    data class Asset(val assetName: String) : LottieAnimationSpec()
+}
\ No newline at end of file
diff --git a/lottie-compose/src/main/java/com/airbnb/lottie/compose/LottieAnimationState.kt b/lottie-compose/src/main/java/com/airbnb/lottie/compose/LottieAnimationState.kt
new file mode 100644
index 0000000..32964da
--- /dev/null
+++ b/lottie-compose/src/main/java/com/airbnb/lottie/compose/LottieAnimationState.kt
@@ -0,0 +1,45 @@
+package com.airbnb.lottie.compose
+
+import androidx.compose.runtime.Composable
+import androidx.compose.runtime.getValue
+import androidx.compose.runtime.mutableStateOf
+import androidx.compose.runtime.remember
+import androidx.compose.runtime.setValue
+
+@Composable
+fun rememberLottieAnimationState(
+    autoPlay: Boolean = true,
+    repeatCount: Int = 0,
+    initialProgress: Float = 0f,
+): LottieAnimationState {
+    return remember(repeatCount, autoPlay) {
+        LottieAnimationState(isPlaying = autoPlay, repeatCount, initialProgress)
+    }
+}
+
+/**
+ * @see rememberLottieAnimationState()
+ */
+class LottieAnimationState(
+    isPlaying: Boolean,
+    repeatCount: Int = 0,
+    initialProgress: Float = 0f,
+) {
+    var progress by mutableStateOf(initialProgress)
+
+    private var _frame = mutableStateOf(0)
+    val frame: Int by _frame
+
+    var isPlaying by mutableStateOf(isPlaying)
+    var repeatCount by mutableStateOf(repeatCount)
+
+    var speed by mutableStateOf(1f)
+
+    internal fun updateFrame(frame: Int) {
+        _frame.value = frame
+    }
+
+    fun toggleIsPlaying() {
+        isPlaying = !isPlaying
+    }
+}
\ No newline at end of file
diff --git a/lottie-compose/src/main/java/com/airbnb/lottie/compose/LottieCompositionResult.kt b/lottie-compose/src/main/java/com/airbnb/lottie/compose/LottieCompositionResult.kt
new file mode 100644
index 0000000..8a031d6
--- /dev/null
+++ b/lottie-compose/src/main/java/com/airbnb/lottie/compose/LottieCompositionResult.kt
@@ -0,0 +1,17 @@
+package com.airbnb.lottie.compose
+
+import com.airbnb.lottie.LottieComposition
+
+sealed class LottieCompositionResult {
+    open val composition: LottieComposition? = null
+
+    open operator fun invoke(): LottieComposition? = composition
+
+    object Loading : LottieCompositionResult()
+
+    data class Success(override val composition: LottieComposition) : LottieCompositionResult() {
+        override operator fun invoke(): LottieComposition = composition
+    }
+
+    data class Fail(val e: Throwable) : LottieCompositionResult()
+}
\ No newline at end of file
diff --git a/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java b/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java
index a457e1e..34faf26 100644
--- a/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java
+++ b/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java
@@ -16,13 +16,6 @@
 import android.view.View;
 import android.widget.ImageView;
 
-import androidx.annotation.FloatRange;
-import androidx.annotation.IntDef;
-import androidx.annotation.IntRange;
-import androidx.annotation.MainThread;
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-
 import com.airbnb.lottie.manager.FontAssetManager;
 import com.airbnb.lottie.manager.ImageAssetManager;
 import com.airbnb.lottie.model.KeyPath;
@@ -45,6 +38,13 @@
 import java.util.List;
 import java.util.Set;
 
+import androidx.annotation.FloatRange;
+import androidx.annotation.IntDef;
+import androidx.annotation.IntRange;
+import androidx.annotation.MainThread;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+
 /**
  * This can be used to show an lottie animation in any place that would normally take a drawable.
  *
diff --git a/lottie/src/main/java/com/airbnb/lottie/model/layer/BaseLayer.java b/lottie/src/main/java/com/airbnb/lottie/model/layer/BaseLayer.java
index 2a238d8..df33cf6 100644
--- a/lottie/src/main/java/com/airbnb/lottie/model/layer/BaseLayer.java
+++ b/lottie/src/main/java/com/airbnb/lottie/model/layer/BaseLayer.java
@@ -2,6 +2,7 @@
 
 import android.graphics.*;
 import android.os.Build;
+
 import androidx.annotation.CallSuper;
 import androidx.annotation.FloatRange;
 import androidx.annotation.Nullable;
diff --git a/sample-compose/.gitignore b/sample-compose/.gitignore
new file mode 100644
index 0000000..42afabf
--- /dev/null
+++ b/sample-compose/.gitignore
@@ -0,0 +1 @@
+/build
\ No newline at end of file
diff --git a/sample-compose/build.gradle b/sample-compose/build.gradle
new file mode 100644
index 0000000..8a9b5d4
--- /dev/null
+++ b/sample-compose/build.gradle
@@ -0,0 +1,90 @@
+plugins {
+  id 'com.android.application'
+  id 'kotlin-android'
+  id 'kotlin-android-extensions'
+  id 'kotlin-kapt'
+}
+
+android {
+  compileSdkVersion 30
+  buildToolsVersion "30.0.2"
+
+  defaultConfig {
+    applicationId "com.airbnb.lottie.sample.compose"
+    minSdkVersion 21
+    targetSdkVersion 30
+    versionCode 1
+    versionName "1.0"
+
+    testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
+  }
+
+  buildTypes {
+    release {
+      minifyEnabled false
+    }
+  }
+  compileOptions {
+    sourceCompatibility JavaVersion.VERSION_1_8
+    targetCompatibility JavaVersion.VERSION_1_8
+  }
+  kotlinOptions {
+    jvmTarget = '1.8'
+    freeCompilerArgs += [
+        "-Xallow-jvm-ir-dependencies",
+        "-Xskip-prerelease-check",
+        "-Xuse-experimental=kotlinx.coroutines.ExperimentalCoroutinesApi",
+        "-Xopt-in=androidx.compose.material.ExperimentalMaterialApi"
+    ]
+  }
+  buildFeatures {
+    compose true
+  }
+  composeOptions {
+    kotlinCompilerExtensionVersion composeVersion
+    kotlinCompilerVersion kotlinVersion
+  }
+}
+
+kapt {
+  correctErrorTypes = true
+}
+
+androidExtensions {
+  features = ["parcelize"]
+}
+
+dependencies {
+  implementation project(':lottie-compose')
+  implementation 'androidx.core:core-ktx:1.3.2'
+  implementation 'androidx.multidex:multidex:2.0.1'
+  implementation 'androidx.appcompat:appcompat:1.2.0'
+  implementation 'com.google.android.material:material:1.2.1'
+  implementation "androidx.compose.ui:ui:$composeVersion"
+  implementation "androidx.compose.material:material:$composeVersion"
+  implementation "androidx.compose.material:material-icons-extended:$composeVersion"
+  implementation "androidx.ui:ui-tooling:$composeVersion"
+  implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.3.0-beta01'
+  implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.0-beta01'
+
+  implementation "androidx.navigation:navigation-fragment-ktx:2.3.1"
+  implementation "androidx.navigation:navigation-ui-ktx:2.3.1"
+
+  implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.9'
+  implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.9'
+
+  implementation "com.google.dagger:dagger:$daggerVersion"
+  kapt "com.google.dagger:dagger-compiler:$daggerVersion"
+
+  compileOnly 'com.squareup.inject:assisted-inject-annotations-dagger2:0.6.0'
+  kapt 'com.squareup.inject:assisted-inject-processor-dagger2:0.6.0'
+
+  implementation 'com.squareup.retrofit2:retrofit:2.9.0'
+  implementation 'com.squareup.retrofit2:converter-moshi:2.9.0'
+  implementation "dev.chrisbanes.accompanist:accompanist-coil:0.3.1"
+  implementation 'com.airbnb.android:mvrx:2.0.0-beta1'
+
+  testImplementation 'junit:junit:4.13.1'
+  androidTestImplementation 'androidx.test.ext:junit:1.1.2'
+  androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/AndroidManifest.xml b/sample-compose/src/main/AndroidManifest.xml
new file mode 100644
index 0000000..03ae5c9
--- /dev/null
+++ b/sample-compose/src/main/AndroidManifest.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.airbnb.lottie.sample.compose">
+
+    <uses-permission android:name="android.permission.INTERNET" />
+
+    <application
+        android:allowBackup="true"
+        android:name=".LottieComposeApplication"
+        android:icon="@mipmap/ic_launcher"
+        android:label="@string/app_name"
+        android:roundIcon="@mipmap/ic_launcher_round"
+        android:supportsRtl="true"
+        android:theme="@style/Theme.LottieCompose">
+        <activity
+            android:name=".ComposeActivity"
+            android:label="@string/app_name"
+            android:theme="@style/Theme.LottieCompose.NoActionBar">
+            <intent-filter>
+                <action android:name="android.intent.action.MAIN" />
+
+                <category android:name="android.intent.category.LAUNCHER" />
+            </intent-filter>
+        </activity>
+    </application>
+
+</manifest>
\ No newline at end of file
diff --git a/sample-compose/src/main/assets/AndroidWave.json b/sample-compose/src/main/assets/AndroidWave.json
new file mode 100644
index 0000000..321a95e
--- /dev/null
+++ b/sample-compose/src/main/assets/AndroidWave.json
@@ -0,0 +1 @@
+{"v":"4.10.1","fr":60,"ip":0,"op":123,"w":400,"h":400,"nm":"AndroidWave","ddd":0,"assets":[{"id":"comp_0","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"LeftArm","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0],"y":[1]},"o":{"x":[0.167],"y":[0]},"n":["0_1_0p167_0"],"t":0,"s":[0],"e":[0]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":5,"s":[0],"e":[-176.582]},{"i":{"x":[0.45],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p45_1_0p333_0"],"t":19,"s":[-176.582],"e":[-134.443]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.55],"y":[0]},"n":["0p667_1_0p55_0"],"t":26,"s":[-134.443],"e":[-176.582]},{"i":{"x":[0.45],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p45_1_0p333_0"],"t":36,"s":[-176.582],"e":[-144.443]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.55],"y":[0]},"n":["0p667_1_0p55_0"],"t":46,"s":[-144.443],"e":[-176.582]},{"i":{"x":[0.45],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p45_1_0p333_0"],"t":56,"s":[-176.582],"e":[-144.443]},{"i":{"x":[0.45],"y":[1]},"o":{"x":[0.55],"y":[0]},"n":["0p45_1_0p55_0"],"t":66,"s":[-144.443],"e":[-158]},{"i":{"x":[0.45],"y":[1]},"o":{"x":[0.167],"y":[0]},"n":["0p45_1_0p167_0"],"t":77,"s":[-158],"e":[8]},{"i":{"x":[0.45],"y":[1]},"o":{"x":[0.167],"y":[0]},"n":["0p45_1_0p167_0"],"t":85,"s":[8],"e":[-2.9]},{"i":{"x":[0.833],"y":[1]},"o":{"x":[0.167],"y":[0]},"n":["0p833_1_0p167_0"],"t":97,"s":[-2.9],"e":[0]},{"t":107}],"ix":10},"p":{"a":1,"k":[{"i":{"x":0,"y":1},"o":{"x":0.333,"y":0},"n":"0_1_0p333_0","t":0,"s":[262.81,158.827,0],"e":[262.808,157.329,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0.433},"n":"0p667_1_0p333_0p433","t":5,"s":[262.808,157.329,0],"e":[263.017,165.823,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":11,"s":[263.017,165.823,0],"e":[262.81,158.827,0],"to":[0,0,0],"ti":[0,0,0]},{"t":19}],"ix":2},"a":{"a":0,"k":[371.949,334.279,0],"ix":1},"s":{"a":0,"k":[95.2,95.2,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[6.063,0],[0,-6.157],[0,0],[0,0],[0,0]],"o":[[-6.061,0],[0,0],[0,0],[0,0],[0,-6.157]],"v":[[66.199,-32.931],[55.223,-21.783],[55.223,-3.217],[77.176,-3.217],[77.176,-21.783]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.941176474094,0.360784322023,0.380392163992,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[305.75,367.21],"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":"Group 6","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[6.063,0],[0,-6.157],[0,0],[-6.061,0],[0,6.157],[0,0]],"o":[[-6.061,0],[0,0],[0,6.157],[6.063,0],[0,0],[0,-6.157]],"v":[[66.199,-32.931],[55.223,-21.783],[55.223,21.783],[66.199,32.931],[77.176,21.783],[77.176,-21.783]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.642999985639,0.776000019148,0.224000010771,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[305.75,367.21],"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":"Group 5","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600,"st":-7,"bm":0}]}],"layers":[{"ddd":0,"ind":1,"ty":3,"nm":"MasterController","sr":1,"ks":{"o":{"a":0,"k":0,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[200.538,209.347,0],"ix":2},"a":{"a":0,"k":[60,60,0],"ix":1},"s":{"a":0,"k":[95.2,95.2,100],"ix":6}},"ao":0,"ip":0,"op":123,"st":-7,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Head","parent":7,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[305.75,302.634,0],"ix":2},"a":{"a":0,"k":[305.75,302.634,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[2.985,0],[0,2.985],[-2.984,0],[0,-2.984]],"o":[[-2.984,0],[0,-2.984],[2.985,0],[0,2.985]],"v":[[21.278,11.496],[15.875,6.092],[21.278,0.688],[26.682,6.092]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[2.985,0],[0,2.985],[-2.985,0],[0,-2.984]],"o":[[-2.985,0],[0,-2.984],[2.985,0],[0,2.985]],"v":[[-20.603,11.496],[-26.007,6.092],[-20.603,0.688],[-15.2,6.092]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ind":2,"ty":"sh","ix":3,"ks":{"a":0,"k":{"i":[[14.344,6.673],[0,0],[0.7,0.482],[0.536,-0.779],[0,0],[7.228,0],[6.175,-2.433],[0,0],[0.7,-0.482],[-0.535,-0.778],[0,0],[1.28,-14.799],[0,0]],"o":[[0,0],[0.535,-0.778],[-0.701,-0.482],[0,0],[-6.175,-2.433],[-7.229,0],[0,0],[-0.535,-0.779],[-0.7,0.482],[0,0],[-14.344,6.673],[0,0],[-1.281,-14.799]],"v":[[23.151,-9.145],[32.174,-22.242],[31.876,-24.524],[29.638,-23.988],[20.266,-10.384],[0,-14.173],[-20.266,-10.384],[-29.639,-23.988],[-31.876,-24.524],[-32.174,-22.242],[-23.151,-9.145],[-48.835,25.006],[48.835,25.006]],"c":true},"ix":2},"nm":"Path 3","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.642999985639,0.776000019148,0.224000010771,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[305.75,302.518],"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":"Group 3","np":5,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":123,"st":-7,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Blink","parent":4,"sr":1,"ks":{"o":{"a":1,"k":[{"t":0,"s":[0],"h":1},{"t":28,"s":[100],"h":1},{"t":35,"s":[0],"h":1},{"t":68,"s":[100],"h":1},{"t":75,"s":[0],"h":1}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[305.973,303.999,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[105.042,105.042,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[59.258,5.43],"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":"fl","c":{"a":0,"k":[0.643137276173,0.776470601559,0.223529413342,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0.629,2.035],"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 2","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[65.58,12.271],"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":"fl","c":{"a":0,"k":[0.643137276173,0.776470601559,0.223529413342,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[1.29,12.865],"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":3,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":123,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"Eyes","parent":7,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[305.75,302.634,0],"ix":2},"a":{"a":0,"k":[305.75,302.634,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[2.985,0],[0,2.985],[-2.984,0],[0,-2.984]],"o":[[-2.984,0],[0,-2.984],[2.985,0],[0,2.985]],"v":[[21.278,11.496],[15.875,6.092],[21.278,0.688],[26.682,6.092]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[2.985,0],[0,2.985],[-2.985,0],[0,-2.984]],"o":[[-2.985,0],[0,-2.984],[2.985,0],[0,2.985]],"v":[[-20.603,11.496],[-26.007,6.092],[-20.603,0.688],[-15.2,6.092]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[305.75,302.518],"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":"Group 3","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":123,"st":-7,"bm":0},{"ddd":0,"ind":5,"ty":4,"nm":"BeloOutlines","parent":7,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[306.138,370.824,0],"ix":2},"a":{"a":0,"k":[186.059,695.577,0],"ix":1},"s":{"a":0,"k":[66.333,66.333,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-3.218,-1.811],[-1.897,-0.22],[-1.765,0.716],[-0.546,3.813],[0.646,1.82],[0.296,0.669],[0.482,1.046],[0,0],[4.648,9.02],[0.562,1.045],[0.782,0.916],[2.469,0],[1.591,-1.864],[0.563,-1.048],[0.543,-1.054],[4.158,-9.021],[0.465,-1.053],[0.245,-0.69],[-0.277,-1.932],[-3.57,-1.449],[-1.886,0.219],[-1.647,0.927],[-2.333,2.741]],"o":[[2.333,2.741],[1.647,0.927],[1.886,0.219],[3.57,-1.449],[0.277,-1.932],[-0.245,-0.69],[-0.465,-1.053],[0,0],[-4.158,-9.021],[-0.543,-1.055],[-0.564,-1.048],[-1.59,-1.863],[-2.47,0],[-0.781,0.916],[-0.561,1.044],[-4.647,9.021],[-0.482,1.046],[-0.296,0.669],[-0.646,1.82],[0.546,3.813],[1.765,0.716],[1.897,-0.22],[3.217,-1.811],[0,0]],"v":[[-9,105.655],[-0.604,113.123],[4.706,114.928],[10.246,114.197],[16.89,105.701],[16.267,100.15],[15.439,98.119],[14.009,94.975],[14.009,94.975],[0.801,67.913],[-0.844,64.757],[-2.766,61.774],[-9,58.853],[-15.235,61.775],[-17.157,64.758],[-18.801,67.913],[-32.009,94.975],[-33.439,98.119],[-34.267,100.15],[-34.89,105.701],[-28.246,114.197],[-22.706,114.928],[-17.396,113.123],[-9,105.655]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[3.137,-3.685],[1.132,4.965],[-0.226,1.471],[-0.685,0.999],[-2.676,0],[-1.557,-2.272],[-0.182,-1.19],[0.327,-1.434]],"o":[[-3.137,-3.686],[-0.327,-1.433],[0.183,-1.189],[1.557,-2.271],[2.676,0],[0.685,0.999],[0.226,1.472],[-1.132,4.964]],"v":[[-9,105.655],[-16.931,91.894],[-17.165,87.496],[-15.885,84.187],[-9.001,80.743],[-2.115,84.187],[-0.834,87.497],[-1.07,91.897]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":4,"ix":5},"lc":2,"lj":2,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[195.059,608.647],"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":"Group 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":123,"st":-7,"bm":0},{"ddd":0,"ind":6,"ty":4,"nm":"Shirt","parent":7,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[305.968,378.693,0],"ix":2},"a":{"a":0,"k":[305.968,378.693,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-48.835,-44.077],[-48.835,27.183],[48.835,27.183],[48.835,-44.077]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.941176474094,0.360784322023,0.380392163992,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[305.968,378.693],"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":"Group 5","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":123,"st":-7,"bm":0},{"ddd":0,"ind":7,"ty":4,"nm":"Body","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":0,"s":[59.43,51.347,0],"e":[59.43,53.447,0],"to":[0,0.35014006495476,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":10,"s":[59.43,53.447,0],"e":[59.43,51.347,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":20,"s":[59.43,51.347,0],"e":[59.43,53.447,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":30,"s":[59.43,53.447,0],"e":[59.43,51.347,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":40,"s":[59.43,51.347,0],"e":[59.43,53.447,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":50,"s":[59.43,53.447,0],"e":[59.43,51.347,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":60,"s":[59.43,51.347,0],"e":[59.43,53.447,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":70,"s":[59.43,53.447,0],"e":[59.43,51.347,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":80,"s":[59.43,51.347,0],"e":[59.43,53.447,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":92,"s":[59.43,53.447,0],"e":[59.43,51.347,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":102,"s":[59.43,51.347,0],"e":[59.43,53.447,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":112,"s":[59.43,53.447,0],"e":[59.43,51.347,0],"to":[0,0,0],"ti":[0,0.35014006495476,0]},{"t":122}],"ix":2},"a":{"a":0,"k":[305.968,378.693,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-4.727,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,4.728],[0,0]],"o":[[0,0],[0,4.728],[0,0],[0,0],[0,0],[0,0],[0,0],[4.729,0],[0,0],[0,0]],"v":[[-48.835,-44.077],[-48.835,35.517],[-40.275,44.077],[-30.496,44.077],[-8.542,44.077],[8.542,44.077],[30.496,44.077],[40.274,44.077],[48.835,35.517],[48.835,-44.077]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.642999985639,0.776000019148,0.224000010771,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[305.968,378.693],"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":"Group 4","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":123,"st":-7,"bm":0},{"ddd":0,"ind":8,"ty":4,"nm":"LeftFoot","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[79.457,64.948,0],"ix":2},"a":{"a":0,"k":[325.995,392.295,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[6.062,0],[0,-6.156],[0,0],[-6.062,0],[0,6.157],[0,0]],"o":[[-6.062,0],[0,0],[0,6.157],[6.062,0],[0,0],[0,-6.156]],"v":[[0,-32.931],[-10.977,-21.784],[-10.977,21.783],[0,32.931],[10.977,21.783],[10.977,-21.784]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.642999985639,0.776000019148,0.224000010771,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[325.995,425.225],"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":"Group 1","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":123,"st":-7,"bm":0},{"ddd":0,"ind":9,"ty":4,"nm":"RightFoot","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[40.543,64.948,0],"ix":2},"a":{"a":0,"k":[287.08,392.295,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[6.062,0],[0,-6.156],[0,0],[-6.062,0],[0,6.157],[0,0]],"o":[[-6.062,0],[0,0],[0,6.157],[6.062,0],[0,0],[0,-6.156]],"v":[[0,-32.931],[-10.977,-21.784],[-10.977,21.783],[0,32.931],[10.977,21.783],[10.977,-21.784]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.642999985639,0.776000019148,0.224000010771,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[287.08,425.225],"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":"Group 2","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":123,"st":-7,"bm":0},{"ddd":0,"ind":10,"ty":0,"nm":"LeftArmWave","parent":11,"refId":"comp_0","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[307.023,377.529,0],"ix":2},"a":{"a":0,"k":[200,200,0],"ix":1},"s":{"a":0,"k":[105.042,105.042,100],"ix":6}},"ao":0,"w":400,"h":400,"ip":0,"op":123,"st":0,"bm":0},{"ddd":0,"ind":11,"ty":4,"nm":"RightArm","parent":7,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[238.5,334.279,0],"ix":2},"a":{"a":0,"k":[239.551,334.279,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[6.062,0],[0,-6.157],[0,0],[0,0],[0,0]],"o":[[-6.062,0],[0,0],[0,0],[0,0],[0,-6.157]],"v":[[-66.199,-32.931],[-77.176,-21.783],[-77.176,-3.217],[-55.222,-3.217],[-55.222,-21.783]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.941176474094,0.360784322023,0.380392163992,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[305.75,367.21],"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":"Group 6","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[6.062,0],[0,-6.157],[0,0],[-6.062,0],[0,6.157],[0,0]],"o":[[-6.062,0],[0,0],[0,6.157],[6.062,0],[0,0],[0,-6.157]],"v":[[-66.199,-32.931],[-77.176,-21.783],[-77.176,21.783],[-66.199,32.931],[-55.222,21.783],[-55.222,-21.783]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.642999985639,0.776000019148,0.224000010771,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[305.75,367.21],"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":"Group 5","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":123,"st":-7,"bm":0}]}
\ No newline at end of file
diff --git a/sample-compose/src/main/assets/HamburgerArrow.json b/sample-compose/src/main/assets/HamburgerArrow.json
new file mode 100644
index 0000000..886cc57
--- /dev/null
+++ b/sample-compose/src/main/assets/HamburgerArrow.json
@@ -0,0 +1 @@
+{"assets":[],"layers":[{"ddd":0,"ind":0,"ty":3,"nm":"Rotator","ks":{"o":{"k":0},"r":{"k":[{"i":{"x":[0.56],"y":[1]},"o":{"x":[0.634],"y":[0]},"n":["0p56_1_0p634_0"],"t":19,"s":[0],"e":[190.7]},{"i":{"x":[0.562],"y":[1]},"o":{"x":[0.398],"y":[0]},"n":["0p562_1_0p398_0"],"t":33,"s":[190.7],"e":[176.1]},{"i":{"x":[0.684],"y":[1]},"o":{"x":[0.31],"y":[0]},"n":["0p684_1_0p31_0"],"t":40.5,"s":[176.1],"e":[181.8]},{"i":{"x":[0.684],"y":[1]},"o":{"x":[0.438],"y":[0]},"n":["0p684_1_0p438_0"],"t":55,"s":[181.8],"e":[180]},{"i":{"x":[0.733],"y":[0.733]},"o":{"x":[0.385],"y":[0.385]},"n":["0p733_0p733_0p385_0p385"],"t":71,"s":[180],"e":[180]},{"i":{"x":[0.092],"y":[1]},"o":{"x":[0.406],"y":[0]},"n":["0p092_1_0p406_0"],"t":111,"s":[180],"e":[167.9]},{"i":{"x":[0.341],"y":[1]},"o":{"x":[0.6],"y":[0]},"n":["0p341_1_0p6_0"],"t":116,"s":[167.9],"e":[363]},{"i":{"x":[0.462],"y":[1]},"o":{"x":[0.167],"y":[0]},"n":["0p462_1_0p167_0"],"t":134,"s":[363],"e":[360]},{"t":141}]},"p":{"k":[200.5,149.375,0]},"a":{"k":[60,60,0]},"s":{"k":[100,100,100]}},"ao":0,"ip":0,"op":180,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":1,"ty":4,"nm":"A1","parent":0,"ks":{"o":{"k":100},"r":{"k":[{"i":{"x":[0.56],"y":[1]},"o":{"x":[0.634],"y":[0]},"n":["0p56_1_0p634_0"],"t":19,"s":[0],"e":[-45]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":33,"s":[-45],"e":[-45]},{"i":{"x":[0.341],"y":[1]},"o":{"x":[0.6],"y":[0]},"n":["0p341_1_0p6_0"],"t":116,"s":[-45],"e":[0]},{"t":134}]},"p":{"k":[{"i":{"x":0.56,"y":1},"o":{"x":0.634,"y":0},"n":"0p56_1_0p634_0","t":19,"s":[94.5,82.875,0],"e":[96.2,57.055,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0,"y":0},"o":{"x":0.167,"y":0.167},"n":"0_0_0p167_0p167","t":33,"s":[96.2,57.055,0],"e":[96.2,57.055,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.341,"y":1},"o":{"x":0.6,"y":0},"n":"0p341_1_0p6_0","t":116,"s":[96.2,57.055,0],"e":[94.5,82.875,0],"to":[0,0,0],"ti":[0,0,0]},{"t":134}]},"a":{"k":[35,22.25,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-34,22.25],[35,22.25]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0.4,0.16,0.7,1]},"o":{"k":100},"w":{"k":10},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.56],"y":[1]},"o":{"x":[0.634],"y":[0]},"n":["0p56_1_0p634_0"],"t":19,"s":[0],"e":[26]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":33,"s":[26],"e":[26]},{"i":{"x":[0.341],"y":[1]},"o":{"x":[0.6],"y":[0]},"n":["0p341_1_0p6_0"],"t":116,"s":[26],"e":[0]},{"t":134}],"ix":1},"e":{"k":[{"i":{"x":[0.56],"y":[0.56]},"o":{"x":[0.634],"y":[0.634]},"n":["0p56_0p56_0p634_0p634"],"t":19,"s":[100],"e":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":33,"s":[100],"e":[100]},{"i":{"x":[0.341],"y":[0.341]},"o":{"x":[0.6],"y":[0.6]},"n":["0p341_0p341_0p6_0p6"],"t":116,"s":[100],"e":[100]},{"t":134}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":0,"op":180,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":2,"ty":4,"nm":"A2","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[60,60.625,0]},"a":{"k":[0.5,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-34,0],[35,0]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0.4,0.16,0.7,1]},"o":{"k":100},"w":{"k":10},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":0,"op":180,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":3,"ty":4,"nm":"A3","parent":0,"ks":{"o":{"k":100},"r":{"k":[{"i":{"x":[0.56],"y":[1]},"o":{"x":[0.634],"y":[0]},"n":["0p56_1_0p634_0"],"t":19,"s":[0],"e":[45]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":33,"s":[45],"e":[45]},{"i":{"x":[0.341],"y":[1]},"o":{"x":[0.6],"y":[0]},"n":["0p341_1_0p6_0"],"t":116,"s":[45],"e":[0]},{"t":134}]},"p":{"k":[{"i":{"x":0.56,"y":1},"o":{"x":0.634,"y":0},"n":"0p56_1_0p634_0","t":19,"s":[94.5,37.125,0],"e":[96.2,64.045,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0,"y":0},"o":{"x":0.167,"y":0.167},"n":"0_0_0p167_0p167","t":33,"s":[96.2,64.045,0],"e":[96.2,64.045,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.341,"y":1},"o":{"x":0.6,"y":0},"n":"0p341_1_0p6_0","t":116,"s":[96.2,64.045,0],"e":[94.5,37.125,0],"to":[0,0,0],"ti":[0,0,0]},{"t":134}]},"a":{"k":[35,-23.5,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-34,-23.5],[35,-23.5]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0.4,0.16,0.7,1]},"o":{"k":100},"w":{"k":10},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.56],"y":[1]},"o":{"x":[0.634],"y":[0]},"n":["0p56_1_0p634_0"],"t":19,"s":[0],"e":[26]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":33,"s":[26],"e":[26]},{"i":{"x":[0.341],"y":[1]},"o":{"x":[0.6],"y":[0]},"n":["0p341_1_0p6_0"],"t":116,"s":[26],"e":[0]},{"t":134}],"ix":1},"e":{"k":[{"i":{"x":[0.56],"y":[0.56]},"o":{"x":[0.634],"y":[0.634]},"n":["0p56_0p56_0p634_0p634"],"t":19,"s":[100],"e":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":33,"s":[100],"e":[100]},{"i":{"x":[0.341],"y":[0.341]},"o":{"x":[0.6],"y":[0.6]},"n":["0p341_0p341_0p6_0p6"],"t":116,"s":[100],"e":[100]},{"t":134}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":0,"op":180,"st":0,"bm":0,"sr":1}],"v":"4.4.26","ddd":0,"ip":0,"op":180,"fr":30,"w":400,"h":300}
\ No newline at end of file
diff --git a/sample-compose/src/main/assets/Lottie Logo 1.json b/sample-compose/src/main/assets/Lottie Logo 1.json
new file mode 100644
index 0000000..51dbe4f
--- /dev/null
+++ b/sample-compose/src/main/assets/Lottie Logo 1.json
@@ -0,0 +1 @@
+{"assets":[],"layers":[{"ddd":0,"ind":0,"ty":1,"nm":"MASTER","ks":{"o":{"k":0},"r":{"k":0},"p":{"k":[214.457,347.822,0]},"a":{"k":[60,60,0]},"s":{"k":[100,100,100]}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":12,"op":179,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":1,"ty":4,"nm":"S5-Y 4","parent":0,"ks":{"o":{"k":100},"r":{"k":-89.1},"p":{"k":[53.205,131.606,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[142.038,29.278],[131.282,21.807]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":76,"s":[87],"e":[50.633]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":79,"s":[50.633],"e":[0]},{"t":83}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":76,"s":[100],"e":[75.856]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":79,"s":[75.856],"e":[0]},{"t":83}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":76,"op":84,"st":40,"bm":0,"sr":1},{"ddd":0,"ind":2,"ty":4,"nm":"S4-Y 4","parent":0,"ks":{"o":{"k":100},"r":{"k":-89.1},"p":{"k":[53.205,131.606,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[142.183,-5.112],[130.029,5.016]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":76,"s":[87],"e":[43.833]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":79,"s":[43.833],"e":[0]},{"t":83}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":76,"s":[100],"e":[66.356]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":79,"s":[66.356],"e":[0]},{"t":83}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":76,"op":84,"st":40,"bm":0,"sr":1},{"ddd":0,"ind":3,"ty":4,"nm":"S3-Y 4","parent":0,"ks":{"o":{"k":100},"r":{"k":-89.1},"p":{"k":[53.205,131.606,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[147.699,13.025],[133.195,13.21]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":76,"s":[87],"e":[42.133]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":79,"s":[42.133],"e":[0]},{"t":83}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":76,"s":[100],"e":[66.356]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":79,"s":[66.356],"e":[0]},{"t":83}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":76,"op":84,"st":40,"bm":0,"sr":1},{"ddd":0,"ind":4,"ty":4,"nm":"S5-Y 3","parent":0,"ks":{"o":{"k":100},"r":{"k":97.9},"p":{"k":[58.205,-39.394,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[145.677,22.22],[134.922,14.749]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":75,"s":[87],"e":[50.633]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":78,"s":[50.633],"e":[0]},{"t":82}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":75,"s":[100],"e":[75.856]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":78,"s":[75.856],"e":[0]},{"t":82}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":75,"op":83,"st":39,"bm":0,"sr":1},{"ddd":0,"ind":5,"ty":4,"nm":"S4-Y 3","parent":0,"ks":{"o":{"k":100},"r":{"k":97.9},"p":{"k":[58.205,-39.394,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[144.429,-5.397],[132.275,4.731]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":75,"s":[87],"e":[43.833]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":78,"s":[43.833],"e":[0]},{"t":82}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":75,"s":[100],"e":[66.356]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":78,"s":[66.356],"e":[0]},{"t":82}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":75,"op":83,"st":39,"bm":0,"sr":1},{"ddd":0,"ind":6,"ty":4,"nm":"S3-Y 3","parent":0,"ks":{"o":{"k":100},"r":{"k":97.9},"p":{"k":[58.205,-39.394,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[149.624,8.244],[136.648,10.156]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":75,"s":[87],"e":[42.133]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":78,"s":[42.133],"e":[0]},{"t":82}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":75,"s":[100],"e":[66.356]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":78,"s":[66.356],"e":[0]},{"t":82}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":75,"op":83,"st":39,"bm":0,"sr":1},{"ddd":0,"ind":7,"ty":4,"nm":"S13","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[25.043,45.678,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[128,3.65],[78.25,3.5]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":85,"s":[87],"e":[21.233]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":90,"s":[21.233],"e":[0]},{"t":94}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":85,"s":[100],"e":[66.356]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":90,"s":[66.356],"e":[0]},{"t":94}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":1.5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":85,"op":95,"st":49,"bm":0,"sr":1},{"ddd":0,"ind":8,"ty":4,"nm":"S12","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[25.043,45.678,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[119.25,-20.05],[63.5,-20.5]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":84,"s":[87],"e":[21.233]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":87,"s":[21.233],"e":[0]},{"t":91}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":84,"s":[100],"e":[66.356]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":87,"s":[66.356],"e":[0]},{"t":91}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":1.5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":84,"op":94,"st":48,"bm":0,"sr":1},{"ddd":0,"ind":9,"ty":4,"nm":"S11","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[25.043,45.678,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[119.5,-45.05],[82.75,-44.75]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":80,"s":[87],"e":[21.233]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":83,"s":[21.233],"e":[0]},{"t":87}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":80,"s":[100],"e":[66.356]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":83,"s":[66.356],"e":[0]},{"t":87}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":1.5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":80,"op":90,"st":44,"bm":0,"sr":1},{"ddd":0,"ind":10,"ty":4,"nm":"S5-Y 2","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[25.043,45.678,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[169.5,18.073],[137.481,11.365]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":97,"s":[87],"e":[50.633]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":100,"s":[50.633],"e":[0]},{"t":107}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":97,"s":[100],"e":[75.856]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":100,"s":[75.856],"e":[0]},{"t":107}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":97,"op":107,"st":61,"bm":0,"sr":1},{"ddd":0,"ind":11,"ty":4,"nm":"S4-Y 2","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[25.043,45.678,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[156.45,-23.05],[132,2.75]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":97,"s":[87],"e":[43.833]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":100,"s":[43.833],"e":[0]},{"t":107}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":97,"s":[100],"e":[66.356]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":100,"s":[66.356],"e":[0]},{"t":107}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":97,"op":107,"st":61,"bm":0,"sr":1},{"ddd":0,"ind":12,"ty":4,"nm":"S3-Y 2","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[25.043,45.678,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[166.731,-7.927],[136.731,7.115]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":97,"s":[87],"e":[42.133]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":100,"s":[42.133],"e":[0]},{"t":107}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":97,"s":[100],"e":[66.356]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":100,"s":[66.356],"e":[0]},{"t":107}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":97,"op":107,"st":61,"bm":0,"sr":1},{"ddd":0,"ind":13,"ty":4,"nm":"S6-Y","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[25.043,45.678,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-87.5,20.95],[-48.75,54.75]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54,"s":[87],"e":[43.933]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":57,"s":[43.933],"e":[0]},{"t":64}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54,"s":[100],"e":[70.456]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":57,"s":[70.456],"e":[0]},{"t":64}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":54,"op":64,"st":18,"bm":0,"sr":1},{"ddd":0,"ind":14,"ty":4,"nm":"S5-Y","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[25.043,45.678,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-94.5,37.073],[-48.769,55.365]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54,"s":[87],"e":[50.633]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":57,"s":[50.633],"e":[0]},{"t":64}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54,"s":[100],"e":[75.856]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":57,"s":[75.856],"e":[0]},{"t":64}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":54,"op":64,"st":18,"bm":0,"sr":1},{"ddd":0,"ind":15,"ty":4,"nm":"S4-Y","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[25.043,45.678,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[7.45,21.95],[-32.75,55.75]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54,"s":[87],"e":[43.833]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":57,"s":[43.833],"e":[0]},{"t":64}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54,"s":[100],"e":[66.356]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":57,"s":[66.356],"e":[0]},{"t":64}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":54,"op":64,"st":18,"bm":0,"sr":1},{"ddd":0,"ind":16,"ty":4,"nm":"S3-Y","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[25.043,45.678,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[16.231,39.073],[-32.769,57.365]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54,"s":[87],"e":[42.133]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":57,"s":[42.133],"e":[0]},{"t":64}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54,"s":[100],"e":[66.356]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":57,"s":[66.356],"e":[0]},{"t":64}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":54,"op":64,"st":18,"bm":0,"sr":1},{"ddd":0,"ind":17,"ty":4,"nm":"S8","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[25.043,45.678,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[-0.148,14.256],[10.476,0],[0,0]],"o":[[0,0],[-8.551,-8.263],[-21.454,0],[0,0]],"v":[[-3,35.95],[-1.352,-6.756],[-32.046,-20.579],[-42.25,4.25]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":65,"s":[87],"e":[21.233]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":70,"s":[21.233],"e":[0]},{"t":75}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":65,"s":[100],"e":[66.356]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":70,"s":[66.356],"e":[0]},{"t":75}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":1.5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":65,"op":75,"st":29,"bm":0,"sr":1},{"ddd":0,"ind":18,"ty":4,"nm":"S7","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[25.043,45.678,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[27,1.45],[31.046,-1.421],[0,0]],"o":[[-27,-1.45],[-26.426,1.21],[0,0]],"v":[[34.5,-13.05],[-35.046,-35.579],[-62.25,-5.75]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":65,"s":[87],"e":[21.233]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":70,"s":[21.233],"e":[0]},{"t":75}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":65,"s":[100],"e":[66.356]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":70,"s":[66.356],"e":[0]},{"t":75}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":1.5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":65,"op":75,"st":29,"bm":0,"sr":1},{"ddd":0,"ind":19,"ty":4,"nm":"S2-Y","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[25.043,45.678,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[1.9,-10.768],[1,-19]],"o":[[0,0],[-3.167,17.951],[-1,19]],"v":[[-67.25,-105.5],[-72.333,-84.201],[-76.5,-37.75]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":29,"s":[87],"e":[25.333]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":33,"s":[25.333],"e":[0]},{"t":36}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":29,"s":[100],"e":[69.056]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":33,"s":[69.056],"e":[0]},{"t":36}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":1.5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":30,"op":37,"st":-7,"bm":0,"sr":1},{"ddd":0,"ind":20,"ty":4,"nm":"S1-Y","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[25.043,45.678,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[1.9,-10.768],[1,-19]],"o":[[0,0],[-3.167,17.951],[-1,19]],"v":[[-67.125,-112],[-75.458,-89.951],[-80.375,-39.25]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":29,"s":[87],"e":[37.533]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":33,"s":[37.533],"e":[0]},{"t":36}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":29,"s":[100],"e":[66.356]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":33,"s":[66.356],"e":[0]},{"t":36}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":1.5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"}],"ip":30,"op":37,"st":-7,"bm":0,"sr":1},{"ddd":0,"ind":21,"ty":4,"nm":"Dot1","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.823,"y":0},"n":"0p833_0p833_0p823_0","t":-3,"s":[295.771,108.994,0],"e":[35.771,108.994,0],"to":[0,0,0],"ti":[0,0,0]},{"t":16}]},"a":{"k":[196.791,266.504,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[9.4,9.4]},"p":{"k":[0.8,-0.5]},"nm":"Ellipse Path 1"},{"ty":"fl","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"nm":"Fill 1"},{"ty":"tr","p":{"k":[196,267],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"}],"ip":-5,"op":17,"st":-36,"bm":0,"sr":1},{"ddd":0,"ind":22,"ty":4,"nm":"L-B","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[39.043,45.678,0]},"a":{"k":[250,250,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[25.671,-4.167],[1.456,6.902],[-8.481,1.863],[-47.562,13.01],[-0.501,0.133],[-71.423,-2.315]],"o":[[0,0],[-8.224,1.335],[-1.456,-6.903],[23.817,-5.233],[0.16,-0.044],[0.501,-0.133],[0,0]],"v":[[-8.837,-58.229],[-35.834,33.662],[-51.688,23.148],[-41.174,7.293],[51.797,44.178],[53.188,43.741],[140.394,43.672]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[166.029,270.643],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 8"},{"ty":"tm","s":{"k":[{"i":{"x":[0.703],"y":[0.821]},"o":{"x":[0.167],"y":[0.167]},"n":["0p703_0p821_0p167_0p167"],"t":18,"s":[80],"e":[50]},{"i":{"x":[0.263],"y":[1]},"o":{"x":[0.037],"y":[0.168]},"n":["0p263_1_0p037_0p168"],"t":23,"s":[50],"e":[30]},{"t":55}],"ix":1},"e":{"k":[{"i":{"x":[0.337],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p337_1_0p167_0p167"],"t":18,"s":[81],"e":[73.4]},{"t":29}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":18,"op":179,"st":8,"bm":0,"sr":1},{"ddd":0,"ind":23,"ty":4,"nm":"L-Y","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[39.043,45.678,0]},"a":{"k":[250,250,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[25.671,-4.167],[1.456,6.902],[-8.481,1.863],[-47.562,13.01],[-0.501,0.133],[-71.423,-2.315]],"o":[[0,0],[-8.224,1.335],[-1.456,-6.903],[23.817,-5.233],[0.16,-0.044],[0.501,-0.133],[0,0]],"v":[[-8.837,-58.229],[-35.834,33.662],[-51.688,23.148],[-41.174,7.293],[51.797,44.178],[53.188,43.741],[140.394,43.672]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":8.4},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[166.029,270.643],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 8"},{"ty":"tm","s":{"k":[{"i":{"x":[0.703],"y":[0.857]},"o":{"x":[0.167],"y":[0.167]},"n":["0p703_0p857_0p167_0p167"],"t":16,"s":[80],"e":[50]},{"i":{"x":[0.938],"y":[1]},"o":{"x":[0.333],"y":[0.202]},"n":["0p938_1_0p333_0p202"],"t":20,"s":[50],"e":[0]},{"t":28}],"ix":1},"e":{"k":[{"i":{"x":[0.337],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p337_1_0p167_0p167"],"t":16,"s":[81],"e":[73.4]},{"t":27}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":16,"op":179,"st":8,"bm":0,"sr":1},{"ddd":0,"ind":24,"ty":1,"nm":"N","parent":0,"ks":{"o":{"k":0},"r":{"k":0},"p":{"k":[{"i":{"x":0.26,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p26_1_0p167_0p167","t":28,"s":[-33.667,8.182,0],"e":[-33.667,-72.818,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.74,"y":0},"n":"0p833_0p833_0p74_0","t":40,"s":[-33.667,-72.818,0],"e":[-33.667,102.057,0],"to":[0,0,0],"ti":[0,0,0]},{"t":54}]},"a":{"k":[60,60,0]},"s":{"k":[100,100,100]}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":28,"op":54,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":25,"ty":4,"nm":"Dot-Y","parent":24,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":28,"s":[39.875,60,0],"e":[79.375,60,0],"to":[6.58333349227905,0,0],"ti":[-6.58333349227905,0,0]},{"t":54}]},"a":{"k":[196.791,266.504,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[9.4,9.4]},"p":{"k":[0.8,-0.5]},"nm":"Ellipse Path 1"},{"ty":"fl","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"nm":"Fill 1"},{"ty":"tr","p":{"k":[196,267],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"}],"ip":28,"op":54,"st":4,"bm":0,"sr":1},{"ddd":0,"ind":26,"ty":4,"nm":"T1a-B","parent":36,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[250,250,0]},"a":{"k":[250,250,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[-0.5,9.501],[-0.048,5.655],[0.054,0.06],[0.946,1.486],[-9.967,8.05],[-40.546,0]],"o":[[0.031,-0.594],[0.076,-8.978],[-1.161,-1.3],[-5.939,-9.327],[24.677,-19.929],[0,0]],"v":[[-30.72,63.761],[-30.741,45.192],[-37.397,27.014],[-40.698,22.661],[-37.873,-7.117],[49.506,11.559]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":24.9,"ix":1},"e":{"k":[{"i":{"x":[0.673],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p673_1_0p167_0p167"],"t":70,"s":[24.9],"e":[89.1]},{"t":84}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[227.677,234.375],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 9"}],"ip":70,"op":179,"st":17,"bm":0,"sr":1},{"ddd":0,"ind":27,"ty":4,"nm":"T2a-B","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[39.043,45.678,0]},"a":{"k":[250,250,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[1.681,-29.992],[-1.681,29.992]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.06],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p06_1_0p167_0p167"],"t":75,"s":[50],"e":[0]},{"t":85}],"ix":1},"e":{"k":[{"i":{"x":[0.06],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p06_1_0p167_0p167"],"t":75,"s":[50],"e":[100]},{"t":85}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.194},"lc":3,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[277.698,247.258],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 7"}],"ip":75,"op":179,"st":15,"bm":0,"sr":1},{"ddd":0,"ind":28,"ty":4,"nm":"T1a-Y 2","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p667_1_0p167_0p167","t":56,"s":[39.043,48.678,0],"e":[39.043,45.678,0],"to":[0,0,0],"ti":[0,0,0]},{"t":64}]},"a":{"k":[250,250,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[-0.5,9.501],[-0.048,5.655],[0.054,0.06],[0.946,1.486],[-9.967,8.05],[-40.546,0]],"o":[[0.031,-0.594],[0.076,-8.978],[-1.161,-1.3],[-5.939,-9.327],[24.677,-19.929],[0,0]],"v":[[-30.72,63.761],[-30.741,45.192],[-37.397,27.014],[-40.698,22.661],[-37.873,-7.117],[49.506,11.559]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[1]},"o":{"x":[0.301],"y":[0]},"n":["0p833_1_0p301_0"],"t":54,"s":[0],"e":[24.9]},{"t":70}],"ix":1},"e":{"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.301],"y":[0]},"n":["0p667_1_0p301_0"],"t":54,"s":[0],"e":[100]},{"t":78}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":8.4},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[227.677,234.375],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 9"}],"ip":59,"op":179,"st":12,"bm":0,"sr":1},{"ddd":0,"ind":29,"ty":4,"nm":"O-B","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":31,"s":[-62.792,73.057,0],"e":[-53.792,7.557,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.638,"y":1},"o":{"x":0.167,"y":0.198},"n":"0p638_1_0p167_0p198","t":35.257,"s":[-53.792,7.557,0],"e":[-33.667,-72.818,0],"to":[0,0,0],"ti":[-19.1562919616699,1.73831975460052,0]},{"i":{"x":0.795,"y":1},"o":{"x":0.523,"y":0},"n":"0p795_1_0p523_0","t":44,"s":[-33.667,-72.818,0],"e":[-14.167,102.182,0],"to":[16.2075271606445,-1.47073686122894,0],"ti":[0,0,0]},{"i":{"x":0.348,"y":1},"o":{"x":0.18,"y":0},"n":"0p348_1_0p18_0","t":54,"s":[-14.167,102.182,0],"e":[-14.167,59.182,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.27,"y":1},"o":{"x":0.693,"y":0},"n":"0p27_1_0p693_0","t":63,"s":[-14.167,59.182,0],"e":[-14.167,62.182,0],"to":[0,0,0],"ti":[0,0,0]},{"t":73}]},"a":{"k":[196.791,266.504,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[{"i":{"x":[0.667,0.667],"y":[1,1]},"o":{"x":[0.333,0.333],"y":[0,0]},"n":["0p667_1_0p333_0","0p667_1_0p333_0"],"t":54,"s":[3,3],"e":[44.6,44.6]},{"t":61}]},"p":{"k":[0.8,-0.5]},"nm":"Ellipse Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[196,267],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54,"s":[0],"e":[30]},{"i":{"x":[0.432],"y":[1]},"o":{"x":[0.167],"y":[1.124]},"n":["0p432_1_0p167_1p124"],"t":63,"s":[30],"e":[39.9]},{"t":91}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":54,"s":[100],"e":[88]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":63,"s":[88],"e":[88]},{"t":91}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":54,"op":179,"st":4,"bm":0,"sr":1},{"ddd":0,"ind":30,"ty":4,"nm":"O-Y","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":31,"s":[-62.792,73.057,0],"e":[-53.792,7.557,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.638,"y":1},"o":{"x":0.167,"y":0.198},"n":"0p638_1_0p167_0p198","t":35.257,"s":[-53.792,7.557,0],"e":[-33.667,-72.818,0],"to":[0,0,0],"ti":[-19.1562919616699,1.73831975460052,0]},{"i":{"x":0.795,"y":1},"o":{"x":0.523,"y":0},"n":"0p795_1_0p523_0","t":44,"s":[-33.667,-72.818,0],"e":[-14.167,102.182,0],"to":[16.2075271606445,-1.47073686122894,0],"ti":[0,0,0]},{"i":{"x":0.348,"y":1},"o":{"x":0.18,"y":0},"n":"0p348_1_0p18_0","t":54,"s":[-14.167,102.182,0],"e":[-14.167,59.182,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.27,"y":1},"o":{"x":0.693,"y":0},"n":"0p27_1_0p693_0","t":63,"s":[-14.167,59.182,0],"e":[-14.167,62.182,0],"to":[0,0,0],"ti":[0,0,0]},{"t":73}]},"a":{"k":[196.791,266.504,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[{"i":{"x":[0.667,0.667],"y":[1,1]},"o":{"x":[0.333,0.333],"y":[0,0]},"n":["0p667_1_0p333_0","0p667_1_0p333_0"],"t":54,"s":[3,3],"e":[44.6,44.6]},{"t":61}]},"p":{"k":[0.8,-0.5]},"nm":"Ellipse Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":8.8},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[196,267],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"}],"ip":54,"op":179,"st":4,"bm":0,"sr":1},{"ddd":0,"ind":31,"ty":4,"nm":"T1b-B","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[39.043,45.678,0]},"a":{"k":[250,250,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[1.768,-25.966],[-1.768,25.966]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":[{"i":{"x":[0.21],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p21_1_0p167_0p167"],"t":81,"s":[11.7],"e":[100]},{"t":88}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":2,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[242.756,265.581],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 10"}],"ip":81,"op":179,"st":26,"bm":0,"sr":1},{"ddd":0,"ind":32,"ty":4,"nm":"T1b-Y","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[39.043,45.678,0]},"a":{"k":[250,250,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[1.768,-25.966],[-1.768,25.966]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":70,"s":[0],"e":[0]},{"t":75}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":70,"s":[11.7],"e":[100]},{"t":75}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":8.4},"lc":2,"lj":2,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[242.756,265.581],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 10"}],"ip":70,"op":161,"st":15,"bm":0,"sr":1},{"ddd":0,"ind":33,"ty":4,"nm":"T2b-B","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[39.043,45.678,0]},"a":{"k":[250,250,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[246.65,213.814],[340.956,213.628]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.12],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p12_1_0p167_0p167"],"t":82,"s":[29],"e":[0]},{"t":91}],"ix":1},"e":{"k":[{"i":{"x":[0.12],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p12_1_0p167_0p167"],"t":82,"s":[41.1],"e":[66.5]},{"t":91}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 5"}],"ip":82,"op":179,"st":-17,"bm":0,"sr":1},{"ddd":0,"ind":34,"ty":4,"nm":"T2a-Y","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[39.043,45.678,0]},"a":{"k":[250,250,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[1.681,-29.992],[-1.681,29.992]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.06],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p06_1_0p167_0p167"],"t":72,"s":[50],"e":[0]},{"t":82}],"ix":1},"e":{"k":[{"i":{"x":[0.06],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p06_1_0p167_0p167"],"t":72,"s":[50],"e":[100]},{"t":82}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":9.194},"lc":3,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[277.698,247.258],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 7"}],"ip":72,"op":89,"st":12,"bm":0,"sr":1},{"ddd":0,"ind":35,"ty":4,"nm":"T2b-Y","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[39.043,45.678,0]},"a":{"k":[250,250,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[246.65,213.814],[340.956,213.628]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.12],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p12_1_0p167_0p167"],"t":76,"s":[29],"e":[0]},{"t":85}],"ix":1},"e":{"k":[{"i":{"x":[0.12],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p12_1_0p167_0p167"],"t":76,"s":[41.1],"e":[66.5]},{"t":85}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 5"}],"ip":76,"op":92,"st":-23,"bm":0,"sr":1},{"ddd":0,"ind":36,"ty":4,"nm":"T1a-Y","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p667_1_0p167_0p167","t":56,"s":[39.043,48.678,0],"e":[39.043,45.678,0],"to":[0,0,0],"ti":[0,0,0]},{"t":64}]},"a":{"k":[250,250,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[-0.5,9.501],[-0.048,5.655],[0.054,0.06],[0.946,1.486],[-9.967,8.05],[-40.546,0]],"o":[[0.031,-0.594],[0.076,-8.978],[-1.161,-1.3],[-5.939,-9.327],[24.677,-19.929],[0,0]],"v":[[-30.72,63.761],[-30.741,45.192],[-37.397,27.014],[-40.698,22.661],[-37.873,-7.117],[49.506,11.559]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[1]},"o":{"x":[0.301],"y":[0]},"n":["0p833_1_0p301_0"],"t":54,"s":[0],"e":[24.9]},{"t":70}],"ix":1},"e":{"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.301],"y":[0]},"n":["0p667_1_0p301_0"],"t":54,"s":[0],"e":[100]},{"t":74}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":8.4},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[227.677,234.375],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 9"}],"ip":59,"op":156,"st":12,"bm":0,"sr":1},{"ddd":0,"ind":37,"ty":4,"nm":"E1-B","parent":38,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[344.672,214.842,0]},"a":{"k":[344.672,214.842,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-13.664,-0.145],[62.163,0.29]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":9.562},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[344.672,214.842],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 2"},{"ty":"tm","s":{"k":[{"i":{"x":[0.12],"y":[0.12]},"o":{"x":[0.167],"y":[0.167]},"n":["0p12_0p12_0p167_0p167"],"t":84,"s":[0],"e":[0]},{"t":93}],"ix":1},"e":{"k":[{"i":{"x":[0.12],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p12_1_0p167_0p167"],"t":84,"s":[0],"e":[37.5]},{"t":93}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":84,"op":179,"st":84,"bm":0,"sr":1},{"ddd":0,"ind":38,"ty":4,"nm":"E1-Y","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.12,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p12_1_0p167_0p167","t":79,"s":[113.715,9.146,0],"e":[137.715,9.146,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.12,"y":1},"o":{"x":0.167,"y":0},"n":"0p12_1_0p167_0","t":88,"s":[137.715,9.146,0],"e":[133.715,9.146,0],"to":[0,0,0],"ti":[0,0,0]},{"t":92}]},"a":{"k":[344.672,214.842,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-13.664,-0.145],[62.163,0.29]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":8.4},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[344.672,214.842],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 2"},{"ty":"tm","s":{"k":[{"i":{"x":[0.12],"y":[0.12]},"o":{"x":[0.167],"y":[0.167]},"n":["0p12_0p12_0p167_0p167"],"t":79,"s":[0],"e":[0]},{"t":88}],"ix":1},"e":{"k":[{"i":{"x":[0.12],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p12_1_0p167_0p167"],"t":79,"s":[0],"e":[37.5]},{"t":88}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":79,"op":94,"st":79,"bm":0,"sr":1},{"ddd":0,"ind":39,"ty":4,"nm":"E2-B","parent":40,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[332.05,237.932,0]},"a":{"k":[332.05,237.932,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-26.67,-0.283],[99.171,0.066]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.12],"y":[0.12]},"o":{"x":[0.167],"y":[0.167]},"n":["0p12_0p12_0p167_0p167"],"t":86,"s":[0],"e":[0]},{"t":95}],"ix":1},"e":{"k":[{"i":{"x":[0.12],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p12_1_0p167_0p167"],"t":86,"s":[0],"e":[43]},{"t":95}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":9.562},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[331.664,238.14],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 3"}],"ip":86,"op":179,"st":86,"bm":0,"sr":1},{"ddd":0,"ind":40,"ty":4,"nm":"E2-Y","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.12,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p12_1_0p167_0p167","t":83,"s":[109.092,33.61,0],"e":[121.092,33.61,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.12,"y":0.12},"o":{"x":0.167,"y":0.167},"n":"0p12_0p12_0p167_0p167","t":92,"s":[121.092,33.61,0],"e":[121.092,33.61,0],"to":[0,0,0],"ti":[0,0,0]},{"t":96}]},"a":{"k":[332.05,237.932,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-26.67,-0.283],[99.171,0.066]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.12],"y":[0.12]},"o":{"x":[0.167],"y":[0.167]},"n":["0p12_0p12_0p167_0p167"],"t":83,"s":[0],"e":[0]},{"t":92}],"ix":1},"e":{"k":[{"i":{"x":[0.12],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p12_1_0p167_0p167"],"t":83,"s":[0],"e":[43]},{"t":92}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":8.4},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[331.664,238.14],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 3"}],"ip":83,"op":96,"st":83,"bm":0,"sr":1},{"ddd":0,"ind":41,"ty":4,"nm":"I-B","parent":42,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[303.802,282.182,0]},"a":{"k":[303.802,282.182,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[0.859,-21.143],[-4.359,70.392]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.12],"y":[0.12]},"o":{"x":[0.167],"y":[0.167]},"n":["0p12_0p12_0p167_0p167"],"t":81,"s":[0],"e":[0]},{"t":91}],"ix":1},"e":{"k":[{"i":{"x":[0.12],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p12_1_0p167_0p167"],"t":81,"s":[0],"e":[45.7]},{"t":91}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":9.194},"lc":3,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[304.135,282.409],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 6"}],"ip":81,"op":179,"st":18,"bm":0,"sr":1},{"ddd":0,"ind":42,"ty":4,"nm":"I-Y","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.12,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p12_1_0p167_0p167","t":78,"s":[93.594,62.861,0],"e":[92.626,82.829,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.12,"y":1},"o":{"x":0.167,"y":0},"n":"0p12_1_0p167_0","t":88,"s":[92.626,82.829,0],"e":[92.844,77.861,0],"to":[0,0,0],"ti":[0,0,0]},{"t":92}]},"a":{"k":[303.802,282.182,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[0.859,-21.143],[-4.359,70.392]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.12],"y":[0.12]},"o":{"x":[0.167],"y":[0.167]},"n":["0p12_0p12_0p167_0p167"],"t":78,"s":[0],"e":[0]},{"t":88}],"ix":1},"e":{"k":[{"i":{"x":[0.12],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p12_1_0p167_0p167"],"t":78,"s":[0],"e":[45.7]},{"t":88}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":8.4},"lc":3,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[304.135,282.409],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 6"}],"ip":78,"op":93,"st":15,"bm":0,"sr":1},{"ddd":0,"ind":43,"ty":4,"nm":"E3-B","parent":44,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[345.189,261.801,0]},"a":{"k":[345.124,261.801,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-13.664,-0.145],[75.663,0.29]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":92,"s":[0],"e":[0]},{"t":97}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":92,"s":[0],"e":[31.6]},{"t":97}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 2"},{"ty":"st","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"w":{"k":9.562},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[344.674,261.877],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1"}],"ip":92,"op":179,"st":29,"bm":0,"sr":1},{"ddd":0,"ind":44,"ty":4,"nm":"E3-Y","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p667_1_0p167_0p167","t":84,"s":[119.167,57.479,0],"e":[137.167,57.479,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0},"n":"0p667_1_0p167_0","t":92,"s":[137.167,57.479,0],"e":[134.167,57.479,0],"to":[0,0,0],"ti":[0,0,0]},{"t":96}]},"a":{"k":[345.124,261.801,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-13.664,-0.145],[75.663,0.29]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":84,"s":[0],"e":[0]},{"t":92}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":84,"s":[0],"e":[31.6]},{"t":92}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 2"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.562},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[344.674,261.877],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1"}],"ip":84,"op":102,"st":21,"bm":0,"sr":1},{"ddd":0,"ind":45,"ty":4,"nm":"Dot-Y","parent":46,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0,"y":0.812},"o":{"x":0,"y":0},"n":"0_0p812_0_0","t":96,"s":[43.263,59.75,0],"e":[62.513,59.75,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.708,"y":1},"o":{"x":0.39,"y":0.707},"n":"0p708_1_0p39_0p707","t":108,"s":[62.513,59.75,0],"e":[63.763,59.75,0],"to":[0,0,0],"ti":[0,0,0]},{"t":115}]},"a":{"k":[196.791,266.504,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[9.2,9.2]},"p":{"k":[0.8,-0.5]},"nm":"Ellipse Path 1"},{"ty":"fl","fillEnabled":true,"c":{"k":[1,1,1,1]},"o":{"k":100},"nm":"Fill 1"},{"ty":"tr","p":{"k":[196,267],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"}],"ip":96,"op":182,"st":65,"bm":0,"sr":1},{"ddd":0,"ind":46,"ty":1,"nm":"Bncr","parent":0,"ks":{"o":{"k":0},"r":{"k":0},"p":{"k":[{"i":{"x":0.18,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p18_1_0p167_0p167","t":96,"s":[164.782,57.473,0],"e":[164.782,55.473,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.82,"y":0},"n":"0p833_0p833_0p82_0","t":99,"s":[164.782,55.473,0],"e":[164.782,57.473,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.18,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p18_1_0p167_0p167","t":102,"s":[164.782,57.473,0],"e":[164.782,56.909,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.82,"y":0},"n":"0p833_0p833_0p82_0","t":105,"s":[164.782,56.909,0],"e":[164.782,57.473,0],"to":[0,0,0],"ti":[0,0,0]},{"t":108}]},"a":{"k":[60,60,0]},"s":{"k":[100,100,100]}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":96,"op":182,"st":15,"bm":0,"sr":1},{"ddd":0,"ind":47,"ty":4,"nm":"BG","ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[187.5,333.5,0]},"a":{"k":[0,0,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"k":[375,667]},"p":{"k":[0,0]},"r":{"k":0},"nm":"Rectangle Path 1"},{"ty":"fl","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"nm":"Fill 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1"}],"ip":0,"op":179,"st":0,"bm":0,"sr":1}],"v":"4.4.26","ddd":0,"ip":0,"op":179,"fr":30,"w":375,"h":667}
\ No newline at end of file
diff --git a/sample-compose/src/main/assets/Lottie Logo 2.json b/sample-compose/src/main/assets/Lottie Logo 2.json
new file mode 100644
index 0000000..aba9b2a
--- /dev/null
+++ b/sample-compose/src/main/assets/Lottie Logo 2.json
@@ -0,0 +1 @@
+{"assets":[],"layers":[{"ddd":0,"ind":0,"ty":1,"nm":"N7","parent":2,"ks":{"o":{"k":0},"r":{"k":0},"p":{"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p667_1_0p167_0p167","t":215,"s":[164.77,73.598,0],"e":[164.77,72.723,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.333,"y":0},"n":"0p833_0p833_0p333_0","t":221,"s":[164.77,72.723,0],"e":[164.77,73.598,0],"to":[0,0,0],"ti":[0,0,0]},{"t":227}]},"a":{"k":[60,60,0]},"s":{"k":[100,100,100]}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":199,"op":378,"st":-29,"bm":0,"sr":1},{"ddd":0,"ind":1,"ty":4,"nm":"Circle-LB","parent":0,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":187,"s":[33.313,49.949,0],"e":[45.658,49.949,0],"to":[0,0,0],"ti":[-8.45003604888916,0.04923928901553,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.728,"y":0.379},"n":"0p833_0p833_0p728_0p379","t":202,"s":[45.658,49.949,0],"e":[56.795,60,0],"to":[8.45003604888916,-0.04923928901553,0],"ti":[0,0,0]},{"i":{"x":0.682,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p682_1_0p167_0p167","t":215,"s":[56.795,60,0],"e":[62.041,60.051,0],"to":[0,0,0],"ti":[0,0,0]},{"t":240}]},"a":{"k":[40,-210,0]},"s":{"k":[17.27,17.27,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[56.234,56.234]},"p":{"k":[0,0]},"nm":"Ellipse Path 1"},{"ty":"fl","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"nm":"Fill 1"},{"ty":"tr","p":{"k":[40,-210],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"}],"ip":199,"op":378,"st":199,"bm":0,"sr":1},{"ddd":0,"ind":2,"ty":1,"nm":"N6","ks":{"o":{"k":0},"r":{"k":0},"p":{"k":[160.358,243.128,0]},"a":{"k":[60,60,0]},"s":{"k":[74.933,74.963,100]}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":199,"op":378,"st":199,"bm":0,"sr":1},{"ddd":0,"ind":3,"ty":4,"nm":"L-DB","parent":2,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[38.919,61.496,0]},"a":{"k":[250,250,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[25.671,-4.167],[1.456,6.902],[-8.481,1.863],[-47.562,13.01],[-0.501,0.133],[-71.423,-2.315]],"o":[[0,0],[-8.224,1.335],[-1.456,-6.903],[23.817,-5.233],[0.16,-0.044],[0.501,-0.133],[0,0]],"v":[[-8.837,-58.229],[-35.834,33.662],[-51.688,23.148],[-41.174,7.293],[51.797,44.178],[53.188,43.741],[140.394,43.672]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[166.029,270.643],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 8"},{"ty":"tm","s":{"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p667_1_0p167_0p167"],"t":177,"s":[26],"e":[28.7]},{"t":240}],"ix":1},"e":{"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p667_1_0p167_0p167"],"t":177,"s":[65],"e":[73.4]},{"t":240}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":199,"op":378,"st":193,"bm":0,"sr":1},{"ddd":0,"ind":4,"ty":4,"nm":"L-LB","parent":2,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[38.919,61.496,0]},"a":{"k":[250,250,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[25.671,-4.167],[1.456,6.902],[-8.481,1.863],[-47.562,13.01],[-0.501,0.133],[-71.423,-2.315]],"o":[[0,0],[-8.224,1.335],[-1.456,-6.903],[23.817,-5.233],[0.16,-0.044],[0.501,-0.133],[0,0]],"v":[[-8.837,-58.229],[-35.834,33.662],[-51.688,23.148],[-41.174,7.293],[51.797,44.178],[53.188,43.741],[140.394,43.672]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[166.029,270.643],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 8"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":28.8,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":199,"op":378,"st":193,"bm":0,"sr":1},{"ddd":0,"ind":5,"ty":4,"nm":"T-LB","parent":2,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[38.919,61.496,0]},"a":{"k":[250,250,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[-0.5,9.501],[-0.048,5.655],[0.054,0.06],[0.946,1.486],[-9.967,8.05],[-40.546,0]],"o":[[0.031,-0.594],[0.076,-8.978],[-1.161,-1.3],[-5.939,-9.327],[24.677,-19.929],[0,0]],"v":[[-30.72,63.761],[-30.741,45.192],[-37.397,27.014],[-40.698,22.661],[-37.873,-7.117],[49.506,11.559]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":15.2,"ix":1},"e":{"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p667_1_0p167_0p167"],"t":177,"s":[82.2],"e":[90.4]},{"t":237}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[227.677,234.375],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 9"}],"ip":199,"op":378,"st":156,"bm":0,"sr":1},{"ddd":0,"ind":6,"ty":4,"nm":"O-DB","parent":2,"ks":{"o":{"k":100},"r":{"k":-36},"p":{"k":[-14.604,78.098,0]},"a":{"k":[196.791,266.504,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[44.6,44.6]},"p":{"k":[0.8,-0.5]},"nm":"Ellipse Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[196,267],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p667_1_0p167_0p167"],"t":177,"s":[23.5],"e":[40.5]},{"t":237}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":199,"op":378,"st":169,"bm":0,"sr":1},{"ddd":0,"ind":7,"ty":4,"nm":"O-LB","parent":2,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[-14.604,78.098,0]},"a":{"k":[196.791,266.504,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[44.6,44.6]},"p":{"k":[0.8,-0.5]},"nm":"Ellipse Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.194},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[196,267],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"}],"ip":199,"op":378,"st":169,"bm":0,"sr":1},{"ddd":0,"ind":8,"ty":4,"nm":"T-LB","parent":2,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[38.919,61.496,0]},"a":{"k":[250,250,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[1.768,-25.966],[-1.768,25.966]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":100,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":2,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[242.756,265.581],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 10"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p667_1_0p167_0p167"],"t":177,"s":[79],"e":[100]},{"t":236}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":199,"op":378,"st":144,"bm":0,"sr":1},{"ddd":0,"ind":9,"ty":4,"nm":"T-DB","parent":2,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[38.919,61.496,0]},"a":{"k":[250,250,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[-0.5,9.501],[-0.048,5.655],[0.054,0.06],[0.946,1.486],[-9.967,8.05],[-40.546,0]],"o":[[0.031,-0.594],[0.076,-8.978],[-1.161,-1.3],[-5.939,-9.327],[24.677,-19.929],[0,0]],"v":[[-30.72,63.761],[-30.741,45.192],[-37.397,27.014],[-40.698,22.661],[-37.873,-7.117],[49.506,11.559]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":15.2,"ix":1},"e":{"k":100,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":8.6},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[227.677,234.375],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 9"}],"ip":199,"op":378,"st":156,"bm":0,"sr":1},{"ddd":0,"ind":10,"ty":4,"nm":"T-DB","parent":2,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[38.919,61.496,0]},"a":{"k":[250,250,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[1.681,-29.992],[-1.681,29.992]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":100,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.194},"lc":3,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[277.698,247.258],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 7"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":[{"i":{"x":[0.667],"y":[0.667]},"o":{"x":[0.167],"y":[0.167]},"n":["0p667_0p667_0p167_0p167"],"t":177,"s":[100],"e":[100]},{"t":236}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":199,"op":378,"st":139,"bm":0,"sr":1},{"ddd":0,"ind":11,"ty":4,"nm":"T-DB","parent":2,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[38.919,61.496,0]},"a":{"k":[250,250,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[246.65,213.814],[340.956,213.628]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p667_1_0p167_0p167"],"t":177,"s":[12.6],"e":[0]},{"t":236}],"ix":1},"e":{"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p667_1_0p167_0p167"],"t":177,"s":[61.8],"e":[66.5]},{"t":236}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 5"}],"ip":199,"op":378,"st":111,"bm":0,"sr":1},{"ddd":0,"ind":12,"ty":4,"nm":"E1-DB","parent":2,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[134.15,26.131,0]},"a":{"k":[344.672,214.842,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-13.664,-0.145],[62.163,0.29]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.562},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[344.672,214.842],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 2"},{"ty":"tm","s":{"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p667_1_0p167_0p167"],"t":177,"s":[22.1],"e":[16.8]},{"t":236}],"ix":1},"e":{"k":37.5,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":199,"op":378,"st":199,"bm":0,"sr":1},{"ddd":0,"ind":13,"ty":4,"nm":"E1-LB","parent":2,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[134.15,26.131,0]},"a":{"k":[344.672,214.842,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-13.664,-0.145],[62.163,0.29]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.562},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[344.672,214.842],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 2"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":37.5,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":199,"op":378,"st":199,"bm":0,"sr":1},{"ddd":0,"ind":14,"ty":4,"nm":"E2-DB","parent":2,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[121.453,49.357,0]},"a":{"k":[332.05,237.932,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-26.67,-0.283],[99.171,0.066]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p667_1_0p167_0p167"],"t":177,"s":[34.1],"e":[31.3]},{"t":226}],"ix":1},"e":{"k":43,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.562},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[331.664,238.14],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 3"}],"ip":199,"op":378,"st":199,"bm":0,"sr":1},{"ddd":0,"ind":15,"ty":4,"nm":"E2-LB","parent":2,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[121.453,49.357,0]},"a":{"k":[332.05,237.932,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-26.67,-0.283],[99.171,0.066]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p667_1_0p167_0p167"],"t":177,"s":[9.3],"e":[0]},{"t":245}],"ix":1},"e":{"k":43,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.562},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[331.664,238.14],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 3"}],"ip":199,"op":378,"st":199,"bm":0,"sr":1},{"ddd":0,"ind":16,"ty":4,"nm":"E3-DB","parent":2,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[134.604,73.367,0]},"a":{"k":[345.124,261.801,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-13.664,-0.145],[75.663,0.29]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p667_1_0p167_0p167"],"t":177,"s":[28.4],"e":[31.6]},{"t":231}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 2"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.562},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[344.674,261.877],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1"}],"ip":199,"op":378,"st":136,"bm":0,"sr":1},{"ddd":0,"ind":17,"ty":4,"nm":"E3-LB","parent":2,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[93.038,93.869,0]},"a":{"k":[303.802,282.182,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[0.859,-21.143],[-4.359,70.392]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p667_1_0p167_0p167"],"t":177,"s":[42.8],"e":[45.7]},{"t":238}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.194},"lc":3,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[304.135,282.409],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 6"}],"ip":199,"op":378,"st":136,"bm":0,"sr":1},{"ddd":0,"ind":18,"ty":1,"nm":"N5","parent":20,"ks":{"o":{"k":0},"r":{"k":0},"p":{"k":[{"i":{"x":0.37,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p37_1_0p167_0p167","t":156,"s":[127.278,60.65,0],"e":[127.278,56.021,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.63,"y":0},"n":"0p833_0p833_0p63_0","t":161,"s":[127.278,56.021,0],"e":[127.278,60.65,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":166,"s":[127.278,60.65,0],"e":[127.278,60.65,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.37,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p37_1_0p167_0p167","t":176,"s":[127.278,60.65,0],"e":[127.278,51.724,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.63,"y":0},"n":"0p833_0p833_0p63_0","t":182,"s":[127.278,51.724,0],"e":[127.278,60.65,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.37,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p37_1_0p167_0p167","t":187,"s":[127.278,60.65,0],"e":[127.278,58.335,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.63,"y":0},"n":"0p833_0p833_0p63_0","t":191,"s":[127.278,58.335,0],"e":[127.278,60.65,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":195,"s":[127.278,60.65,0],"e":[127.278,60.65,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.2,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p2_1_0p167_0p167","t":199,"s":[127.278,60.65,0],"e":[127.278,57.344,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.8,"y":0},"n":"0p833_0p833_0p8_0","t":206,"s":[127.278,57.344,0],"e":[127.278,60.65,0],"to":[0,0,0],"ti":[0,0,0]},{"t":215}]},"a":{"k":[60,60,0]},"s":{"k":[16.529,16.529,100]}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":141,"op":199,"st":-59,"bm":0,"sr":1},{"ddd":0,"ind":19,"ty":4,"nm":"Circle-LB","parent":18,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":141,"s":[-184.133,-369.832,0],"e":[-26.883,-150.332,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":151,"s":[-26.883,-150.332,0],"e":[-123.133,-66.832,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":156,"s":[-123.133,-66.832,0],"e":[-184.717,-59.498,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":160.4,"s":[-184.717,-59.498,0],"e":[-246.3,-10.165,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.83,"y":0.824},"o":{"x":0.42,"y":0.333},"n":"0p83_0p824_0p42_0p333","t":166,"s":[-246.3,-10.165,0],"e":[-141.292,161.335,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":176,"s":[-141.292,161.335,0],"e":[27.867,80.168,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":187,"s":[27.867,80.168,0],"e":[187.14,79.249,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":199,"s":[187.14,79.249,0],"e":[301.367,134.918,0],"to":[0,0,0],"ti":[-32.0105094909668,-29.9585418701172,0]},{"t":215}]},"a":{"k":[40,-210,0]},"s":{"k":[102.17,102.17,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"n":["0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167"],"t":175,"s":[56.234,56.234],"e":[56.234,42.034]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"n":["0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167"],"t":176,"s":[56.234,42.034],"e":[56.234,56.234]},{"t":177}]},"p":{"k":[0,0]},"nm":"Ellipse Path 1"},{"ty":"fl","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"nm":"Fill 1"},{"ty":"tr","p":{"k":[40,-210],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"}],"ip":141,"op":199,"st":141,"bm":0,"sr":1},{"ddd":0,"ind":20,"ty":1,"nm":"N4","ks":{"o":{"k":0},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.915},"o":{"x":0.167,"y":0.167},"n":"0p833_0p915_0p167_0p167","t":141,"s":[-106.909,364.08,0],"e":[-110.281,311.097,0],"to":[0,0,0],"ti":[4.12133312225342,12.7436285018921,0]},{"i":{"x":0.776,"y":1},"o":{"x":0.156,"y":0.089},"n":"0p776_1_0p156_0p089","t":168.292,"s":[-110.281,311.097,0],"e":[-160.861,299.103,0],"to":[-3.60302448272705,-11.1409587860107,0],"ti":[0,0,0]},{"t":199}]},"a":{"k":[46,60,0]},"s":{"k":[453.347,453.523,100]}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":141,"op":199,"st":141,"bm":0,"sr":1},{"ddd":0,"ind":21,"ty":4,"nm":"T-DB","parent":20,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[38.919,61.496,0]},"a":{"k":[250,250,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[1.681,-29.992],[-1.681,29.992]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":100,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.194},"lc":3,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[277.698,247.258],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 7"}],"ip":141,"op":199,"st":81,"bm":0,"sr":1},{"ddd":0,"ind":22,"ty":1,"nm":"N","ks":{"o":{"k":0},"r":{"k":0},"p":{"k":[94.114,385.384,0]},"a":{"k":[60,60,0]},"s":{"k":[100,100,100]}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":176,"op":188,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":23,"ty":4,"nm":"Trail 19-LB","parent":22,"ks":{"o":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[100],"e":[0]},{"t":185}]},"r":{"k":0},"p":{"k":[75.832,65.596,0]},"a":{"k":[180,552,0]},"s":{"k":[-100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[97.833,486.847],[175.667,560.8]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":176,"s":[82.6],"e":[55]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[55],"e":[20]},{"t":185}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":176,"s":[91.5],"e":[59.45]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[59.45],"e":[20]},{"t":185}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":176,"op":188,"st":164,"bm":0,"sr":1},{"ddd":0,"ind":24,"ty":4,"nm":"Trail 18-LB","parent":22,"ks":{"o":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[100],"e":[0]},{"t":185}]},"r":{"k":0},"p":{"k":[82.657,94.096,0]},"a":{"k":[172,580,0]},"s":{"k":[-100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[105.833,526.347],[173.667,562.9]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":176,"s":[76.6],"e":[51]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[51],"e":[20]},{"t":185}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":176,"s":[89.7],"e":[49.25]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[49.25],"e":[20]},{"t":185}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":176,"op":188,"st":164,"bm":0,"sr":1},{"ddd":0,"ind":25,"ty":4,"nm":"Trail 17-LB","parent":22,"ks":{"o":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[100],"e":[0]},{"t":185}]},"r":{"k":0},"p":{"k":[93.067,82.596,0]},"a":{"k":[160,568,0]},"s":{"k":[-100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[82.833,569.347],[173.967,563.9]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":176,"s":[78.6],"e":[52]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[52],"e":[20]},{"t":185}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":176,"s":[90],"e":[51.05]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[51.05],"e":[20]},{"t":185}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":176,"op":188,"st":164,"bm":0,"sr":1},{"ddd":0,"ind":26,"ty":4,"nm":"Trail 16-LB","parent":22,"ks":{"o":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[100],"e":[0]},{"t":185}]},"r":{"k":0},"p":{"k":[-31.284,1.723,0]},"a":{"k":[100.116,489.127,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[104.833,484.847],[175.667,560.8]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":176,"s":[81.5],"e":[57]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[57],"e":[20]},{"t":185}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":176,"s":[92.8],"e":[59.45]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[59.45],"e":[20]},{"t":185}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":176,"op":188,"st":164,"bm":0,"sr":1},{"ddd":0,"ind":27,"ty":4,"nm":"Trail 15-LB","parent":22,"ks":{"o":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[100],"e":[0]},{"t":185}]},"r":{"k":0},"p":{"k":[-33.371,38.138,0]},"a":{"k":[98.029,525.542,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[97.833,523.347],[173.667,562.9]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":176,"s":[75.9],"e":[47]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[47],"e":[20]},{"t":185}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":176,"s":[91.5],"e":[49.25]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[49.25],"e":[20]},{"t":185}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":176,"op":188,"st":164,"bm":0,"sr":1},{"ddd":0,"ind":28,"ty":4,"nm":"Trail 14-LB","parent":22,"ks":{"o":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[100],"e":[0]},{"t":185}]},"r":{"k":0},"p":{"k":[-47.916,84.721,0]},"a":{"k":[83.484,572.125,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[86.833,569.347],[173.967,563.9]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":176,"s":[81.4],"e":[49]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[49],"e":[20]},{"t":185}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":176,"s":[92.3],"e":[51.05]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":178,"s":[51.05],"e":[20]},{"t":185}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":176,"op":188,"st":164,"bm":0,"sr":1},{"ddd":0,"ind":29,"ty":4,"nm":"E-DB","parent":20,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[38.919,61.496,0]},"a":{"k":[250,250,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[246.65,213.814],[340.956,213.628]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.37],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p37_1_0p167_0p167"],"t":141,"s":[26.2],"e":[0]},{"t":211}],"ix":1},"e":{"k":[{"i":{"x":[0.37],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p37_1_0p167_0p167"],"t":141,"s":[47.5],"e":[66.5]},{"t":211}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 5"}],"ip":141,"op":199,"st":53,"bm":0,"sr":1},{"ddd":0,"ind":30,"ty":4,"nm":"E-LB","parent":31,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.29,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p29_1_0p167_0p167","t":141,"s":[370.312,214.842,0],"e":[344.021,214.842,0],"to":[0,0,0],"ti":[0,0,0]},{"t":262}]},"a":{"k":[344.672,214.842,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-13.664,-0.145],[62.163,0.29]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.562},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[344.672,214.842],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 2"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":37.5,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":141,"op":199,"st":141,"bm":0,"sr":1},{"ddd":0,"ind":31,"ty":4,"nm":"E-DB","parent":20,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.29,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p29_1_0p167_0p167","t":141,"s":[160.596,26.131,0],"e":[134.15,26.131,0],"to":[0,0,0],"ti":[0,0,0]},{"t":156}]},"a":{"k":[344.672,214.842,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-13.664,-0.145],[62.163,0.29]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.3},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[344.672,214.842],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 2"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":37.5,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":141,"op":199,"st":141,"bm":0,"sr":1},{"ddd":0,"ind":32,"ty":4,"nm":"E-LB","parent":33,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.29,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p29_1_0p167_0p167","t":141,"s":[392.848,237.932,0],"e":[332.05,237.932,0],"to":[0,0,0],"ti":[0,0,0]},{"t":230}]},"a":{"k":[332.05,237.932,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-26.67,-0.283],[99.171,0.066]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":43,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.562},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[331.664,238.14],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 3"}],"ip":141,"op":199,"st":141,"bm":0,"sr":1},{"ddd":0,"ind":33,"ty":4,"nm":"E-DB","parent":20,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.29,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p29_1_0p167_0p167","t":141,"s":[182.61,49.357,0],"e":[121.453,49.357,0],"to":[0,0,0],"ti":[0,0,0]},{"t":162}]},"a":{"k":[332.05,237.932,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-26.67,-0.283],[99.171,0.066]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":43,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.3},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[331.664,238.14],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 3"}],"ip":141,"op":199,"st":141,"bm":0,"sr":1},{"ddd":0,"ind":34,"ty":4,"nm":"E-DB","parent":20,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.29,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p29_1_0p167_0p167","t":141,"s":[174.274,73.367,0],"e":[134.604,73.367,0],"to":[0,0,0],"ti":[0,0,0]},{"t":199}]},"a":{"k":[345.124,261.801,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-13.664,-0.145],[75.663,0.29]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":100,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":31.6,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":3,"nm":"Trim Paths 2"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.562},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[344.674,261.877],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1"}],"ip":141,"op":199,"st":78,"bm":0,"sr":1},{"ddd":0,"ind":35,"ty":4,"nm":"E-LB","parent":20,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.29,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p29_1_0p167_0p167","t":141,"s":[174.274,73.367,0],"e":[134.604,73.367,0],"to":[0,0,0],"ti":[0,0,0]},{"t":167}]},"a":{"k":[345.124,261.801,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-13.664,-0.145],[75.663,0.29]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":100,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":31.6,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":3,"nm":"Trim Paths 2"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.6},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[344.674,261.877],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1"}],"ip":141,"op":199,"st":78,"bm":0,"sr":1},{"ddd":0,"ind":36,"ty":4,"nm":"I-LB","parent":37,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p667_1_0p167_0p167","t":177,"s":[303.217,291.74,0],"e":[303.802,282.182,0],"to":[0,0,0],"ti":[0,0,0]},{"t":183}]},"a":{"k":[303.802,282.182,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[0.859,-21.143],[-4.359,70.392]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":45.7,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.194},"lc":3,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[304.135,282.409],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 6"}],"ip":141,"op":199,"st":78,"bm":0,"sr":1},{"ddd":0,"ind":37,"ty":4,"nm":"I-DB","parent":20,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":172,"s":[90.724,128.91,0],"e":[92.23,106.485,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p667_1_0p167_0p167","t":176,"s":[92.23,106.485,0],"e":[93.038,90.563,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":183,"s":[93.038,90.563,0],"e":[93.038,93.869,0],"to":[0,0,0],"ti":[0,0,0]},{"t":188}]},"a":{"k":[303.802,282.182,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[0.859,-21.143],[-4.359,70.392]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":45.7,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9},"lc":3,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[304.135,282.409],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 6"}],"ip":141,"op":199,"st":78,"bm":0,"sr":1},{"ddd":0,"ind":38,"ty":4,"nm":"Trail 10-LB","parent":44,"ks":{"o":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[100],"e":[0]},{"t":142}]},"r":{"k":0},"p":{"k":[43.655,-11.938,0]},"a":{"k":[0,0,0]},"s":{"k":[12.311,12.306,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[1.833,433.847],[163.067,552]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":132,"s":[82.8],"e":[39.5]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[39.5],"e":[20]},{"t":142}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":132,"s":[93.6],"e":[53.85]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[53.85],"e":[20]},{"t":142}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":132,"op":141,"st":120,"bm":0,"sr":1},{"ddd":0,"ind":39,"ty":4,"nm":"Trail 9-LB","parent":44,"ks":{"o":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[100],"e":[0]},{"t":142}]},"r":{"k":0},"p":{"k":[43.655,-11.938,0]},"a":{"k":[0,0,0]},"s":{"k":[12.311,12.306,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-25.167,488.347],[158.567,558.5]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":132,"s":[79.4],"e":[35]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[35],"e":[20]},{"t":142}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":132,"s":[91],"e":[53.55]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[53.55],"e":[20]},{"t":142}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":132,"op":141,"st":120,"bm":0,"sr":1},{"ddd":0,"ind":40,"ty":4,"nm":"Trail 8-LB","parent":44,"ks":{"o":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[100],"e":[0]},{"t":142}]},"r":{"k":0},"p":{"k":[43.655,-11.938,0]},"a":{"k":[0,0,0]},"s":{"k":[12.311,12.306,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-30.167,598.347],[156.567,566]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":132,"s":[85.1],"e":[46.7]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[46.7],"e":[20]},{"t":142}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":132,"s":[92.6],"e":[63.15]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[63.15],"e":[20]},{"t":142}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":132,"op":141,"st":120,"bm":0,"sr":1},{"ddd":0,"ind":41,"ty":4,"nm":"Trail 6-LB","parent":44,"ks":{"o":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[100],"e":[0]},{"t":142}]},"r":{"k":0},"p":{"k":[43.655,-11.938,0]},"a":{"k":[0,0,0]},"s":{"k":[12.311,12.306,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[357.567,425.847],[217.067,554]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":132,"s":[82.1],"e":[34.5]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[34.5],"e":[20]},{"t":142}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":132,"s":[92.9],"e":[42.55]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[42.55],"e":[20]},{"t":142}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":132,"op":141,"st":120,"bm":0,"sr":1},{"ddd":0,"ind":42,"ty":4,"nm":"Trail 7-LB","parent":44,"ks":{"o":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[100],"e":[0]},{"t":142}]},"r":{"k":0},"p":{"k":[43.655,-11.938,0]},"a":{"k":[0,0,0]},"s":{"k":[12.311,12.306,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[373.567,514.347],[222.567,558.5]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":132,"s":[80.9],"e":[36.2]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[36.2],"e":[20]},{"t":142}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":132,"s":[93.8],"e":[45.75]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[45.75],"e":[20]},{"t":142}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":132,"op":141,"st":120,"bm":0,"sr":1},{"ddd":0,"ind":43,"ty":4,"nm":"Trail 5-LB","parent":44,"ks":{"o":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[100],"e":[0]},{"t":142}]},"r":{"k":0},"p":{"k":[43.655,-11.938,0]},"a":{"k":[0,0,0]},"s":{"k":[12.311,12.306,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[393.067,608.347],[217.567,565]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":2},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":132,"s":[75.9],"e":[32.9]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[32.9],"e":[20]},{"t":142}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":132,"s":[88.1],"e":[56.25]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":134,"s":[56.25],"e":[20]},{"t":142}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":132,"op":141,"st":120,"bm":0,"sr":1},{"ddd":0,"ind":44,"ty":1,"nm":"N8","ks":{"o":{"k":0},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":94,"s":[835.752,537.963,0],"e":[26.472,413.046,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.494,"y":1},"o":{"x":0.148,"y":1},"n":"0p494_1_0p148_1","t":134,"s":[26.472,413.046,0],"e":[14.483,413.046,0],"to":[0,0,0],"ti":[0,0,0]},{"t":140}]},"a":{"k":[60,60,0]},"s":{"k":[812.277,812.594,100]}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":94,"op":141,"st":-56,"bm":0,"sr":1},{"ddd":0,"ind":45,"ty":1,"nm":"Bounce","parent":44,"ks":{"o":{"k":0},"r":{"k":0},"p":{"k":[{"i":{"x":0,"y":1},"o":{"x":0.167,"y":0.167},"n":"0_1_0p167_0p167","t":94,"s":[66.959,52.918,0],"e":[66.959,47.996,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":1,"y":0},"n":"0p833_0p833_1_0","t":106,"s":[66.959,47.996,0],"e":[66.959,52.918,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":115,"s":[66.959,52.918,0],"e":[66.959,51.534,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":117,"s":[66.959,51.534,0],"e":[66.959,52.918,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":121,"s":[66.959,52.918,0],"e":[66.959,51.811,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":124,"s":[66.959,51.811,0],"e":[66.959,52.918,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":126,"s":[66.959,52.918,0],"e":[66.959,52.918,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":132,"s":[66.959,52.918,0],"e":[69.726,3.103,0],"to":[0,0,0],"ti":[0,0,0]},{"t":139}]},"a":{"k":[60,60,0]},"s":{"k":[9.225,9.225,100]}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":94,"op":141,"st":-56,"bm":0,"sr":1},{"ddd":0,"ind":46,"ty":4,"nm":"T-LB","parent":44,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[38.919,61.496,0]},"a":{"k":[250,250,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[-0.5,9.501],[-0.048,5.655],[0.054,0.06],[0.946,1.486],[-9.967,8.05],[-40.546,0]],"o":[[0.031,-0.594],[0.076,-8.978],[-1.161,-1.3],[-5.939,-9.327],[24.677,-19.929],[0,0]],"v":[[-30.72,63.761],[-30.741,45.192],[-37.397,27.014],[-40.698,22.661],[-37.873,-7.117],[49.506,11.559]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[227.677,234.375],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 9"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":94,"s":[31.1],"e":[44.3]},{"i":{"x":[0.836],"y":[0.949]},"o":{"x":[0.167],"y":[0.167]},"n":["0p836_0p949_0p167_0p167"],"t":102,"s":[44.3],"e":[90.6]},{"i":{"x":[0.821],"y":[1]},"o":{"x":[0.382],"y":[0.966]},"n":["0p821_1_0p382_0p966"],"t":133,"s":[90.6],"e":[93.3]},{"t":148}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":94,"op":141,"st":-99,"bm":0,"sr":1},{"ddd":0,"ind":47,"ty":4,"nm":"T-DB","parent":44,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[38.919,61.496,0]},"a":{"k":[250,250,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[-0.5,9.501],[-0.048,5.655],[0.054,0.06],[0.946,1.486],[-9.967,8.05],[-40.546,0]],"o":[[0.031,-0.594],[0.076,-8.978],[-1.161,-1.3],[-5.939,-9.327],[24.677,-19.929],[0,0]],"v":[[-30.72,63.761],[-30.741,45.192],[-37.397,27.014],[-40.698,22.661],[-37.873,-7.117],[49.506,11.559]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":8.9},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[227.677,234.375],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 9"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":[{"i":{"x":[0.836],"y":[0.949]},"o":{"x":[0.167],"y":[0.167]},"n":["0p836_0p949_0p167_0p167"],"t":94,"s":[44.3],"e":[90.6]},{"i":{"x":[0.821],"y":[1]},"o":{"x":[0.382],"y":[0.966]},"n":["0p821_1_0p382_0p966"],"t":125,"s":[90.6],"e":[93.3]},{"t":140}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":94,"op":141,"st":-99,"bm":0,"sr":1},{"ddd":0,"ind":48,"ty":4,"nm":"T-DB","parent":44,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[38.919,61.496,0]},"a":{"k":[250,250,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[1.768,-25.966],[-1.768,25.966]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":116,"s":[0],"e":[0]},{"t":142}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":116,"s":[0],"e":[100]},{"t":142}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":2,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[242.756,265.581],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 10"}],"ip":116,"op":141,"st":-111,"bm":0,"sr":1},{"ddd":0,"ind":49,"ty":4,"nm":"I-LB","parent":44,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":130,"s":[64.566,99.144,0],"e":[65.12,90.228,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.513,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p513_1_0p167_0p167","t":132,"s":[65.12,90.228,0],"e":[66.965,56.247,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.227,"y":1},"o":{"x":0.564,"y":0},"n":"0p227_1_0p564_0","t":144,"s":[66.965,56.247,0],"e":[66.657,62.143,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.332,"y":1},"o":{"x":0.53,"y":0},"n":"0p332_1_0p53_0","t":153,"s":[66.657,62.143,0],"e":[66.891,57.244,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":166,"s":[66.891,57.244,0],"e":[66.78,58.738,0],"to":[0,0,0],"ti":[0,0,0]},{"t":185}]},"a":{"k":[277.698,247.258,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[1.681,-29.992],[-1.681,29.992]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":100,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[277.698,247.258],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 7"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":130,"s":[40],"e":[0]},{"t":147}],"ix":1},"e":{"k":100,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":94,"op":141,"st":-116,"bm":0,"sr":1},{"ddd":0,"ind":50,"ty":4,"nm":"I-DB","parent":44,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":130,"s":[64.566,108.344,0],"e":[65.12,90.228,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.513,"y":1},"o":{"x":0.167,"y":0.167},"n":"0p513_1_0p167_0p167","t":132,"s":[65.12,90.228,0],"e":[66.965,56.247,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.227,"y":1},"o":{"x":0.564,"y":0},"n":"0p227_1_0p564_0","t":144,"s":[66.965,56.247,0],"e":[66.657,62.143,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.332,"y":1},"o":{"x":0.53,"y":0},"n":"0p332_1_0p53_0","t":153,"s":[66.657,62.143,0],"e":[66.891,57.244,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":166,"s":[66.891,57.244,0],"e":[66.78,58.738,0],"to":[0,0,0],"ti":[0,0,0]},{"t":185}]},"a":{"k":[277.698,247.258,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[1.681,-29.992],[-1.681,29.992]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":100,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[277.698,247.258],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 7"}],"ip":94,"op":141,"st":-116,"bm":0,"sr":1},{"ddd":0,"ind":51,"ty":4,"nm":"E-LB","parent":44,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[110.383,49.357,0]},"a":{"k":[332.05,237.932,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-26.67,-0.283],[99.171,0.066]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.37],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p37_1_0p167_0p167"],"t":127,"s":[12.2],"e":[0]},{"t":167}],"ix":1},"e":{"k":43,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.562},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[331.664,238.14],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 3"}],"ip":94,"op":141,"st":-56,"bm":0,"sr":1},{"ddd":0,"ind":52,"ty":4,"nm":"E-DB","parent":44,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[110.383,49.357,0]},"a":{"k":[332.05,237.932,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-26.67,-0.283],[99.171,0.066]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.37],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p37_1_0p167_0p167"],"t":113,"s":[12.2],"e":[0]},{"t":153}],"ix":1},"e":{"k":43,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9.4},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[331.664,238.14],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 3"}],"ip":94,"op":141,"st":-56,"bm":0,"sr":1},{"ddd":0,"ind":53,"ty":4,"nm":"O-LB","parent":44,"ks":{"o":{"k":100},"r":{"k":-170},"p":{"k":[-14.604,78.098,0]},"a":{"k":[196.791,266.504,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[44.6,44.6]},"p":{"k":[0.8,-0.5]},"nm":"Ellipse Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[196,267],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":94,"s":[36.6],"e":[39.8]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":96,"s":[39.8],"e":[64.9]},{"t":116}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":94,"op":141,"st":-86,"bm":0,"sr":1},{"ddd":0,"ind":54,"ty":4,"nm":"O-DB","parent":44,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[-14.604,78.098,0]},"a":{"k":[196.791,266.504,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[44.6,44.6]},"p":{"k":[0.8,-0.5]},"nm":"Ellipse Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[196,267],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"}],"ip":94,"op":141,"st":-86,"bm":0,"sr":1},{"ddd":0,"ind":55,"ty":4,"nm":"Circle-LB","parent":45,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":94,"s":[-1010,-37,0],"e":[-699.345,-205.308,0],"to":[0,0,0],"ti":[-211.260208129883,2.26553344726562,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":105.785,"s":[-699.345,-205.308,0],"e":[29.052,56.461,0],"to":[211.260208129883,-2.26553344726562,0],"ti":[-552.383728027344,-58.7071266174316,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":131,"s":[29.052,56.461,0],"e":[60,51.996,0],"to":[10.4709663391113,1.11285018920898,0],"ti":[-10.5157165527344,-1.12986266613007,0]},{"t":132}]},"a":{"k":[40,-210,0]},"s":{"k":[154.2,154.2,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"n":["0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167"],"t":131,"s":[56.234,56.234],"e":[56.234,45.634]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"n":["0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167"],"t":132,"s":[56.234,45.634],"e":[56.234,56.234]},{"t":133}]},"p":{"k":[0,0]},"nm":"Ellipse Path 1"},{"ty":"fl","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"nm":"Fill 1"},{"ty":"tr","p":{"k":[40,-210],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"}],"ip":94,"op":141,"st":94,"bm":0,"sr":1},{"ddd":0,"ind":56,"ty":1,"nm":"N3","parent":67,"ks":{"o":{"k":0},"r":{"k":0},"p":{"k":[511.88,-46.466,0]},"a":{"k":[60,60,0]},"s":{"k":[590,590,100]}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":51,"op":94,"st":-14,"bm":0,"sr":1},{"ddd":0,"ind":57,"ty":4,"nm":"L-LB","parent":56,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[38.919,61.496,0]},"a":{"k":[250,250,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[25.671,-4.167],[1.456,6.902],[-8.481,1.863],[-47.562,13.01],[-0.501,0.133],[-71.423,-2.315]],"o":[[0,0],[-8.224,1.335],[-1.456,-6.903],[23.817,-5.233],[0.16,-0.044],[0.501,-0.133],[0,0]],"v":[[-8.837,-58.229],[-35.834,33.662],[-51.688,23.148],[-41.174,7.293],[51.797,44.178],[53.188,43.741],[140.394,43.672]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":51,"s":[0],"e":[0]},{"t":106}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":51,"s":[81.7],"e":[100]},{"t":106}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[166.029,270.643],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 8"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":73.4,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":51,"op":94,"st":-20,"bm":0,"sr":1},{"ddd":0,"ind":58,"ty":4,"nm":"L-DB","parent":56,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[38.919,61.496,0]},"a":{"k":[250,250,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[25.671,-4.167],[1.456,6.902],[-8.481,1.863],[-47.562,13.01],[-0.501,0.133],[-71.423,-2.315]],"o":[[0,0],[-8.224,1.335],[-1.456,-6.903],[23.817,-5.233],[0.16,-0.044],[0.501,-0.133],[0,0]],"v":[[-8.837,-58.229],[-35.834,33.662],[-51.688,23.148],[-41.174,7.293],[51.797,44.178],[53.188,43.741],[140.394,43.672]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":39,"s":[0],"e":[0]},{"t":94}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":39,"s":[81.7],"e":[100]},{"t":94}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":8.4},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[166.029,270.643],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 8"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":73.4,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":51,"op":94,"st":-20,"bm":0,"sr":1},{"ddd":0,"ind":59,"ty":4,"nm":"Trail-LB","parent":67,"ks":{"o":{"k":100},"r":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.333],"y":[0]},"n":["0p833_0p833_0p333_0"],"t":71,"s":[84.9],"e":[-27.544]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":79,"s":[-27.544],"e":[-181.4]},{"t":86}]},"p":{"k":[71.715,60.311,0]},"a":{"k":[196.791,266.504,0]},"s":{"k":[-590,590,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[31,31]},"p":{"k":[0.8,-0.5]},"nm":"Ellipse Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.333],"y":[0]},"n":["0p833_0p833_0p333_0"],"t":71,"s":[34.9],"e":[25.3]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":79,"s":[25.3],"e":[44.833]},{"t":86}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.333],"y":[0]},"n":["0p833_0p833_0p333_0"],"t":71,"s":[34.9],"e":[38.733]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":79,"s":[38.733],"e":[44.833]},{"t":86}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":0.5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[196,267],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"}],"ip":71,"op":88,"st":-17,"bm":0,"sr":1},{"ddd":0,"ind":60,"ty":4,"nm":"Trail-LB","parent":67,"ks":{"o":{"k":100},"r":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.333],"y":[0]},"n":["0p833_0p833_0p333_0"],"t":71,"s":[84.9],"e":[-27.544]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":79,"s":[-27.544],"e":[-181.4]},{"t":86}]},"p":{"k":[71.715,60.311,0]},"a":{"k":[196.791,266.504,0]},"s":{"k":[-590,590,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[33.4,33.4]},"p":{"k":[0.8,-0.5]},"nm":"Ellipse Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.333],"y":[0]},"n":["0p833_0p833_0p333_0"],"t":71,"s":[34.9],"e":[19.9]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":79,"s":[19.9],"e":[44.833]},{"t":86}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.333],"y":[0]},"n":["0p833_0p833_0p333_0"],"t":71,"s":[34.9],"e":[38.733]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":79,"s":[38.733],"e":[44.833]},{"t":86}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":0.5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[196,267],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"}],"ip":71,"op":88,"st":-17,"bm":0,"sr":1},{"ddd":0,"ind":61,"ty":4,"nm":"Trail-LB","parent":67,"ks":{"o":{"k":100},"r":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":51,"s":[84.9],"e":[-27.544]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":56,"s":[-27.544],"e":[-117.5]},{"t":60}]},"p":{"k":[71.715,60.311,0]},"a":{"k":[196.791,266.504,0]},"s":{"k":[-590,590,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[33.9,33.9]},"p":{"k":[0.8,-0.5]},"nm":"Ellipse Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":51,"s":[19.9],"e":[28.263]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":56,"s":[28.263],"e":[35]},{"t":60}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":51,"s":[38.733],"e":[34.359]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":56,"s":[34.359],"e":[35]},{"t":60}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":0.5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[196,267],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"}],"ip":51,"op":61,"st":-40,"bm":0,"sr":1},{"ddd":0,"ind":62,"ty":4,"nm":"Trail-LB","parent":67,"ks":{"o":{"k":100},"r":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":51,"s":[59.2],"e":[-74.544]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":56,"s":[-74.544],"e":[-192.8]},{"t":60}]},"p":{"k":[71.715,60.311,0]},"a":{"k":[196.791,266.504,0]},"s":{"k":[-590,590,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[-8.706,0],[0,8.706],[8.706,0],[0,-8.706]],"o":[[8.706,0],[0,-8.706],[-8.706,0],[0,8.706]],"v":[[197.001,282.482],[212.764,266.719],[197.001,250.956],[181.237,266.719]],"c":true}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":0.5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":51,"s":[19.9],"e":[38.733]},{"t":60}],"ix":1},"e":{"k":38.733,"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":51,"op":61,"st":-40,"bm":0,"sr":1},{"ddd":0,"ind":63,"ty":4,"nm":"O2-LB","parent":56,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[-14.604,78.098,0]},"a":{"k":[196.791,266.504,0]},"s":{"k":[-100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[44.6,44.6]},"p":{"k":[0.8,-0.5]},"nm":"Ellipse Path 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":[{"i":{"x":[0.667],"y":[0.879]},"o":{"x":[0.167],"y":[0.167]},"n":["0p667_0p879_0p167_0p167"],"t":51,"s":[13.5],"e":[34.7]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.333],"y":[0.336]},"n":["0p833_0p833_0p333_0p336"],"t":63,"s":[34.7],"e":[100]},{"t":157}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[196,267],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"}],"ip":51,"op":94,"st":-40,"bm":0,"sr":1},{"ddd":0,"ind":64,"ty":4,"nm":"T1-LB","parent":56,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[38.919,61.496,0]},"a":{"k":[250,250,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[-0.5,9.501],[-0.048,5.655],[0.054,0.06],[0.946,1.486],[-9.967,8.05],[-40.546,0]],"o":[[0.031,-0.594],[0.076,-8.978],[-1.161,-1.3],[-5.939,-9.327],[24.677,-19.929],[0,0]],"v":[[-30.72,63.761],[-30.741,45.192],[-37.397,27.014],[-40.698,22.661],[-37.873,-7.117],[49.506,11.559]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":51,"s":[32.1],"e":[32.1]},{"t":128}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":51,"s":[39],"e":[62.4]},{"t":128}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[227.677,234.375],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 9"}],"ip":51,"op":94,"st":-57,"bm":0,"sr":1},{"ddd":0,"ind":65,"ty":4,"nm":"T2-DB","parent":56,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[38.919,61.496,0]},"a":{"k":[250,250,0]},"s":{"k":[100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[-0.5,9.501],[-0.048,5.655],[0.054,0.06],[0.946,1.486],[-9.967,8.05],[-40.546,0]],"o":[[0.031,-0.594],[0.076,-8.978],[-1.161,-1.3],[-5.939,-9.327],[24.677,-19.929],[0,0]],"v":[[-30.72,63.761],[-30.741,45.192],[-37.397,27.014],[-40.698,22.661],[-37.873,-7.117],[49.506,11.559]],"c":false}},"nm":"Path 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":40,"s":[32.1],"e":[32.1]},{"t":100}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":40,"s":[39],"e":[62.4]},{"t":100}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[227.677,234.375],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 9"}],"ip":51,"op":94,"st":-57,"bm":0,"sr":1},{"ddd":0,"ind":66,"ty":4,"nm":"O1-DB","parent":56,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[-14.604,78.098,0]},"a":{"k":[196.791,266.504,0]},"s":{"k":[-100.59,100.59,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[44.6,44.6]},"p":{"k":[0.8,-0.5]},"nm":"Ellipse Path 1"},{"ty":"tm","s":{"k":0,"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":51,"s":[34.7],"e":[100]},{"t":64}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[196,267],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"}],"ip":51,"op":94,"st":-43,"bm":0,"sr":1},{"ddd":0,"ind":67,"ty":1,"nm":"N9","ks":{"o":{"k":0},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":51,"s":[131.469,237.982,0],"e":[131.469,267.967,0],"to":[0,0,0],"ti":[0,0,0]},{"t":93}]},"a":{"k":[60,60,0]},"s":{"k":[87.222,87.256,100]}},"ao":0,"sw":120,"sh":120,"sc":"#ffffff","ip":51,"op":94,"st":-14,"bm":0,"sr":1},{"ddd":0,"ind":68,"ty":4,"nm":"Circle2-LB","parent":67,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.821},"o":{"x":0.191,"y":0},"n":"0p833_0p821_0p191_0","t":51,"s":[-27.064,44.384,0],"e":[63.032,163.934,0],"to":[-0.65391635894775,34.5792617797852,0],"ti":[-80.4530563354492,-9.73607635498047,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":55.708,"s":[63.032,163.934,0],"e":[174.786,55.646,0],"to":[80.4530563354492,9.73607635498047,0],"ti":[1.84608364105225,32.7129554748535,0]},{"i":{"x":0.65,"y":0.807},"o":{"x":0.167,"y":0.189},"n":"0p65_0p807_0p167_0p189","t":59.495,"s":[174.786,55.646,0],"e":[76.027,-43.113,0],"to":[-1.84608364105225,-32.7129554748535,0],"ti":[62.4875564575195,7.59005880355835,0]},{"i":{"x":0.801,"y":0.805},"o":{"x":0.458,"y":0.449},"n":"0p801_0p805_0p458_0p449","t":64,"s":[76.027,-43.113,0],"e":[-27.064,44.384,0],"to":[-62.4875564575195,-7.59005880355835,0],"ti":[1.65391635894775,-36.5792617797852,0]},{"i":{"x":0.833,"y":0.809},"o":{"x":0.456,"y":0.293},"n":"0p833_0p809_0p456_0p293","t":72,"s":[-27.064,44.384,0],"e":[63.032,163.934,0],"to":[-1.65391635894775,36.5792617797852,0],"ti":[-80.4530563354492,-9.73607635498047,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":77.811,"s":[63.032,163.934,0],"e":[174.786,55.646,0],"to":[80.4530563354492,9.73607635498047,0],"ti":[1.84608364105225,32.7129554748535,0]},{"i":{"x":0.52,"y":0.64},"o":{"x":0.167,"y":0.183},"n":"0p52_0p64_0p167_0p183","t":81.971,"s":[174.786,55.646,0],"e":[76.027,-43.113,0],"to":[-1.84608364105225,-32.7129554748535,0],"ti":[62.4875564575195,7.59005880355835,0]},{"i":{"x":0.833,"y":0.845},"o":{"x":0.457,"y":0.425},"n":"0p833_0p845_0p457_0p425","t":87,"s":[76.027,-43.113,0],"e":[-27.064,44.384,0],"to":[-62.4875564575195,-7.59005880355835,0],"ti":[0.97977685928345,-33.1263580322266,0]},{"t":93}]},"a":{"k":[40,-210,0]},"s":{"k":[86.631,86.631,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[56.234,56.234]},"p":{"k":[0,0]},"nm":"Ellipse Path 1"},{"ty":"fl","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"nm":"Fill 1"},{"ty":"tr","p":{"k":[40,-210],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"}],"ip":51,"op":94,"st":51,"bm":0,"sr":1},{"ddd":0,"ind":69,"ty":4,"nm":"Trail 2 -LB","parent":72,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[146.615,210.395,0]},"a":{"k":[0,0,0]},"s":{"k":[20.202,20.194,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[-1.517,48.858],[1.163,74.935]],"o":[[5,-48.625],[3.488,-112.321],[0,0]],"v":[[6.286,136.061],[15,-6.875],[15,-344]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0.2,0.81,0.76,1]},"o":{"k":100},"w":{"k":3},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":12,"s":[94.3],"e":[29]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":18,"s":[29],"e":[3.5]},{"t":23}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":12,"s":[100],"e":[37.3]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":18,"s":[37.3],"e":[3.5]},{"t":23}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":12,"op":24,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":70,"ty":4,"nm":"Trail -LB","parent":72,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[146.615,210.395,0]},"a":{"k":[0,0,0]},"s":{"k":[20.202,20.194,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[-1.517,48.858],[1.163,74.935]],"o":[[5,-48.625],[3.488,-112.321],[0,0]],"v":[[15.5,138.847],[25,-6.875],[25,-344]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0.2,0.81,0.76,1]},"o":{"k":100},"w":{"k":3},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[0,0],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":12,"s":[94.3],"e":[29]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":18,"s":[29],"e":[3.5]},{"t":23}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":12,"s":[100],"e":[44.9]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":18,"s":[44.9],"e":[3.5]},{"t":23}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":12,"op":24,"st":0,"bm":0,"sr":1},{"ddd":0,"ind":71,"ty":4,"nm":"L-LB","parent":72,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[165.615,264.614,0]},"a":{"k":[165.615,264.614,0]},"s":{"k":[100,100,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[25.671,-4.167],[1.456,6.902],[-8.481,1.863],[-47.562,13.01],[-0.501,0.133],[-71.423,-2.315]],"o":[[0,0],[-8.224,1.335],[-1.456,-6.903],[23.817,-5.233],[0.16,-0.044],[0.501,-0.133],[0,0]],"v":[[-8.837,-58.229],[-35.834,33.662],[-51.688,23.148],[-41.174,7.293],[51.797,44.178],[53.188,43.741],[140.394,43.672]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"w":{"k":9.194},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[166.029,270.643],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 8"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":17,"s":[0],"e":[0]},{"t":59}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.333],"y":[0]},"n":["0p833_0p833_0p333_0"],"t":17,"s":[0],"e":[60]},{"t":59}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":0,"op":51,"st":-19,"bm":0,"sr":1},{"ddd":0,"ind":72,"ty":4,"nm":"L-DB","ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[213.833,805.997,0],"e":[230.862,559.564,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":14,"s":[230.862,559.564,0],"e":[269.283,179.31,0],"to":[0,0,0],"ti":[-13.2794542312622,95.2064895629883,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":32.54,"s":[269.283,179.31,0],"e":[375.689,179.31,0],"to":[11.989333152771,-85.9570236206055,0],"ti":[13.8078565597534,-45.3741569519043,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":40.53,"s":[375.689,179.31,0],"e":[53.475,110.345,0],"to":[-42.8080711364746,140.672103881836,0],"ti":[136.512664794922,1.07854127883911,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":58.755,"s":[53.475,110.345,0],"e":[7.982,110.093,0],"to":[-89.1692886352539,-0.70449697971344,0],"ti":[0,0,0]},{"t":62}]},"a":{"k":[165.615,264.614,0]},"s":{"k":[495.002,495.195,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ks":{"k":{"i":[[0,0],[25.671,-4.167],[1.456,6.902],[-8.481,1.863],[-47.562,13.01],[-0.501,0.133],[-71.423,-2.315]],"o":[[0,0],[-8.224,1.335],[-1.456,-6.903],[23.817,-5.233],[0.16,-0.044],[0.501,-0.133],[0,0]],"v":[[-8.837,-58.229],[-35.834,33.662],[-51.688,23.148],[-41.174,7.293],[51.797,44.178],[53.188,43.741],[140.394,43.672]],"c":false}},"nm":"Path 1"},{"ty":"st","fillEnabled":true,"c":{"k":[0,0.48,0.53,1]},"o":{"k":100},"w":{"k":9},"lc":2,"lj":1,"ml":10,"nm":"Stroke 1"},{"ty":"tr","p":{"k":[166.029,270.643],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 8"},{"ty":"tm","s":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":5,"s":[0],"e":[0]},{"t":51}],"ix":1},"e":{"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.333],"y":[0]},"n":["0p833_0p833_0p333_0"],"t":5,"s":[0],"e":[60]},{"t":51}],"ix":2},"o":{"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1"}],"ip":0,"op":51,"st":-19,"bm":0,"sr":1},{"ddd":0,"ind":73,"ty":4,"nm":"Circle-LB","parent":72,"ks":{"o":{"k":100},"r":{"k":0},"p":{"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.507,"y":0.071},"n":"0p833_0p833_0p507_0p071","t":0,"s":[151.039,86.27,0],"e":[151.183,215.665,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":18,"s":[151.183,215.665,0],"e":[149.526,243.382,0],"to":[0,0,0],"ti":[2.77621531486511,-25.1235408782959,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":23.539,"s":[149.526,243.382,0],"e":[141.351,286.676,0],"to":[-2.77621531486511,25.1235408782959,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":32.324,"s":[141.351,286.676,0],"e":[120.158,294.548,0],"to":[0,0,0],"ti":[8.87767791748047,15.7244482040405,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":38.193,"s":[120.158,294.548,0],"e":[131.663,272.749,0],"to":[-8.87767791748047,-15.7244482040405,0],"ti":[-7.84585571289062,-1.15270864963531,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":44.524,"s":[131.663,272.749,0],"e":[167.691,296.667,0],"to":[10.647047996521,1.56425821781158,0],"ti":[-14.0278644561768,-10.0415287017822,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":53.212,"s":[167.691,296.667,0],"e":[208.564,311.2,0],"to":[14.0278644561768,10.0415287017822,0],"ti":[-15.3408555984497,-0.48081922531128,0]},{"t":62}]},"a":{"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":17,"s":[40,-210,0],"e":[49.6,-210,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":22,"s":[49.6,-210,0],"e":[40,-210,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":0.667},"o":{"x":0.333,"y":0.333},"n":"0p667_0p667_0p333_0p333","t":32,"s":[40,-210,0],"e":[40,-210,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":43,"s":[40,-210,0],"e":[52.2,-164.3,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0},"n":"0p667_1_0p167_0","t":48,"s":[52.2,-164.3,0],"e":[52.2,-210,0],"to":[0,0,0],"ti":[0,0,0]},{"t":53}]},"s":{"k":[15.138,15.138,100]}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"k":[{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"n":["0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167"],"t":17,"s":[56.234,84.034],"e":[56.234,56.234]},{"t":19}]},"p":{"k":[0,0]},"nm":"Ellipse Path 1"},{"ty":"fl","fillEnabled":true,"c":{"k":[0,0.82,0.76,1]},"o":{"k":100},"nm":"Fill 1"},{"ty":"tr","p":{"k":[40,-210],"ix":2},"a":{"k":[0,0],"ix":1},"s":{"k":[100,100],"ix":3},"r":{"k":0,"ix":6},"o":{"k":100,"ix":7},"sk":{"k":0,"ix":4},"sa":{"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1"}],"ip":0,"op":51,"st":-13,"bm":0,"sr":1}],"v":"4.4.26","ddd":0,"ip":0,"op":378,"fr":30,"w":281,"h":500}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/Ambients.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/Ambients.kt
new file mode 100644
index 0000000..8ce7d96
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/Ambients.kt
@@ -0,0 +1,6 @@
+package com.airbnb.lottie.sample.compose
+
+import androidx.activity.OnBackPressedDispatcher
+import androidx.compose.runtime.ambientOf
+
+val BackPressedDispatcherAmbient = ambientOf<OnBackPressedDispatcher> { error("No BackPressedDispatcher specified.") }
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ComposeActivity.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ComposeActivity.kt
new file mode 100644
index 0000000..cc5005a
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ComposeActivity.kt
@@ -0,0 +1,5 @@
+package com.airbnb.lottie.sample.compose
+
+import androidx.appcompat.app.AppCompatActivity
+
+class ComposeActivity : AppCompatActivity(R.layout.main_activity)
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ComposeFragment.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ComposeFragment.kt
new file mode 100644
index 0000000..4b19afc
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ComposeFragment.kt
@@ -0,0 +1,113 @@
+package com.airbnb.lottie.sample.compose
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.activity.ComponentActivity
+import androidx.annotation.DrawableRes
+import androidx.annotation.StringRes
+import androidx.compose.foundation.Icon
+import androidx.compose.foundation.Text
+import androidx.compose.foundation.clickable
+import androidx.compose.foundation.layout.*
+import androidx.compose.material.BottomAppBar
+import androidx.compose.material.Scaffold
+import androidx.compose.material.ripple.RippleIndication
+import androidx.compose.runtime.Composable
+import androidx.compose.runtime.Providers
+import androidx.compose.ui.Alignment
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.graphics.Color
+import androidx.compose.ui.platform.ComposeView
+import androidx.compose.ui.platform.ContextAmbient
+import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.res.vectorResource
+import androidx.compose.ui.text.TextStyle
+import androidx.compose.ui.unit.dp
+import androidx.compose.ui.unit.sp
+import androidx.fragment.app.Fragment
+import androidx.navigation.fragment.findNavController
+import com.airbnb.lottie.sample.compose.player.PlayerFragment
+import com.airbnb.lottie.sample.compose.ui.LottieTheme
+import com.airbnb.lottie.sample.compose.ui.Teal
+import com.airbnb.lottie.sample.compose.utils.NavControllerAmbient
+import com.airbnb.mvrx.asMavericksArgs
+
+abstract class ComposeFragment : Fragment() {
+    override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
+        return ComposeView(requireContext()).apply {
+            setContent {
+                Providers(
+                    NavControllerAmbient provides findNavController(),
+                    BackPressedDispatcherAmbient provides (ContextAmbient.current as ComponentActivity).onBackPressedDispatcher
+                ) {
+                    LottieTheme {
+                        Scaffold(
+                            bottomBar = {
+                                BottomAppBar(
+                                    backgroundColor = Color(0xFFF7F7F7),
+                                    elevation = 8.dp,
+                                    contentColor = Teal,
+                                ) {
+                                    Row(
+                                        horizontalArrangement = Arrangement.SpaceAround,
+                                        modifier = Modifier.fillMaxWidth()
+                                    ) {
+                                        BottomBarButton(R.drawable.ic_showcase, R.string.bottom_tab_showcase) {
+                                            findNavController().navigate(R.id.showcase)
+                                        }
+
+                                        BottomBarButton(R.drawable.ic_lottie_files, R.string.bottom_tab_lottie_files) {
+                                            findNavController().navigate(R.id.lottie_files)
+                                        }
+                                        BottomBarButton(R.drawable.ic_device, R.string.bottom_tab_preview) {
+                                            // DO NOT SUBMIT
+                                            val args = PlayerFragment.Args.Url("https://assets4.lottiefiles.com/private_files/lf30_8xbh8fop.json")
+                                            findNavController().navigate(R.id.player, args.asMavericksArgs())
+//                                            findNavController().navigate(R.id.preview)
+                                        }
+                                        BottomBarButton(R.drawable.ic_learn, R.string.bottom_tab_learn) {
+                                        }
+                                    }
+                                }
+                            }
+                        ) { innerPadding ->
+                            Box(
+                                modifier = Modifier.padding(innerPadding)
+                            ) {
+                                root()
+                            }
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    @Composable
+    abstract fun root()
+
+
+    @Composable
+    private fun BottomBarButton(@DrawableRes iconRes: Int, @StringRes labelRes: Int, onClick: () -> Unit) {
+        Column(
+            modifier = Modifier
+                .clickable(
+                    onClick = onClick,
+                    indication = RippleIndication(bounded = false)
+                )
+                .padding(6.dp)
+        ) {
+            Icon(
+                vectorResource(iconRes),
+                modifier = Modifier
+                    .align(Alignment.CenterHorizontally)
+            )
+            Text(
+                stringResource(labelRes),
+                style = TextStyle(fontSize = 12.sp)
+            )
+        }
+    }
+}
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/LottieComposeApplication.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/LottieComposeApplication.kt
new file mode 100644
index 0000000..6a302ea
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/LottieComposeApplication.kt
@@ -0,0 +1,20 @@
+package com.airbnb.lottie.sample.compose
+
+import androidx.multidex.MultiDexApplication
+import com.airbnb.lottie.L
+import com.airbnb.lottie.sample.compose.dagger.ApplicationComponent
+import com.airbnb.lottie.sample.compose.dagger.DaggerApplicationComponent
+import com.airbnb.mvrx.Mavericks
+
+class LottieComposeApplication : MultiDexApplication() {
+    lateinit var component: ApplicationComponent
+
+    override fun onCreate() {
+        super.onCreate()
+        Mavericks.initialize(this)
+        component = DaggerApplicationComponent.create()
+        L.DBG = true
+        @Suppress("RestrictedApi")
+        L.setTraceEnabled(true)
+    }
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/AnimationDataV1.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/AnimationDataV1.kt
new file mode 100644
index 0000000..5030055
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/AnimationDataV1.kt
@@ -0,0 +1,15 @@
+package com.airbnb.lottie.sample.compose.api
+
+import android.os.Parcelable
+import com.airbnb.lottie.sample.compose.ui.toColorSafe
+import kotlinx.android.parcel.Parcelize
+
+data class AnimationDataV1(
+    val id: Int,
+    val bg_color: String?,
+    val preview: String?,
+    val title: String,
+    val lottie_link: String
+) {
+    val bgColor get() = bg_color.toColorSafe()
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/AnimationDataV2.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/AnimationDataV2.kt
new file mode 100644
index 0000000..7e1dbe0
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/AnimationDataV2.kt
@@ -0,0 +1,26 @@
+package com.airbnb.lottie.sample.compose.api
+
+import android.os.Parcelable
+import com.airbnb.lottie.sample.compose.ui.toColorSafe
+import com.squareup.moshi.Json
+import kotlinx.android.parcel.IgnoredOnParcel
+import kotlinx.android.parcel.Parcelize
+
+data class AnimationDataV2(
+    val id: Int,
+    val bg_color: String?,
+    val preview_url: String?,
+    val title: String,
+    val file: String
+) {
+
+    constructor(data: AnimationDataV1) : this(
+        data.id,
+        data.bg_color,
+        data.preview,
+        data.title,
+        data.lottie_link,
+    )
+
+    val bgColor get() = bg_color.toColorSafe()
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/AnimationsResponseV1.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/AnimationsResponseV1.kt
new file mode 100644
index 0000000..f3cb764
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/AnimationsResponseV1.kt
@@ -0,0 +1,7 @@
+package com.airbnb.lottie.sample.compose.api
+
+data class AnimationsResponseV1(
+    val data: List<AnimationDataV1>,
+    val current_page: Int,
+    val last_page: Int
+)
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/AnimationsResponseV2.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/AnimationsResponseV2.kt
new file mode 100644
index 0000000..78f2c83
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/AnimationsResponseV2.kt
@@ -0,0 +1,7 @@
+package com.airbnb.lottie.sample.compose.api
+
+data class AnimationsResponseV2(
+    val data: List<AnimationDataV2>,
+    val current_page: Int,
+    val last_page: Int
+)
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/ApiModule.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/ApiModule.kt
new file mode 100644
index 0000000..3d07d41
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/ApiModule.kt
@@ -0,0 +1,27 @@
+package com.airbnb.lottie.sample.compose.api
+
+import dagger.Module
+import dagger.Provides
+import retrofit2.Retrofit
+import retrofit2.converter.moshi.MoshiConverterFactory
+import retrofit2.create
+import javax.inject.Singleton
+
+@Module
+object ApiModule {
+    @Provides
+    @Singleton
+    fun providesRetrofit(): Retrofit {
+        return Retrofit.Builder()
+            .baseUrl("https://api.lottiefiles.com/")
+            .addConverterFactory(MoshiConverterFactory.create())
+            .build()
+    }
+
+    @Provides
+    @Singleton
+    fun providesLottieFilesApi(retrofit: Retrofit): LottieFilesApi {
+        return retrofit.create()
+    }
+}
+
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/LottieFilesApi.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/LottieFilesApi.kt
new file mode 100644
index 0000000..1b8cbec
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/api/LottieFilesApi.kt
@@ -0,0 +1,19 @@
+package com.airbnb.lottie.sample.compose.api
+
+import retrofit2.http.GET
+import retrofit2.http.Path
+import retrofit2.http.Query
+
+interface LottieFilesApi {
+    @GET("v2/featured")
+    suspend fun getFeatured(): AnimationsResponseV2
+
+    @GET("v1/recent")
+    suspend fun getRecent(@Query("page") page: Int): AnimationsResponseV1
+
+    @GET("v1/popular")
+    suspend fun getPopular(@Query("page") page: Int): AnimationsResponseV1
+
+    @GET("v1/search/{query}")
+    suspend fun search(@Path("query") query: String, @Query("page") page: Int): AnimationsResponseV1
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/composables/AnimationRow.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/composables/AnimationRow.kt
new file mode 100644
index 0000000..86027d9
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/composables/AnimationRow.kt
@@ -0,0 +1,51 @@
+package com.airbnb.lottie.sample.compose.composables
+
+import androidx.compose.foundation.Text
+import androidx.compose.foundation.background
+import androidx.compose.foundation.clickable
+import androidx.compose.foundation.layout.Row
+import androidx.compose.foundation.layout.fillMaxWidth
+import androidx.compose.foundation.layout.padding
+import androidx.compose.foundation.layout.preferredSize
+import androidx.compose.material.Surface
+import androidx.compose.runtime.Composable
+import androidx.compose.ui.Alignment
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.graphics.Color
+import androidx.compose.ui.text.style.TextOverflow
+import androidx.compose.ui.unit.dp
+import androidx.compose.ui.unit.sp
+import dev.chrisbanes.accompanist.coil.CoilImage
+
+@Composable
+fun AnimationRow(
+    title: String,
+    previewUrl: String,
+    previewBackgroundColor: Color,
+    onClick: () -> Unit
+) {
+    Surface(
+        modifier = Modifier.clickable(onClick = onClick)
+    ) {
+        Row(
+            verticalAlignment = Alignment.CenterVertically,
+            modifier = Modifier
+                .padding(8.dp)
+                .fillMaxWidth()
+        ) {
+            CoilImage(
+                data = previewUrl,
+                modifier = Modifier
+                    .padding(end = 16.dp)
+                    .preferredSize(40.dp)
+                    .background(color = previewBackgroundColor)
+            )
+            Text(
+                title,
+                fontSize = 16.sp,
+                overflow = TextOverflow.Ellipsis
+            )
+        }
+
+    }
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/composables/DebouncedCircularProgressIndicator.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/composables/DebouncedCircularProgressIndicator.kt
new file mode 100644
index 0000000..ac5d08c
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/composables/DebouncedCircularProgressIndicator.kt
@@ -0,0 +1,36 @@
+package com.airbnb.lottie.sample.compose.composables
+
+import androidx.compose.material.CircularProgressIndicator
+import androidx.compose.material.MaterialTheme
+import androidx.compose.material.ProgressIndicatorConstants
+import androidx.compose.runtime.Composable
+import androidx.compose.runtime.LaunchedTask
+import androidx.compose.runtime.remember
+import androidx.compose.runtime.getValue
+import androidx.compose.runtime.mutableStateOf
+import androidx.compose.runtime.setValue
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.graphics.Color
+import androidx.compose.ui.unit.Dp
+import kotlinx.coroutines.delay
+
+@Composable
+fun DebouncedCircularProgressIndicator(
+    delayMs: Long = 1_500L,
+    color: Color = MaterialTheme.colors.primary,
+    strokeWidth: Dp = ProgressIndicatorConstants.DefaultStrokeWidth,
+    modifier: Modifier = Modifier,
+) {
+    var readyToShow by remember { mutableStateOf(false) }
+    LaunchedTask {
+        delay(delayMs)
+        readyToShow = true
+    }
+    if (readyToShow) {
+        CircularProgressIndicator(
+            color = color,
+            strokeWidth = strokeWidth,
+            modifier = modifier
+        )
+    }
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/composables/Loader.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/composables/Loader.kt
new file mode 100644
index 0000000..4762035
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/composables/Loader.kt
@@ -0,0 +1,23 @@
+package com.airbnb.lottie.sample.compose.composables
+
+import androidx.compose.foundation.layout.preferredSize
+import androidx.compose.runtime.Composable
+import androidx.compose.runtime.remember
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.unit.dp
+import com.airbnb.lottie.compose.LottieAnimation
+import com.airbnb.lottie.compose.LottieAnimationSpec
+import com.airbnb.lottie.sample.compose.R
+
+@Composable
+fun Loader(
+    modifier: Modifier = Modifier
+) {
+    val animationSpec = remember { LottieAnimationSpec.RawRes(R.raw.loading) }
+    LottieAnimation(
+        animationSpec,
+        modifier = Modifier
+            .preferredSize(100.dp)
+            .then(modifier)
+    )
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/composables/Marquee.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/composables/Marquee.kt
new file mode 100644
index 0000000..0cc9957
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/composables/Marquee.kt
@@ -0,0 +1,22 @@
+package com.airbnb.lottie.sample.compose.composables
+
+import androidx.compose.foundation.Text
+import androidx.compose.foundation.layout.padding
+import androidx.compose.runtime.Composable
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.text.font.FontWeight
+import androidx.compose.ui.unit.dp
+import androidx.compose.ui.unit.sp
+import com.airbnb.lottie.sample.compose.ui.TealDark
+
+@Composable
+fun Marquee(text: String) {
+    Text(
+        text,
+        fontSize = 32.sp,
+        color = TealDark,
+        fontWeight = FontWeight.Bold,
+        modifier = Modifier
+            .padding(vertical = 24.dp, horizontal = 16.dp)
+    )
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/composables/SeekBar.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/composables/SeekBar.kt
new file mode 100644
index 0000000..e5d797c
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/composables/SeekBar.kt
@@ -0,0 +1,90 @@
+package com.airbnb.lottie.sample.compose.composables
+
+import androidx.compose.foundation.Canvas
+import androidx.compose.foundation.layout.Row
+import androidx.compose.foundation.layout.fillMaxWidth
+import androidx.compose.foundation.layout.padding
+import androidx.compose.foundation.layout.preferredHeight
+import androidx.compose.runtime.Composable
+import androidx.compose.runtime.remember
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.geometry.Offset
+import androidx.compose.ui.geometry.Size
+import androidx.compose.ui.gesture.DragObserver
+import androidx.compose.ui.gesture.dragGestureFilter
+import androidx.compose.ui.graphics.Color
+import androidx.compose.ui.onGloballyPositioned
+import androidx.compose.ui.unit.Dp
+import androidx.compose.ui.unit.dp
+import androidx.ui.tooling.preview.Preview
+
+@Composable
+fun SeekBar(
+    progress: Float,
+    onProgressChanged: (Float) -> Unit,
+    trackHeight: Dp = 2.dp,
+    thumbRadius: Dp = 4.dp,
+    unfilledTrackColor: Color = Color.LightGray,
+    filledTrackColor: Color = Color.Red,
+    modifier: Modifier = Modifier
+) {
+    var width = 0
+    var dragStartProgress = 0f
+    var dragDistanceX = 0f
+    val dragObserver = remember {
+        object : DragObserver {
+            override fun onStart(downPosition: Offset) {
+                dragStartProgress = downPosition.x / width.toFloat()
+                if (width > 0) onProgressChanged(dragStartProgress)
+            }
+            override fun onDrag(dragDistance: Offset): Offset {
+                dragDistanceX += dragDistance.x
+                if (width > 0) {
+                    val newProgress = (dragStartProgress + dragDistanceX / width.toFloat()).coerceIn(0f, 1f)
+                    onProgressChanged(newProgress)
+                }
+                return dragDistance
+            }
+
+            override fun onStop(velocity: Offset) {
+                dragDistanceX = 0f
+            }
+        }
+    }
+    Row(
+        modifier = Modifier
+            .onGloballyPositioned { width = it.size.width }
+            .dragGestureFilter(dragObserver, startDragImmediately = true)
+            .padding(vertical = 12.dp)
+            .then(modifier)
+    ) {
+        Canvas(
+            modifier = Modifier
+                .preferredHeight(thumbRadius * 2f)
+                .fillMaxWidth()
+        ) {
+            val thumbX = size.width * progress
+            drawRect(
+                color = unfilledTrackColor,
+                topLeft = Offset(thumbX, size.height / 2f - trackHeight.toPx() / 2f),
+                size = Size(size.width - thumbX, trackHeight.toPx())
+            )
+            drawRect(
+                color = filledTrackColor,
+                topLeft = Offset(0f, size.height / 2f - trackHeight.toPx() / 2f),
+                size = Size(thumbX, trackHeight.toPx())
+            )
+            drawCircle(
+                color = filledTrackColor,
+                radius = thumbRadius.toPx(),
+                center = Offset(thumbX, size.height / 2f)
+            )
+        }
+    }
+}
+
+@Preview
+@Composable
+fun SeekBarPreview() {
+    SeekBar(0.5f, {})
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/dagger/ApplicationComponent.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/dagger/ApplicationComponent.kt
new file mode 100644
index 0000000..3607b1e
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/dagger/ApplicationComponent.kt
@@ -0,0 +1,18 @@
+package com.airbnb.lottie.sample.compose.dagger
+
+import com.airbnb.lottie.sample.compose.api.ApiModule
+import com.airbnb.lottie.sample.compose.showcase.ShowcaseViewModel
+import com.airbnb.mvrx.MavericksViewModel
+import dagger.Component
+import javax.inject.Singleton
+
+@Component(
+    modules = [
+        ApiModule::class,
+        AppModule::class
+    ]
+)
+@Singleton
+interface ApplicationComponent {
+    fun viewModelFactories(): Map<Class<out MavericksViewModel<*>>, AssistedViewModelFactory<*, *>>
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/dagger/AssistedViewModelFactory.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/dagger/AssistedViewModelFactory.kt
new file mode 100644
index 0000000..345d5c4
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/dagger/AssistedViewModelFactory.kt
@@ -0,0 +1,8 @@
+package com.airbnb.lottie.sample.compose.dagger
+
+import com.airbnb.mvrx.MavericksState
+import com.airbnb.mvrx.MavericksViewModel
+
+interface AssistedViewModelFactory<VM : MavericksViewModel<S>, S : MavericksState> {
+    fun create(initialState: S): VM
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/dagger/DaggerMavericksViewModelFactory.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/dagger/DaggerMavericksViewModelFactory.kt
new file mode 100644
index 0000000..3887139
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/dagger/DaggerMavericksViewModelFactory.kt
@@ -0,0 +1,28 @@
+package com.airbnb.lottie.sample.compose.dagger
+
+import androidx.fragment.app.FragmentActivity
+import com.airbnb.lottie.sample.compose.LottieComposeApplication
+import com.airbnb.mvrx.*
+
+abstract class DaggerMvRxViewModelFactory<VM : MavericksViewModel<S>, S : MavericksState>(
+        private val viewModelClass: Class<out MavericksViewModel<S>>
+) : MavericksViewModelFactory<VM, S> {
+
+    override fun create(viewModelContext: ViewModelContext, state: S): VM? {
+        return createViewModel(viewModelContext.activity, state)
+    }
+
+    private fun <VM : MavericksViewModel<S>, S : MavericksState> createViewModel(
+            fragmentActivity:
+            FragmentActivity,
+            initialState: S
+    ): VM {
+        val viewModelFactoryMap = (fragmentActivity.application as LottieComposeApplication).component.viewModelFactories()
+        val viewModelFactory = viewModelFactoryMap[viewModelClass]
+
+        @Suppress("UNCHECKED_CAST")
+        val castedViewModelFactory = viewModelFactory as? AssistedViewModelFactory<VM, S>
+        val viewModel = castedViewModelFactory?.create(initialState)
+        return viewModel as VM
+    }
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/dagger/MavericksModule.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/dagger/MavericksModule.kt
new file mode 100644
index 0000000..3d0fedc
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/dagger/MavericksModule.kt
@@ -0,0 +1,30 @@
+package com.airbnb.lottie.sample.compose.dagger
+
+import com.airbnb.lottie.sample.compose.lottiefiles.LottieFilesRecentAndPopularViewModel
+import com.airbnb.lottie.sample.compose.lottiefiles.LottieFilesSearchViewModel
+import com.airbnb.lottie.sample.compose.showcase.ShowcaseViewModel
+import com.squareup.inject.assisted.dagger2.AssistedModule
+import dagger.Binds
+import dagger.Module
+import dagger.multibindings.IntoMap
+
+@AssistedModule
+@Module(includes = [AssistedInject_AppModule::class])
+interface AppModule {
+
+    @Binds
+    @IntoMap
+    @ViewModelKey(ShowcaseViewModel::class)
+    fun showcaseViewModelFactory(factory: ShowcaseViewModel.Factory): AssistedViewModelFactory<*, *>
+
+    @Binds
+    @IntoMap
+    @ViewModelKey(LottieFilesSearchViewModel::class)
+    fun lottieFilesSearchViewModelFactory(factory: LottieFilesSearchViewModel.Factory): AssistedViewModelFactory<*, *>
+
+    @Binds
+    @IntoMap
+    @ViewModelKey(LottieFilesRecentAndPopularViewModel::class)
+    fun lottieFilesRecentAndPopularViewModelFactory(factory: LottieFilesRecentAndPopularViewModel.Factory): AssistedViewModelFactory<*, *>
+
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/dagger/ViewModelKey.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/dagger/ViewModelKey.kt
new file mode 100644
index 0000000..a065810
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/dagger/ViewModelKey.kt
@@ -0,0 +1,13 @@
+package com.airbnb.lottie.sample.compose.dagger
+
+import com.airbnb.mvrx.MavericksViewModel
+import dagger.MapKey
+import kotlin.reflect.KClass
+
+/**
+ * A [MapKey] for populating a map of ViewModels and their factories.
+ */
+@Retention(AnnotationRetention.RUNTIME)
+@Target(AnnotationTarget.FUNCTION)
+@MapKey
+annotation class ViewModelKey(val value: KClass<out MavericksViewModel<*>>)
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/lottiefiles/LottieFilesPage.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/lottiefiles/LottieFilesPage.kt
new file mode 100644
index 0000000..6545d54
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/lottiefiles/LottieFilesPage.kt
@@ -0,0 +1,105 @@
+package com.airbnb.lottie.sample.compose.lottiefiles
+
+import androidx.annotation.StringRes
+import androidx.compose.animation.animate
+import androidx.compose.foundation.Text
+import androidx.compose.foundation.background
+import androidx.compose.foundation.clickable
+import androidx.compose.foundation.layout.*
+import androidx.compose.material.MaterialTheme
+import androidx.compose.runtime.*
+import androidx.compose.runtime.savedinstancestate.savedInstanceState
+import androidx.compose.ui.Alignment
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.onGloballyPositioned
+import androidx.compose.ui.platform.DensityAmbient
+import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.unit.dp
+import com.airbnb.lottie.sample.compose.ComposeFragment
+import com.airbnb.lottie.sample.compose.R
+import com.airbnb.lottie.sample.compose.composables.Marquee
+
+class LottieFilesFragment : ComposeFragment() {
+
+    @Composable
+    override fun root() {
+        LottieFilesPage()
+    }
+}
+
+enum class LottieFilesTab(@StringRes val stringRes: Int) {
+    Recent(R.string.tab_recent),
+    Popular(R.string.tab_popular),
+    Search(R.string.tab_search)
+}
+
+@Composable
+fun LottieFilesPage() {
+    var tab by savedInstanceState { LottieFilesTab.Recent }
+
+    Column {
+        Marquee("LottieFiles")
+        LottieFilesTabBar(
+            selectedTab = tab,
+            onTabSelected = { tab = it },
+        )
+        when (tab) {
+            LottieFilesTab.Recent -> LottieFilesRecentAndPopularPage(LottieFilesMode.Recent)
+            LottieFilesTab.Popular -> LottieFilesRecentAndPopularPage(LottieFilesMode.Popular)
+            LottieFilesTab.Search -> LottieFilesSearchPage()
+        }
+    }
+
+}
+
+@Composable
+fun LottieFilesTabBar(
+    selectedTab: LottieFilesTab,
+    onTabSelected: (LottieFilesTab) -> Unit,
+    modifier: Modifier = Modifier
+) {
+    Row(
+        modifier = Modifier.fillMaxWidth().then(modifier),
+        horizontalArrangement = Arrangement.Start
+    ) {
+        for (tab in LottieFilesTab.values()) {
+            LottieFilesTabBarTab(
+                text = stringResource(tab.stringRes),
+                isSelected = tab == selectedTab,
+                onClick = { onTabSelected(tab) }
+            )
+        }
+    }
+}
+
+@Composable
+fun LottieFilesTabBarTab(
+    text: String,
+    isSelected: Boolean,
+    onClick: () -> Unit
+) {
+    val textWidth = remember { mutableStateOf(0) }
+    val pxRatio = with(DensityAmbient.current) { 1.dp.toPx() }
+    val tabWidth = animate(target = if (isSelected) (textWidth.value / pxRatio).dp else 0.dp)
+    val tabAlpha = animate(target = if (isSelected) 1f else 0f)
+    Column(
+        modifier = Modifier
+            .clickable(onClick = onClick)
+            .padding(horizontal = 16.dp, vertical = 8.dp)
+    ) {
+        Text(
+            text,
+            maxLines = 1,
+            modifier = Modifier
+                .onGloballyPositioned { textWidth.value = it.size.width }
+                .wrapContentWidth()
+        )
+        Box(
+            modifier = Modifier
+                .align(Alignment.CenterHorizontally)
+                .preferredHeight(3.dp)
+                .background(MaterialTheme.colors.primary.copy(alpha = tabAlpha))
+                .preferredWidth(tabWidth)
+        )
+    }
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/lottiefiles/LottieFilesRecentsAndPopularPage.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/lottiefiles/LottieFilesRecentsAndPopularPage.kt
new file mode 100644
index 0000000..1630121
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/lottiefiles/LottieFilesRecentsAndPopularPage.kt
@@ -0,0 +1,158 @@
+package com.airbnb.lottie.sample.compose.lottiefiles
+
+import android.util.Log
+import androidx.compose.foundation.Icon
+import androidx.compose.foundation.layout.Box
+import androidx.compose.foundation.layout.Column
+import androidx.compose.foundation.layout.padding
+import androidx.compose.foundation.lazy.LazyColumnForIndexed
+import androidx.compose.material.FloatingActionButton
+import androidx.compose.material.icons.Icons
+import androidx.compose.material.icons.filled.Repeat
+import androidx.compose.runtime.Composable
+import androidx.compose.runtime.onActive
+import androidx.compose.runtime.onCommit
+import androidx.compose.ui.Alignment
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.graphics.Color
+import androidx.compose.ui.unit.dp
+import com.airbnb.lottie.sample.compose.R
+import com.airbnb.lottie.sample.compose.api.AnimationDataV2
+import com.airbnb.lottie.sample.compose.api.LottieFilesApi
+import com.airbnb.lottie.sample.compose.composables.AnimationRow
+import com.airbnb.lottie.sample.compose.dagger.AssistedViewModelFactory
+import com.airbnb.lottie.sample.compose.dagger.DaggerMvRxViewModelFactory
+import com.airbnb.lottie.sample.compose.player.PlayerFragment
+import com.airbnb.lottie.sample.compose.utils.findNavController
+import com.airbnb.lottie.sample.compose.utils.mavericksViewModelAndState
+import com.airbnb.mvrx.MavericksState
+import com.airbnb.mvrx.MavericksViewModel
+import com.airbnb.mvrx.asMavericksArgs
+import com.squareup.inject.assisted.Assisted
+import com.squareup.inject.assisted.AssistedInject
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.Job
+import kotlinx.coroutines.launch
+
+enum class LottieFilesMode {
+    Recent,
+    Popular,
+}
+
+data class LottieFilesRecentAndPopularState(
+    val mode: LottieFilesMode = LottieFilesMode.Recent,
+    val results: List<AnimationDataV2> = emptyList(),
+    val currentPage: Int = 1,
+    val lastPage: Int = 0,
+    val fetchException: Boolean = false,
+) : MavericksState
+
+class LottieFilesRecentAndPopularViewModel @AssistedInject constructor(
+    @Assisted initialState: LottieFilesRecentAndPopularState,
+    private val api: LottieFilesApi,
+) : MavericksViewModel<LottieFilesRecentAndPopularState>(initialState) {
+    private var fetchJob: Job? = null
+
+    init {
+        onEach(LottieFilesRecentAndPopularState::mode) {
+            setState { copy(results = emptyList(), currentPage = 0, lastPage = 1, fetchException = false) }
+            withState {
+                fetchNextPage()
+            }
+        }
+    }
+
+    fun fetchNextPage() = withState { state ->
+        fetchJob?.cancel()
+        if (state.currentPage >= state.lastPage) return@withState
+        fetchJob = viewModelScope.launch(Dispatchers.IO) {
+            val response = try {
+                Log.d("Gabe", "Fetching page ${state.currentPage + 1}")
+                when (state.mode) {
+                    LottieFilesMode.Recent -> api.getRecent(state.currentPage + 1)
+                    LottieFilesMode.Popular -> api.getPopular(state.currentPage + 1)
+                }
+            } catch (e: Exception) {
+                setState { copy(fetchException = true) }
+                return@launch
+            }
+            setState {
+                copy(
+                    results = results + response.data.map(::AnimationDataV2),
+                    currentPage = response.current_page,
+                    lastPage = response.last_page,
+                    fetchException = false
+                )
+            }
+        }
+    }
+
+    fun setMode(mode: LottieFilesMode) = setState { copy(mode = mode) }
+
+    @AssistedInject.Factory
+    interface Factory : AssistedViewModelFactory<LottieFilesRecentAndPopularViewModel, LottieFilesRecentAndPopularState> {
+        override fun create(initialState: LottieFilesRecentAndPopularState): LottieFilesRecentAndPopularViewModel
+    }
+
+    companion object : DaggerMvRxViewModelFactory<LottieFilesRecentAndPopularViewModel, LottieFilesRecentAndPopularState>(LottieFilesRecentAndPopularViewModel::class.java)
+}
+
+@Composable
+fun LottieFilesRecentAndPopularPage(mode: LottieFilesMode) {
+    val (viewModel, state) = mavericksViewModelAndState<LottieFilesRecentAndPopularViewModel, LottieFilesRecentAndPopularState>()
+    val navController = findNavController()
+    onCommit(mode) {
+        viewModel.setMode(mode)
+    }
+    LottieFilesRecentAndPopularPage(
+        state,
+        viewModel::fetchNextPage,
+        onAnimationClicked = { data ->
+            Log.d("Gabe", data.file)
+            val args = PlayerFragment.Args.Url(data.file, backgroundColorStr = data.bg_color)
+            navController.navigate(R.id.player, args.asMavericksArgs())
+        }
+    )
+}
+
+@Composable
+fun LottieFilesRecentAndPopularPage(
+    state: LottieFilesRecentAndPopularState,
+    fetchNextPage: () -> Unit,
+    onAnimationClicked: (AnimationDataV2) -> Unit,
+    modifier: Modifier = Modifier,
+) {
+    Box {
+        Column(
+            modifier = Modifier.then(modifier)
+        ) {
+            LazyColumnForIndexed(
+                state.results,
+                modifier = Modifier.weight(1f)
+            ) { index, result ->
+                if (index == state.results.size - 1) {
+                    onActive {
+                        fetchNextPage()
+                    }
+                }
+                AnimationRow(
+                    title = result.title,
+                    previewUrl = result.preview_url ?: "",
+                    previewBackgroundColor = result.bgColor,
+                    onClick = { onAnimationClicked(result) }
+                )
+            }
+        }
+        if (state.fetchException) {
+            FloatingActionButton(
+                onClick = fetchNextPage,
+                icon = {
+                    Icon(Icons.Filled.Repeat, tint = Color.White)
+                },
+                modifier = Modifier
+                    .align(Alignment.BottomCenter)
+                    .padding(bottom = 24.dp)
+            )
+        }
+    }
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/lottiefiles/LottieFilesSearchPage.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/lottiefiles/LottieFilesSearchPage.kt
new file mode 100644
index 0000000..68b55a1
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/lottiefiles/LottieFilesSearchPage.kt
@@ -0,0 +1,189 @@
+package com.airbnb.lottie.sample.compose.lottiefiles
+
+import android.util.Log
+import androidx.compose.foundation.Icon
+import androidx.compose.foundation.Text
+import androidx.compose.foundation.layout.*
+import androidx.compose.foundation.lazy.LazyColumnFor
+import androidx.compose.foundation.lazy.LazyColumnForIndexed
+import androidx.compose.material.FloatingActionButton
+import androidx.compose.material.Surface
+import androidx.compose.material.TextField
+import androidx.compose.material.icons.Icons
+import androidx.compose.material.icons.filled.Repeat
+import androidx.compose.runtime.*
+import androidx.compose.ui.Alignment
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.graphics.Color
+import androidx.compose.ui.unit.dp
+import androidx.ui.tooling.preview.Preview
+import com.airbnb.lottie.sample.compose.R
+import com.airbnb.lottie.sample.compose.api.AnimationDataV2
+import com.airbnb.lottie.sample.compose.api.LottieFilesApi
+import com.airbnb.lottie.sample.compose.composables.AnimationRow
+import com.airbnb.lottie.sample.compose.dagger.AssistedViewModelFactory
+import com.airbnb.lottie.sample.compose.dagger.DaggerMvRxViewModelFactory
+import com.airbnb.lottie.sample.compose.player.PlayerFragment
+import com.airbnb.lottie.sample.compose.utils.findNavController
+import com.airbnb.lottie.sample.compose.utils.mavericksViewModelAndState
+import com.airbnb.mvrx.MavericksState
+import com.airbnb.mvrx.MavericksViewModel
+import com.airbnb.mvrx.asMavericksArgs
+import com.squareup.inject.assisted.Assisted
+import com.squareup.inject.assisted.AssistedInject
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.Job
+import kotlinx.coroutines.launch
+
+data class LottieFilesSearchState(
+    val query: String = "Loading",
+    val results: List<AnimationDataV2> = emptyList(),
+    val currentPage: Int = 1,
+    val lastPage: Int = 0,
+    val fetchException: Boolean = false,
+) : MavericksState
+
+class LottieFilesSearchViewModel @AssistedInject constructor(
+    @Assisted initialState: LottieFilesSearchState,
+    private val api: LottieFilesApi,
+) : MavericksViewModel<LottieFilesSearchState>(initialState) {
+    private var fetchJob: Job? = null
+
+    init {
+        onEach(LottieFilesSearchState::query) { query ->
+            fetchJob?.cancel()
+            if (query.isBlank()) {
+                setState { copy(results = emptyList(), currentPage = 1, lastPage = 1, fetchException = false) }
+            } else {
+                fetchJob = viewModelScope.launch(Dispatchers.IO) {
+                    val results = try {
+                        api.search(query, 1)
+                    } catch (e: Exception) {
+                        setState { copy(fetchException = true) }
+                        return@launch
+                    }
+                    setState {
+                        copy(
+                            results = results.data.map(::AnimationDataV2),
+                            currentPage = results.current_page,
+                            lastPage = results.last_page,
+                            fetchException = false
+                        )
+                    }
+                }
+            }
+        }
+    }
+
+    fun fetchNextPage() = withState { state ->
+        fetchJob?.cancel()
+        if (state.currentPage >= state.lastPage) return@withState
+        fetchJob = viewModelScope.launch(Dispatchers.IO) {
+            val response = try {
+                Log.d("Gabe", "Fetching page ${state.currentPage + 1}")
+                api.search(state.query, state.currentPage + 1)
+            } catch (e: Exception) {
+                setState { copy(fetchException = true) }
+                return@launch
+            }
+            setState {
+                copy(
+                    results = results + response.data.map(::AnimationDataV2),
+                    currentPage = response.current_page,
+                    fetchException = false
+                )
+            }
+        }
+    }
+
+    fun setQuery(query: String) = setState { copy(query = query, currentPage = 1, results = emptyList()) }
+
+    @AssistedInject.Factory
+    interface Factory : AssistedViewModelFactory<LottieFilesSearchViewModel, LottieFilesSearchState> {
+        override fun create(initialState: LottieFilesSearchState): LottieFilesSearchViewModel
+    }
+
+    companion object : DaggerMvRxViewModelFactory<LottieFilesSearchViewModel, LottieFilesSearchState>(LottieFilesSearchViewModel::class.java)
+}
+
+@Composable
+fun LottieFilesSearchPage() {
+    val (viewModel, state) = mavericksViewModelAndState<LottieFilesSearchViewModel, LottieFilesSearchState>()
+    val navController = findNavController()
+    LottieFilesSearchPage(
+        state,
+        viewModel::setQuery,
+        viewModel::fetchNextPage,
+        onAnimationClicked = { data ->
+            val args = PlayerFragment.Args.Url(data.file, backgroundColorStr = data.bg_color)
+            navController.navigate(R.id.player, args.asMavericksArgs())
+        }
+    )
+}
+
+@Composable
+fun LottieFilesSearchPage(
+    state: LottieFilesSearchState,
+    setQuery: (String) -> Unit,
+    fetchNextPage: () -> Unit,
+    onAnimationClicked: (AnimationDataV2) -> Unit,
+    modifier: Modifier = Modifier,
+) {
+    Box {
+        Column(
+            modifier = Modifier.then(modifier)
+        ) {
+            TextField(
+                value = state.query,
+                onValueChange = { query -> setQuery(query) },
+                label = { Text("Query") },
+                modifier = Modifier.fillMaxWidth().padding(horizontal = 24.dp)
+            )
+            LazyColumnForIndexed(
+                state.results,
+                modifier = Modifier.weight(1f)
+            ) { index, result ->
+                if (index == state.results.size - 1) {
+                    onActive {
+                        fetchNextPage()
+                    }
+                }
+                AnimationRow(
+                    title = result.title,
+                    previewUrl = result.preview_url ?: "",
+                    previewBackgroundColor = result.bgColor,
+                    onClick = { onAnimationClicked(result) }
+                )
+            }
+        }
+        if (state.fetchException) {
+            FloatingActionButton(
+                onClick = fetchNextPage,
+                icon = {
+                    Icon(Icons.Filled.Repeat, tint = Color.White)
+                },
+                modifier = Modifier
+                    .align(Alignment.BottomCenter)
+                    .padding(bottom = 24.dp)
+            )
+        }
+    }
+}
+
+@Preview
+@Composable
+fun previewSearchPage() {
+    val data = AnimationDataV2(0, null, "https://assets9.lottiefiles.com/render/k1821vf5.png", "Loading", "")
+    val state = LottieFilesSearchState(
+        results = listOf(data, data, data),
+        fetchException = true
+    )
+    Surface(color = Color.White) {
+        LottieFilesSearchPage(
+            state = state,
+            setQuery = {},
+            fetchNextPage = {},
+            onAnimationClicked = {}
+        )
+    }
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/player/PlayerPage.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/player/PlayerPage.kt
new file mode 100644
index 0000000..270cde5
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/player/PlayerPage.kt
@@ -0,0 +1,424 @@
+package com.airbnb.lottie.sample.compose.player
+
+import android.os.Parcelable
+import androidx.activity.OnBackPressedDispatcher
+import androidx.compose.foundation.Icon
+import androidx.compose.foundation.ScrollableColumn
+import androidx.compose.foundation.ScrollableRow
+import androidx.compose.foundation.Text
+import androidx.compose.foundation.background
+import androidx.compose.foundation.border
+import androidx.compose.foundation.clickable
+import androidx.compose.foundation.layout.*
+import androidx.compose.foundation.shape.CircleShape
+import androidx.compose.foundation.shape.RoundedCornerShape
+import androidx.compose.material.*
+import androidx.compose.material.icons.Icons
+import androidx.compose.material.icons.filled.*
+import androidx.compose.runtime.*
+import androidx.compose.ui.Alignment
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.draw.clip
+import androidx.compose.ui.graphics.Color
+import androidx.compose.ui.res.colorResource
+import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.text.TextStyle
+import androidx.compose.ui.text.style.TextAlign
+import androidx.compose.ui.unit.dp
+import androidx.compose.ui.unit.sp
+import androidx.compose.ui.window.Dialog
+import androidx.ui.tooling.preview.Preview
+import com.airbnb.lottie.LottieComposition
+import com.airbnb.lottie.compose.*
+import com.airbnb.lottie.sample.compose.BackPressedDispatcherAmbient
+import com.airbnb.lottie.sample.compose.ComposeFragment
+import com.airbnb.lottie.sample.compose.R
+import com.airbnb.lottie.sample.compose.composables.DebouncedCircularProgressIndicator
+import com.airbnb.lottie.sample.compose.composables.SeekBar
+import com.airbnb.lottie.sample.compose.ui.Teal
+import com.airbnb.lottie.sample.compose.ui.toColorSafe
+import com.airbnb.lottie.sample.compose.utils.drawTopBorder
+import com.airbnb.lottie.sample.compose.utils.maybeBackground
+import com.airbnb.lottie.sample.compose.utils.maybeDrawBorder
+import com.airbnb.lottie.sample.compose.utils.quantityStringResource
+import com.airbnb.mvrx.args
+import kotlinx.android.parcel.Parcelize
+import kotlin.math.ceil
+import kotlin.math.roundToInt
+
+class PlayerFragment : ComposeFragment() {
+    private val args: Args by args()
+
+    @Composable
+    override fun root() {
+        val spec = when (val a = args) {
+            is Args.Url -> LottieAnimationSpec.Url(a.url)
+            is Args.File -> LottieAnimationSpec.File(a.fileName)
+            is Args.Asset -> LottieAnimationSpec.Asset(a.assetName)
+        }
+        val backgroundColor = when (val a = args) {
+            is Args.Url -> a.backgroundColorStr?.toColorSafe()
+            else -> null
+        }
+
+        PlayerPage(spec, backgroundColor)
+    }
+
+    sealed class Args : Parcelable {
+        /** colorStr is the value from the LottieFiles API. */
+        @Parcelize
+        class Url(val url: String, val backgroundColorStr: String? = null) : Args()
+
+        @Parcelize
+        class File(val fileName: String) : Args()
+
+        @Parcelize
+        class Asset(val assetName: String) : Args()
+    }
+}
+
+@Composable
+private fun PlayerPage(
+    spec: LottieAnimationSpec,
+    animationBackgroundColor: Color? = null,
+) {
+    val backPressedDispatcher = BackPressedDispatcherAmbient.current
+    val compositionResult = rememberLottieComposition(spec)
+    val animationState = rememberLottieAnimationState(autoPlay = true, repeatCount = Integer.MAX_VALUE)
+    val scaffoldState = rememberScaffoldState()
+    var focusMode by remember { mutableStateOf(false) }
+    var backgroundColor by remember { mutableStateOf(animationBackgroundColor) }
+
+    val borderToolbar = remember { mutableStateOf(false) }
+    val speedToolbar = remember { mutableStateOf(false) }
+    val backgroundColorToolbar = remember { mutableStateOf(false) }
+
+    val failedMessage = stringResource(R.string.failed_to_load)
+    val okMessage = stringResource(R.string.ok)
+
+    LaunchedTask(compositionResult) {
+        if (compositionResult is LottieCompositionResult.Fail) {
+            scaffoldState.snackbarHostState.showSnackbar(
+                message = failedMessage,
+                actionLabel = okMessage,
+            )
+        }
+    }
+
+    Scaffold(
+        scaffoldState = scaffoldState,
+        topBar = {
+            TopAppBar(
+                title = {},
+                backgroundColor = Color.Transparent,
+                elevation = 0.dp,
+                navigationIcon = {
+                    IconButton(
+                        onClick = { backPressedDispatcher.onBackPressed() },
+                    ) {
+                        Icon(Icons.Default.Close)
+                    }
+                },
+                actions = {
+                    IconButton(
+                        onClick = { focusMode = !focusMode },
+                    ) {
+                        Icon(
+                            Icons.Filled.RemoveRedEye,
+                            tint = if (focusMode) Teal else Color.Black,
+                        )
+                    }
+                }
+            )
+        },
+    ) {
+        Column(
+            verticalArrangement = Arrangement.SpaceBetween,
+            modifier = Modifier.fillMaxHeight()
+        ) {
+            Box(
+                alignment = Alignment.Center,
+                modifier = Modifier
+                    .weight(1f)
+                    .maybeBackground(backgroundColor)
+                    .fillMaxWidth()
+            ) {
+                LottieAnimation(
+                    compositionResult(),
+                    animationState,
+                    modifier = Modifier
+                        .fillMaxSize()
+                        .align(Alignment.Center)
+                        .maybeDrawBorder(borderToolbar.value)
+                )
+                if (compositionResult is LottieCompositionResult.Loading) {
+                    DebouncedCircularProgressIndicator(
+                        color = Teal,
+                        modifier = Modifier
+                            .preferredSize(48.dp)
+                    )
+                }
+            }
+            if (speedToolbar.value && !focusMode) {
+                SpeedToolbar(
+                    speed = animationState.speed,
+                    onSpeedChanged = { animationState.speed = it }
+                )
+            }
+            if (backgroundColorToolbar.value && !focusMode) {
+                BackgroundColorToolbar(
+                    animationBackgroundColor = animationBackgroundColor,
+                    onColorChanged = { backgroundColor = it }
+                )
+            }
+            if (!focusMode) {
+                PlayerControlsRow(animationState, compositionResult())
+                Toolbar(
+                    border = borderToolbar,
+                    speed = speedToolbar,
+                    backgroundColor = backgroundColorToolbar,
+                    warnings = compositionResult()?.warnings ?: emptyList()
+                )
+            }
+        }
+    }
+}
+
+@Composable
+private fun PlayerControlsRow(
+    animationState: LottieAnimationState,
+    composition: LottieComposition?,
+) {
+    val totalTime = ((composition?.duration ?: 0L / animationState.speed) / 1000.0)
+    val totalTimeFormatted = ("%.1f").format(totalTime)
+
+    val progress = (totalTime / 100.0) * ((animationState.progress * 100.0).roundToInt())
+    val progressFormatted = ("%.1f").format(progress)
+
+    Row(
+        verticalAlignment = Alignment.CenterVertically,
+        modifier = Modifier
+            .drawTopBorder()
+    ) {
+        Box(
+            alignment = Alignment.Center
+        ) {
+            IconButton(
+                onClick = { animationState.toggleIsPlaying() },
+            ) {
+                Icon(if (animationState.isPlaying) Icons.Filled.Pause else Icons.Filled.PlayArrow)
+            }
+            Text(
+                "${animationState.frame}/${ceil(composition?.durationFrames ?: 0f).toInt()}\n${progressFormatted}/$totalTimeFormatted",
+                style = TextStyle(fontSize = 8.sp),
+                textAlign = TextAlign.Center,
+                modifier = Modifier
+                    .padding(top = 48.dp, bottom = 8.dp)
+            )
+        }
+        SeekBar(
+            progress = animationState.progress,
+            onProgressChanged = {
+                animationState.progress = it
+            },
+            modifier = Modifier.weight(1f)
+        )
+        IconButton(onClick = {
+            val repeatCount = if (animationState.repeatCount == Integer.MAX_VALUE) 0 else Integer.MAX_VALUE
+            animationState.repeatCount = repeatCount
+        }) {
+            Icon(
+                Icons.Filled.Repeat,
+                tint = if (animationState.repeatCount > 0) Teal else Color.Black,
+            )
+        }
+    }
+}
+
+@Composable
+private fun SpeedToolbar(
+    speed: Float,
+    onSpeedChanged: (Float) -> Unit,
+) {
+    Row(
+        horizontalArrangement = Arrangement.SpaceBetween,
+        modifier = Modifier
+            .drawTopBorder()
+            .padding(vertical = 12.dp, horizontal = 16.dp)
+            .fillMaxWidth()
+    ) {
+        ToolbarChip(
+            label = "0.5x",
+            isActivated = speed == 0.5f,
+            onClick = { onSpeedChanged(0.5f) },
+            modifier = Modifier.padding(end = 8.dp)
+        )
+        ToolbarChip(
+            label = "1x",
+            isActivated = speed == 1f,
+            onClick = { onSpeedChanged(1f) },
+            modifier = Modifier.padding(end = 8.dp)
+        )
+        ToolbarChip(
+            label = "1.5x",
+            isActivated = speed == 1.5f,
+            onClick = { onSpeedChanged(1.5f) },
+            modifier = Modifier.padding(end = 8.dp)
+        )
+        ToolbarChip(
+            label = "2x",
+            isActivated = speed == 2f,
+            onClick = { onSpeedChanged(2f) },
+            modifier = Modifier.padding(end = 8.dp)
+        )
+    }
+}
+
+@Composable
+private fun BackgroundColorToolbar(
+    animationBackgroundColor: Color?,
+    onColorChanged: (Color) -> Unit,
+) {
+    Row(
+        horizontalArrangement = Arrangement.SpaceBetween,
+        modifier = Modifier
+            .drawTopBorder()
+            .padding(vertical = 12.dp, horizontal = 16.dp)
+            .fillMaxWidth()
+    ) {
+        listOfNotNull(
+            colorResource(R.color.background_color1),
+            colorResource(R.color.background_color2),
+            colorResource(R.color.background_color3),
+            colorResource(R.color.background_color4),
+            colorResource(R.color.background_color5),
+            colorResource(R.color.background_color6),
+            animationBackgroundColor.takeIf { it != Color.White },
+        ).forEachIndexed { i, color ->
+            val strokeColor = if (i == 0) colorResource(R.color.background_color1_stroke) else color
+            BackgroundToolbarItem(
+                color = color,
+                strokeColor = strokeColor,
+                onClick = { onColorChanged(color) }
+            )
+        }
+    }
+}
+
+@Composable
+private fun BackgroundToolbarItem(
+    color: Color,
+    strokeColor: Color = color,
+    onClick: () -> Unit,
+) {
+    Box(
+        modifier = Modifier
+            .clip(CircleShape)
+            .background(color)
+            .clickable(onClick = onClick)
+            .preferredSize(24.dp)
+            .border(1.dp, strokeColor, shape = CircleShape)
+    )
+}
+
+@Composable
+private fun Toolbar(
+    border: MutableState<Boolean>,
+    speed: MutableState<Boolean>,
+    backgroundColor: MutableState<Boolean>,
+    warnings: List<String>,
+) {
+    var showWarningsDialog by remember { mutableStateOf(false) }
+
+    if (showWarningsDialog) {
+        WarningDialog(warnings = warnings, onDismiss = { showWarningsDialog = false })
+    }
+
+    ScrollableRow(
+        contentPadding = PaddingValues(start = 16.dp, top = 12.dp, end = 16.dp, bottom = 12.dp),
+        modifier = Modifier
+            .drawTopBorder()
+            .fillMaxWidth()
+    ) {
+        if (warnings.isNotEmpty()) {
+            ToolbarChip(
+                iconRes = R.drawable.ic_warning,
+                label = quantityStringResource(R.plurals.toolbar_item_warning, warnings.size, warnings.size),
+                isActivated = true,
+                onClick = { showWarningsDialog = true },
+                modifier = Modifier.padding(end = 8.dp)
+            )
+        }
+        ToolbarChip(
+            iconRes = R.drawable.ic_border,
+            label = stringResource(R.string.toolbar_item_border),
+            isActivated = border.value,
+            onClick = { border.value = it },
+            modifier = Modifier.padding(end = 8.dp)
+        )
+        ToolbarChip(
+            iconRes = R.drawable.ic_speed,
+            label = stringResource(R.string.toolbar_item_speed),
+            isActivated = speed.value,
+            onClick = { speed.value = it },
+            modifier = Modifier.padding(end = 8.dp)
+        )
+        ToolbarChip(
+            iconRes = R.drawable.ic_color,
+            label = stringResource(R.string.toolbar_item_color),
+            isActivated = backgroundColor.value,
+            onClick = { backgroundColor.value = it },
+            modifier = Modifier.padding(end = 8.dp)
+        )
+    }
+}
+
+@Composable
+fun WarningDialog(
+    warnings: List<String>,
+    onDismiss: () -> Unit,
+) {
+    Dialog(onDismissRequest = onDismiss) {
+        Surface(
+            shape = RoundedCornerShape(4.dp),
+            modifier = Modifier
+                .preferredWidth(400.dp)
+                .heightIn(min = 32.dp, max = 500.dp)
+        ) {
+            Box(
+                alignment = Alignment.TopCenter,
+                modifier = Modifier
+            ) {
+                ScrollableColumn {
+                    warnings.forEachIndexed { i, warning ->
+                        Text(
+                            warning,
+                            fontSize = 8.sp,
+                            textAlign = TextAlign.Left,
+                            modifier = Modifier
+                                .fillMaxWidth()
+                                .run { if (i != 0) drawTopBorder() else this }
+                                .padding(vertical = 12.dp, horizontal = 16.dp)
+                        )
+                    }
+                }
+            }
+        }
+    }
+}
+
+@Preview
+@Composable
+fun SpeedToolbarPreview() {
+    SpeedToolbar(speed = 1f, onSpeedChanged = {})
+}
+
+@Preview(name = "Player")
+@Composable
+fun PlayerPagePreview() {
+    Providers(
+        BackPressedDispatcherAmbient provides OnBackPressedDispatcher()
+    ) {
+        PlayerPage(LottieAnimationSpec.Url("https://lottiefiles.com/download/public/32922"))
+    }
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/player/PlayerViewModel.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/player/PlayerViewModel.kt
new file mode 100644
index 0000000..1097404
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/player/PlayerViewModel.kt
@@ -0,0 +1,17 @@
+package com.airbnb.lottie.sample.compose.player
+
+import android.app.Application
+import androidx.lifecycle.AndroidViewModel
+import com.airbnb.lottie.sample.compose.api.LottieFilesApi
+import retrofit2.Retrofit
+import retrofit2.converter.moshi.MoshiConverterFactory
+import retrofit2.create
+
+class PlayerViewModel(application: Application) : AndroidViewModel(application) {
+    private val retrofit = Retrofit.Builder()
+        .baseUrl("https://api.lottiefiles.com/")
+        .addConverterFactory(MoshiConverterFactory.create())
+        .build()
+
+    val api = retrofit.create<LottieFilesApi>()
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/player/ToolbarChip.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/player/ToolbarChip.kt
new file mode 100644
index 0000000..8b302e3
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/player/ToolbarChip.kt
@@ -0,0 +1,75 @@
+package com.airbnb.lottie.sample.compose.player
+
+import androidx.annotation.DrawableRes
+import androidx.compose.foundation.Icon
+import androidx.compose.foundation.Text
+import androidx.compose.foundation.clickable
+import androidx.compose.foundation.layout.*
+import androidx.compose.foundation.shape.RoundedCornerShape
+import androidx.compose.material.Surface
+import androidx.compose.runtime.Composable
+import androidx.compose.runtime.remember
+import androidx.compose.ui.Alignment
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.draw.clipToBounds
+import androidx.compose.ui.graphics.Color
+import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.res.vectorResource
+import androidx.compose.ui.text.TextStyle
+import androidx.compose.ui.unit.dp
+import androidx.compose.ui.unit.sp
+import androidx.ui.tooling.preview.Preview
+import com.airbnb.lottie.sample.compose.R
+import com.airbnb.lottie.sample.compose.ui.Teal
+
+
+@Composable
+fun ToolbarChip(
+    @DrawableRes iconRes: Int = 0,
+    label: String,
+    isActivated: Boolean,
+    onClick: (isActivated: Boolean) -> Unit,
+    modifier: Modifier = Modifier,
+) {
+    val unActivatedColor = remember { Color(0xFF444444) }
+    Surface(
+        shape = RoundedCornerShape(3.dp),
+        color = if (isActivated) Teal else Color(0xFFEAEAEA),
+        modifier = Modifier
+            .then(modifier)
+            .clickable(onClick = { onClick(!isActivated) })
+            .clipToBounds()
+    ) {
+        Row(
+            verticalAlignment = Alignment.CenterVertically,
+            modifier = Modifier
+                .padding(horizontal = 8.dp, vertical = 4.dp)
+        ) {
+            if (iconRes != 0) {
+                Icon(
+                    vectorResource(iconRes),
+                    tint = if (isActivated) Color.White else unActivatedColor,
+                    modifier = Modifier
+                        .preferredSize(12.dp)
+                )
+                Spacer(modifier = Modifier.preferredWidth(6.dp))
+            }
+            Text(
+                label,
+                color = if (isActivated) Color.White else unActivatedColor,
+                style = TextStyle(fontSize = 12.sp)
+            )
+        }
+    }
+}
+
+@Preview
+@Composable
+fun PreviewToolbarChip() {
+    ToolbarChip(
+        iconRes = R.drawable.ic_border,
+        label = stringResource(R.string.toolbar_item_border),
+        isActivated = false,
+        onClick = {}
+    )
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/preview/PreviewPage.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/preview/PreviewPage.kt
new file mode 100644
index 0000000..2001563
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/preview/PreviewPage.kt
@@ -0,0 +1,145 @@
+package com.airbnb.lottie.sample.compose.preview
+
+import androidx.annotation.DrawableRes
+import androidx.annotation.StringRes
+import androidx.compose.foundation.Icon
+import androidx.compose.foundation.Text
+import androidx.compose.foundation.background
+import androidx.compose.foundation.clickable
+import androidx.compose.foundation.layout.*
+import androidx.compose.foundation.shape.RoundedCornerShape
+import androidx.compose.material.Divider
+import androidx.compose.material.Surface
+import androidx.compose.runtime.*
+import androidx.compose.ui.Alignment
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.graphics.Color
+import androidx.compose.ui.platform.ContextAmbient
+import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.res.vectorResource
+import androidx.compose.ui.unit.dp
+import androidx.compose.ui.window.Dialog
+import androidx.ui.tooling.preview.Preview
+import com.airbnb.lottie.sample.compose.ComposeFragment
+import com.airbnb.lottie.sample.compose.R
+import com.airbnb.lottie.sample.compose.composables.Marquee
+import com.airbnb.lottie.sample.compose.player.PlayerFragment
+import com.airbnb.lottie.sample.compose.ui.LottieTheme
+import com.airbnb.lottie.sample.compose.utils.findNavController
+import com.airbnb.mvrx.asMavericksArgs
+
+class PreviewFragment : ComposeFragment() {
+    @Composable
+    override fun root() {
+        PreviewPage()
+    }
+}
+
+@Composable
+fun PreviewPage() {
+    var showingAssetsDialog by remember { mutableStateOf(false) }
+    val navController = findNavController()
+
+    Column {
+        Marquee(stringResource(R.string.tab_preview))
+        PreviewRow(R.drawable.ic_qr_scan, R.string.scan_qr_code) {
+
+        }
+        PreviewRow(R.drawable.ic_file, R.string.open_file) {
+
+        }
+        PreviewRow(R.drawable.ic_network, R.string.enter_url) {
+
+        }
+        PreviewRow(R.drawable.ic_storage, R.string.load_from_assets) {
+            showingAssetsDialog = true
+        }
+    }
+
+    AssetsDialog(
+        showingAssetsDialog,
+        onDismiss = { showingAssetsDialog = false },
+        onAssetSelected = { assetName ->
+            val args = PlayerFragment.Args.Asset(assetName)
+            navController.navigate(R.id.player, args.asMavericksArgs())
+        }
+    )
+}
+
+@Composable
+private fun PreviewRow(
+    @DrawableRes iconRes: Int,
+    @StringRes textRes: Int,
+    onClick: () -> Unit
+) {
+    Surface(
+        modifier = Modifier.clickable(onClick = onClick)
+    ) {
+        Column {
+            Row(
+                modifier = Modifier
+                    .preferredHeight(48.dp)
+            ) {
+                Icon(
+                    vectorResource(iconRes),
+                    modifier = Modifier
+                        .align(Alignment.CenterVertically)
+                        .padding(16.dp)
+                )
+                Text(
+                    stringResource(textRes),
+                    modifier = Modifier
+                        .align(Alignment.CenterVertically)
+                )
+            }
+            Divider(color = Color.LightGray)
+        }
+    }
+}
+
+@Composable
+fun AssetsDialog(isShowing: Boolean, onDismiss: () -> Unit, onAssetSelected: (assetName: String) -> Unit) {
+    if (!isShowing) return
+    val context = ContextAmbient.current
+    val assets = context.assets.list("")
+        ?.asSequence()
+        ?.filter { it.endsWith(".json") || it.endsWith(".zip") }
+        ?.toList()
+        ?: emptyList()
+    Dialog(onDismissRequest = onDismiss) {
+        Surface(
+            shape = RoundedCornerShape(4.dp)
+        ) {
+            Column {
+                assets.forEach { asset ->
+                    AssetRow(asset, onClick = {
+                        onDismiss()
+                        onAssetSelected(asset)
+                    })
+                }
+            }
+        }
+    }
+}
+
+@Composable
+private fun AssetRow(name: String, onClick: () -> Unit) {
+    Surface(
+        modifier = Modifier
+            .clickable(onClick = onClick)
+            .fillMaxWidth()
+            .padding(vertical = 12.dp)
+    ) {
+        Text(name)
+    }
+}
+
+@Preview
+@Composable
+fun PreviewPagePreview() {
+    LottieTheme {
+        Box(modifier = Modifier.background(Color.White)) {
+            PreviewPage()
+        }
+    }
+}
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/showcase/ShowcasePage.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/showcase/ShowcasePage.kt
new file mode 100644
index 0000000..35c7cd2
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/showcase/ShowcasePage.kt
@@ -0,0 +1,71 @@
+package com.airbnb.lottie.sample.compose.showcase
+
+import androidx.compose.foundation.ScrollableColumn
+import androidx.compose.foundation.layout.Box
+import androidx.compose.foundation.layout.fillMaxSize
+import androidx.compose.foundation.rememberScrollState
+import androidx.compose.material.Divider
+import androidx.compose.runtime.Composable
+import androidx.compose.ui.Alignment
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.graphics.Color
+import androidx.ui.tooling.preview.Preview
+import com.airbnb.lottie.sample.compose.ComposeFragment
+import com.airbnb.lottie.sample.compose.R
+import com.airbnb.lottie.sample.compose.composables.AnimationRow
+import com.airbnb.lottie.sample.compose.composables.Loader
+import com.airbnb.lottie.sample.compose.composables.Marquee
+import com.airbnb.lottie.sample.compose.player.PlayerFragment
+import com.airbnb.lottie.sample.compose.ui.LottieTheme
+import com.airbnb.lottie.sample.compose.utils.findNavController
+import com.airbnb.lottie.sample.compose.utils.mavericksViewModelAndState
+import com.airbnb.mvrx.Loading
+import com.airbnb.mvrx.Uninitialized
+import com.airbnb.mvrx.asMavericksArgs
+
+class ShowcaseFragment : ComposeFragment() {
+    @Composable
+    override fun root() {
+        ShowcasePage()
+    }
+}
+
+
+@Composable
+fun ShowcasePage() {
+    val (_, showcaseState) = mavericksViewModelAndState<ShowcaseViewModel, ShowcaseState>()
+    val featuredAnimations = showcaseState.animations
+    val scrollState = rememberScrollState()
+    val navController = findNavController()
+    Box(
+        modifier = Modifier.fillMaxSize()
+    ) {
+        ScrollableColumn(
+            scrollState = scrollState
+        ) {
+            Marquee("Showcase")
+            featuredAnimations()?.data?.forEach { data ->
+                AnimationRow(
+                    title = data.title,
+                    previewUrl = data.preview_url ?: "",
+                    previewBackgroundColor = data.bgColor,
+                ) {
+                    val args = PlayerFragment.Args.Url(data.file, backgroundColorStr = data.bg_color)
+                    navController.navigate(R.id.player, args.asMavericksArgs())
+                }
+                Divider(color = Color.LightGray)
+            }
+        }
+        if (featuredAnimations is Uninitialized || featuredAnimations is Loading) {
+            Loader(modifier = Modifier.align(Alignment.Center))
+        }
+    }
+}
+
+@Preview(showBackground = true)
+@Composable
+fun DefaultPreview() {
+    LottieTheme {
+        ShowcasePage()
+    }
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/showcase/ShowcaseViewModel.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/showcase/ShowcaseViewModel.kt
new file mode 100644
index 0000000..aea98d0
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/showcase/ShowcaseViewModel.kt
@@ -0,0 +1,39 @@
+package com.airbnb.lottie.sample.compose.showcase
+
+import com.airbnb.lottie.sample.compose.api.AnimationsResponseV2
+import com.airbnb.lottie.sample.compose.api.LottieFilesApi
+import com.airbnb.lottie.sample.compose.dagger.AssistedViewModelFactory
+import com.airbnb.lottie.sample.compose.dagger.DaggerMvRxViewModelFactory
+import com.airbnb.mvrx.*
+import com.squareup.inject.assisted.Assisted
+import com.squareup.inject.assisted.AssistedInject
+import kotlinx.coroutines.Dispatchers
+
+data class ShowcaseState(
+    val animations: Async<AnimationsResponseV2> = Uninitialized
+) : MavericksState
+
+class ShowcaseViewModel @AssistedInject constructor(
+    @Assisted initialState: ShowcaseState,
+    private var api: LottieFilesApi
+) : MavericksViewModel<ShowcaseState>(initialState) {
+
+    init {
+        fetchFeatured()
+    }
+
+    private fun fetchFeatured() {
+        suspend {
+            api.getFeatured()
+        }.execute(Dispatchers.IO) {
+            copy(animations = it)
+        }
+    }
+
+    @AssistedInject.Factory
+    interface Factory : AssistedViewModelFactory<ShowcaseViewModel, ShowcaseState> {
+        override fun create(initialState: ShowcaseState): ShowcaseViewModel
+    }
+
+    companion object : DaggerMvRxViewModelFactory<ShowcaseViewModel, ShowcaseState>(ShowcaseViewModel::class.java)
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ui/Color.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ui/Color.kt
new file mode 100644
index 0000000..f535838
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ui/Color.kt
@@ -0,0 +1,41 @@
+package com.airbnb.lottie.sample.compose.ui
+
+import android.util.Log
+import androidx.annotation.ColorInt
+import androidx.compose.ui.graphics.Color
+import androidx.core.graphics.toColorInt
+import com.airbnb.lottie.L
+
+val purple200 = Color(0xFFBB86FC)
+val TealDark = Color(0xFF484848)
+val Teal = Color(0xFF009587)
+
+val bottomBarBackground = Color(0xFFF7F7F7)
+
+@ColorInt
+fun String?.toColorSafe(): Color {
+    var bgColor = this ?: "#ffffff"
+    bgColor = if (bgColor.startsWith("#")) bgColor else "#$bgColor"
+
+    val colorInt = try {
+        when (bgColor.length) {
+            0 -> "#ffffff"
+            4 -> "#%c%c%c%c%c%c".format(
+                bgColor[1], bgColor[1],
+                bgColor[2], bgColor[2],
+                bgColor[3], bgColor[3]
+            )
+            5 -> "#%c%c%c%c%c%c%c%c".format(
+                bgColor[1], bgColor[1],
+                bgColor[2], bgColor[2],
+                bgColor[3], bgColor[3],
+                bgColor[4], bgColor[4]
+            )
+            else -> bgColor
+        }.toColorInt()
+    } catch (e: IllegalArgumentException) {
+        Log.w(L.TAG, "Unable to parse $bgColor.")
+        android.graphics.Color.WHITE
+    }
+    return Color(colorInt)
+}
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ui/Shape.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ui/Shape.kt
new file mode 100644
index 0000000..72291c5
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ui/Shape.kt
@@ -0,0 +1,11 @@
+package com.airbnb.lottie.sample.compose.ui
+
+import androidx.compose.foundation.shape.RoundedCornerShape
+import androidx.compose.material.Shapes
+import androidx.compose.ui.unit.dp
+
+val shapes = Shapes(
+        small = RoundedCornerShape(4.dp),
+        medium = RoundedCornerShape(4.dp),
+        large = RoundedCornerShape(0.dp)
+)
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ui/Theme.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ui/Theme.kt
new file mode 100644
index 0000000..b6a202b
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ui/Theme.kt
@@ -0,0 +1,23 @@
+package com.airbnb.lottie.sample.compose.ui
+
+import androidx.compose.foundation.isSystemInDarkTheme
+import androidx.compose.material.MaterialTheme
+import androidx.compose.material.darkColors
+import androidx.compose.material.lightColors
+import androidx.compose.runtime.Composable
+
+private val ColorPalette = lightColors(
+        primary = Teal,
+        primaryVariant = TealDark,
+        secondary = purple200
+)
+
+@Composable
+fun LottieTheme(content: @Composable () -> Unit) {
+    MaterialTheme(
+            colors = ColorPalette,
+            typography = typography,
+            shapes = shapes,
+            content = content
+    )
+}
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ui/Type.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ui/Type.kt
new file mode 100644
index 0000000..1ce10c2
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/ui/Type.kt
@@ -0,0 +1,16 @@
+package com.airbnb.lottie.sample.compose.ui
+
+import androidx.compose.material.Typography
+import androidx.compose.ui.text.TextStyle
+import androidx.compose.ui.text.font.FontFamily
+import androidx.compose.ui.text.font.FontWeight
+import androidx.compose.ui.unit.sp
+
+// Set of Material typography styles to start with
+val typography = Typography(
+        body1 = TextStyle(
+                fontFamily = FontFamily.Default,
+                fontWeight = FontWeight.Normal,
+                fontSize = 16.sp
+        )
+)
\ No newline at end of file
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/utils/ComposeExtensions.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/utils/ComposeExtensions.kt
new file mode 100644
index 0000000..0779495
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/utils/ComposeExtensions.kt
@@ -0,0 +1,44 @@
+package com.airbnb.lottie.sample.compose.utils
+
+import androidx.annotation.PluralsRes
+import androidx.compose.foundation.background
+import androidx.compose.foundation.border
+import androidx.compose.runtime.Composable
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.drawBehind
+import androidx.compose.ui.geometry.Offset
+import androidx.compose.ui.geometry.Size
+import androidx.compose.ui.graphics.Color
+import androidx.compose.ui.platform.ContextAmbient
+import androidx.compose.ui.unit.Dp
+import androidx.compose.ui.unit.dp
+
+@Composable
+fun quantityStringResource(@PluralsRes id: Int, quantity: Int, vararg formatArgs: Any): String {
+    val context = ContextAmbient.current
+    return context.resources.getQuantityString(id, quantity, *formatArgs)
+}
+
+
+fun Modifier.maybeBackground(color: Color?): Modifier {
+    return if (color == null) {
+        this
+    } else {
+        this.then(background(color))
+    }
+}
+
+
+fun Modifier.drawTopBorder(color: Color = Color.DarkGray) = this.then(drawBehind {
+    drawRect(color, Offset.Zero, size = Size(size.width, 1f))
+})
+
+
+fun Modifier.maybeDrawBorder(draw: Boolean, color: Color = Color.Black, width: Dp = 1.dp): Modifier {
+    return if (draw) {
+        this.then(border(width, color))
+    } else {
+        this
+    }
+}
+
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/utils/MavericksExtensions.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/utils/MavericksExtensions.kt
new file mode 100644
index 0000000..13979d5
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/utils/MavericksExtensions.kt
@@ -0,0 +1,26 @@
+package com.airbnb.lottie.sample.compose.utils
+
+
+import android.annotation.SuppressLint
+import androidx.compose.runtime.Composable
+import androidx.compose.runtime.collectAsState
+import androidx.compose.runtime.getValue
+import androidx.compose.ui.platform.ContextAmbient
+import androidx.fragment.app.FragmentActivity
+import com.airbnb.mvrx.*
+
+@Composable
+inline fun <reified VM : MavericksViewModel<S>, reified S : MavericksState> mavericksViewModelAndState(): Pair<VM, S> {
+    val viewModelClass = VM::class
+    val activity = ContextAmbient.current as? FragmentActivity ?: error("Composable is not hosted in a FragmentActivity")
+    val keyFactory = { viewModelClass.java.name }
+    @SuppressLint("RestrictedApi")
+    val viewModel = MavericksViewModelProvider.get(
+        viewModelClass = viewModelClass.java,
+        stateClass = S::class.java,
+        viewModelContext = ActivityViewModelContext(activity, activity.intent.extras?.get(Mavericks.KEY_ARG)),
+        key = keyFactory()
+    )
+    val state by viewModel.stateFlow.collectAsState(initial = withState(viewModel) { it })
+    return viewModel to state
+}
diff --git a/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/utils/NavigationExtensions.kt b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/utils/NavigationExtensions.kt
new file mode 100644
index 0000000..3c4dbcc
--- /dev/null
+++ b/sample-compose/src/main/java/com/airbnb/lottie/sample/compose/utils/NavigationExtensions.kt
@@ -0,0 +1,10 @@
+package com.airbnb.lottie.sample.compose.utils
+
+import androidx.compose.runtime.Composable
+import androidx.compose.runtime.staticAmbientOf
+import androidx.navigation.NavController
+
+val NavControllerAmbient = staticAmbientOf<NavController> { error("You must specify a NavController.") }
+
+@Composable
+fun findNavController() = NavControllerAmbient.current
diff --git a/sample-compose/src/main/res/drawable-v24/ic_launcher_foreground.xml b/sample-compose/src/main/res/drawable-v24/ic_launcher_foreground.xml
new file mode 100644
index 0000000..fde1368
--- /dev/null
+++ b/sample-compose/src/main/res/drawable-v24/ic_launcher_foreground.xml
@@ -0,0 +1,30 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:aapt="http://schemas.android.com/aapt"
+    android:width="108dp"
+    android:height="108dp"
+    android:viewportHeight="108"
+    android:viewportWidth="108">
+    <path android:pathData="M31,63.928c0,0 6.4,-11 12.1,-13.1c7.2,-2.6 26,-1.4 26,-1.4l38.1,38.1L107,108.928l-32,-1L31,63.928z">
+        <aapt:attr name="android:fillColor">
+            <gradient
+                android:endX="85.84757"
+                android:endY="92.4963"
+                android:startX="42.9492"
+                android:startY="49.59793"
+                android:type="linear">
+                <item
+                    android:color="#44000000"
+                    android:offset="0.0" />
+                <item
+                    android:color="#00000000"
+                    android:offset="1.0" />
+            </gradient>
+        </aapt:attr>
+    </path>
+    <path
+        android:fillColor="#FFFFFF"
+        android:fillType="nonZero"
+        android:pathData="M65.3,45.828l3.8,-6.6c0.2,-0.4 0.1,-0.9 -0.3,-1.1c-0.4,-0.2 -0.9,-0.1 -1.1,0.3l-3.9,6.7c-6.3,-2.8 -13.4,-2.8 -19.7,0l-3.9,-6.7c-0.2,-0.4 -0.7,-0.5 -1.1,-0.3C38.8,38.328 38.7,38.828 38.9,39.228l3.8,6.6C36.2,49.428 31.7,56.028 31,63.928h46C76.3,56.028 71.8,49.428 65.3,45.828zM43.4,57.328c-0.8,0 -1.5,-0.5 -1.8,-1.2c-0.3,-0.7 -0.1,-1.5 0.4,-2.1c0.5,-0.5 1.4,-0.7 2.1,-0.4c0.7,0.3 1.2,1 1.2,1.8C45.3,56.528 44.5,57.328 43.4,57.328L43.4,57.328zM64.6,57.328c-0.8,0 -1.5,-0.5 -1.8,-1.2s-0.1,-1.5 0.4,-2.1c0.5,-0.5 1.4,-0.7 2.1,-0.4c0.7,0.3 1.2,1 1.2,1.8C66.5,56.528 65.6,57.328 64.6,57.328L64.6,57.328z"
+        android:strokeColor="#00000000"
+        android:strokeWidth="1" />
+</vector>
\ No newline at end of file
diff --git a/sample-compose/src/main/res/drawable/ic_border.xml b/sample-compose/src/main/res/drawable/ic_border.xml
new file mode 100644
index 0000000..c7d0e84
--- /dev/null
+++ b/sample-compose/src/main/res/drawable/ic_border.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24.0"
+    android:viewportHeight="24.0">
+    <path
+        android:fillColor="#FF000000"
+        android:pathData="M13,7h-2v2h2L13,7zM13,11h-2v2h2v-2zM17,11h-2v2h2v-2zM3,3v18h18L21,3L3,3zM19,19L5,19L5,5h14v14zM13,15h-2v2h2v-2zM9,11L7,11v2h2v-2z"/>
+</vector>
diff --git a/sample-compose/src/main/res/drawable/ic_color.xml b/sample-compose/src/main/res/drawable/ic_color.xml
new file mode 100644
index 0000000..69dfd9a
--- /dev/null
+++ b/sample-compose/src/main/res/drawable/ic_color.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24.0"
+    android:viewportHeight="24.0">
+    <path
+        android:fillColor="#FF000000"
+        android:pathData="M12,3c-4.97,0 -9,4.03 -9,9s4.03,9 9,9c0.83,0 1.5,-0.67 1.5,-1.5 0,-0.39 -0.15,-0.74 -0.39,-1.01 -0.23,-0.26 -0.38,-0.61 -0.38,-0.99 0,-0.83 0.67,-1.5 1.5,-1.5L16,16c2.76,0 5,-2.24 5,-5 0,-4.42 -4.03,-8 -9,-8zM6.5,12c-0.83,0 -1.5,-0.67 -1.5,-1.5S5.67,9 6.5,9 8,9.67 8,10.5 7.33,12 6.5,12zM9.5,8C8.67,8 8,7.33 8,6.5S8.67,5 9.5,5s1.5,0.67 1.5,1.5S10.33,8 9.5,8zM14.5,8c-0.83,0 -1.5,-0.67 -1.5,-1.5S13.67,5 14.5,5s1.5,0.67 1.5,1.5S15.33,8 14.5,8zM17.5,12c-0.83,0 -1.5,-0.67 -1.5,-1.5S16.67,9 17.5,9s1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5z"/>
+</vector>
diff --git a/sample-compose/src/main/res/drawable/ic_device.xml b/sample-compose/src/main/res/drawable/ic_device.xml
new file mode 100644
index 0000000..d8bcbb4
--- /dev/null
+++ b/sample-compose/src/main/res/drawable/ic_device.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24.0"
+    android:viewportHeight="24.0">
+    <path
+        android:fillColor="#FF4C4C4C"
+        android:pathData="M17,1.01L7,1c-1.1,0 -1.99,0.9 -1.99,2v18c0,1.1 0.89,2 1.99,2h10c1.1,0 2,-0.9 2,-2V3c0,-1.1 -0.9,-1.99 -2,-1.99zM17,19H7V5h10v14z"/>
+</vector>
diff --git a/sample-compose/src/main/res/drawable/ic_file.xml b/sample-compose/src/main/res/drawable/ic_file.xml
new file mode 100644
index 0000000..f9ad72d
--- /dev/null
+++ b/sample-compose/src/main/res/drawable/ic_file.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="24dp"
+        android:height="24dp"
+        android:viewportWidth="24.0"
+        android:viewportHeight="24.0">
+    <path
+        android:fillColor="#FF000000"
+        android:pathData="M18,2h-8L4.02,8 4,20c0,1.1 0.9,2 2,2h12c1.1,0 2,-0.9 2,-2L20,4c0,-1.1 -0.9,-2 -2,-2zM12,8h-2L10,4h2v4zM15,8h-2L13,4h2v4zM18,8h-2L16,4h2v4z"/>
+</vector>
diff --git a/sample-compose/src/main/res/drawable/ic_launcher_background.xml b/sample-compose/src/main/res/drawable/ic_launcher_background.xml
new file mode 100644
index 0000000..1e4408c
--- /dev/null
+++ b/sample-compose/src/main/res/drawable/ic_launcher_background.xml
@@ -0,0 +1,170 @@
+<?xml version="1.0" encoding="utf-8"?>
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="108dp"
+    android:height="108dp"
+    android:viewportHeight="108"
+    android:viewportWidth="108">
+    <path
+        android:fillColor="#3DDC84"
+        android:pathData="M0,0h108v108h-108z" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M9,0L9,108"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M19,0L19,108"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M29,0L29,108"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M39,0L39,108"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M49,0L49,108"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M59,0L59,108"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M69,0L69,108"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M79,0L79,108"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M89,0L89,108"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M99,0L99,108"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,9L108,9"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,19L108,19"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,29L108,29"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,39L108,39"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,49L108,49"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,59L108,59"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,69L108,69"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,79L108,79"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,89L108,89"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M0,99L108,99"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M19,29L89,29"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M19,39L89,39"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M19,49L89,49"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M19,59L89,59"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M19,69L89,69"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M19,79L89,79"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M29,19L29,89"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M39,19L39,89"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M49,19L49,89"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M59,19L59,89"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M69,19L69,89"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+    <path
+        android:fillColor="#00000000"
+        android:pathData="M79,19L79,89"
+        android:strokeColor="#33FFFFFF"
+        android:strokeWidth="0.8" />
+</vector>
diff --git a/sample-compose/src/main/res/drawable/ic_learn.xml b/sample-compose/src/main/res/drawable/ic_learn.xml
new file mode 100644
index 0000000..bfebdd4
--- /dev/null
+++ b/sample-compose/src/main/res/drawable/ic_learn.xml
@@ -0,0 +1,10 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24"
+    android:tint="?attr/colorControlNormal">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM13,19h-2v-2h2v2zM15.07,11.25l-0.9,0.92C13.45,12.9 13,13.5 13,15h-2v-0.5c0,-1.1 0.45,-2.1 1.17,-2.83l1.24,-1.26c0.37,-0.36 0.59,-0.86 0.59,-1.41 0,-1.1 -0.9,-2 -2,-2s-2,0.9 -2,2L8,9c0,-2.21 1.79,-4 4,-4s4,1.79 4,4c0,0.88 -0.36,1.68 -0.93,2.25z"/>
+</vector>
diff --git a/sample-compose/src/main/res/drawable/ic_lottie_files.xml b/sample-compose/src/main/res/drawable/ic_lottie_files.xml
new file mode 100644
index 0000000..fc847b3
--- /dev/null
+++ b/sample-compose/src/main/res/drawable/ic_lottie_files.xml
@@ -0,0 +1,10 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24"
+    android:tint="?attr/colorControlNormal">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M19.36,10.04C18.67,6.59 15.64,4 12,4 9.11,4 6.6,5.64 5.35,8.04 2.34,8.36 0,10.91 0,14c0,3.31 2.69,6 6,6h13c2.76,0 5,-2.24 5,-5 0,-2.64 -2.05,-4.78 -4.64,-4.96z"/>
+</vector>
diff --git a/sample-compose/src/main/res/drawable/ic_network.xml b/sample-compose/src/main/res/drawable/ic_network.xml
new file mode 100644
index 0000000..d976b42
--- /dev/null
+++ b/sample-compose/src/main/res/drawable/ic_network.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="24dp"
+        android:height="24dp"
+        android:viewportWidth="24.0"
+        android:viewportHeight="24.0">
+    <path
+        android:fillColor="#FF000000"
+        android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM11,19.93c-3.95,-0.49 -7,-3.85 -7,-7.93 0,-0.62 0.08,-1.21 0.21,-1.79L9,15v1c0,1.1 0.9,2 2,2v1.93zM17.9,17.39c-0.26,-0.81 -1,-1.39 -1.9,-1.39h-1v-3c0,-0.55 -0.45,-1 -1,-1L8,12v-2h2c0.55,0 1,-0.45 1,-1L11,7h2c1.1,0 2,-0.9 2,-2v-0.41c2.93,1.19 5,4.06 5,7.41 0,2.08 -0.8,3.97 -2.1,5.39z"/>
+</vector>
diff --git a/sample-compose/src/main/res/drawable/ic_qr_scan.xml b/sample-compose/src/main/res/drawable/ic_qr_scan.xml
new file mode 100644
index 0000000..7060121
--- /dev/null
+++ b/sample-compose/src/main/res/drawable/ic_qr_scan.xml
@@ -0,0 +1,10 @@
+<!-- drawable/qrcode_scan.xml -->

+<vector xmlns:android="http://schemas.android.com/apk/res/android"

+    android:width="24dp"

+    android:height="24dp"

+    android:viewportHeight="24"

+    android:viewportWidth="24">

+    <path

+        android:fillColor="#000"

+        android:pathData="M4,4H10V10H4V4M20,4V10H14V4H20M14,15H16V13H14V11H16V13H18V11H20V13H18V15H20V18H18V20H16V18H13V20H11V16H14V15M16,15V18H18V15H16M4,20V14H10V20H4M6,6V8H8V6H6M16,6V8H18V6H16M6,16V18H8V16H6M4,11H6V13H4V11M9,11H13V15H11V13H9V11M11,6H13V10H11V6M2,2V6H0V2A2,2 0 0,1 2,0H6V2H2M22,0A2,2 0 0,1 24,2V6H22V2H18V0H22M2,18V22H6V24H2A2,2 0 0,1 0,22V18H2M22,22V18H24V22A2,2 0 0,1 22,24H18V22H22Z"/>

+</vector>
\ No newline at end of file
diff --git a/sample-compose/src/main/res/drawable/ic_showcase.xml b/sample-compose/src/main/res/drawable/ic_showcase.xml
new file mode 100644
index 0000000..ee61005
--- /dev/null
+++ b/sample-compose/src/main/res/drawable/ic_showcase.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24.0"
+    android:viewportHeight="24.0">
+    <path
+        android:fillColor="#FF000000"
+        android:pathData="M11.99,2C6.47,2 2,6.48 2,12s4.47,10 9.99,10C17.52,22 22,17.52 22,12S17.52,2 11.99,2zM16.23,18L12,15.45 7.77,18l1.12,-4.81 -3.73,-3.23 4.92,-0.42L12,5l1.92,4.53 4.92,0.42 -3.73,3.23L16.23,18z"/>
+</vector>
diff --git a/sample-compose/src/main/res/drawable/ic_speed.xml b/sample-compose/src/main/res/drawable/ic_speed.xml
new file mode 100644
index 0000000..ecee058
--- /dev/null
+++ b/sample-compose/src/main/res/drawable/ic_speed.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24.0"
+    android:viewportHeight="24.0">
+    <path
+        android:fillColor="#FF000000"
+        android:pathData="M4,18l8.5,-6L4,6v12zM13,6v12l8.5,-6L13,6z"/>
+</vector>
diff --git a/sample-compose/src/main/res/drawable/ic_storage.xml b/sample-compose/src/main/res/drawable/ic_storage.xml
new file mode 100644
index 0000000..53c595c
--- /dev/null
+++ b/sample-compose/src/main/res/drawable/ic_storage.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="24dp"
+        android:height="24dp"
+        android:viewportWidth="24.0"
+        android:viewportHeight="24.0">
+    <path
+        android:fillColor="#FF000000"
+        android:pathData="M2,20h20v-4L2,16v4zM4,17h2v2L4,19v-2zM2,4v4h20L22,4L2,4zM6,7L4,7L4,5h2v2zM2,14h20v-4L2,10v4zM4,11h2v2L4,13v-2z"/>
+</vector>
diff --git a/sample-compose/src/main/res/drawable/ic_warning.xml b/sample-compose/src/main/res/drawable/ic_warning.xml
new file mode 100644
index 0000000..be51d26
--- /dev/null
+++ b/sample-compose/src/main/res/drawable/ic_warning.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="16dp"
+    android:height="16dp"
+    android:viewportWidth="24.0"
+    android:viewportHeight="24.0">
+    <path
+        android:fillColor="#ff7e7e7e"
+        android:pathData="M1,21h22L12,2 1,21zM13,18h-2v-2h2v2zM13,14h-2v-4h2v4z"/>
+</vector>
diff --git a/sample-compose/src/main/res/layout/main_activity.xml b/sample-compose/src/main/res/layout/main_activity.xml
new file mode 100644
index 0000000..2fe4bdd
--- /dev/null
+++ b/sample-compose/src/main/res/layout/main_activity.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent">
+
+    <androidx.fragment.app.FragmentContainerView
+        android:id="@+id/nav_host_fragment"
+        android:name="androidx.navigation.fragment.NavHostFragment"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        app:defaultNavHost="true"
+        app:navGraph="@navigation/nav_graph" />
+</FrameLayout>
\ No newline at end of file
diff --git a/sample-compose/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/sample-compose/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
new file mode 100644
index 0000000..eca70cf
--- /dev/null
+++ b/sample-compose/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
+    <background android:drawable="@drawable/ic_launcher_background" />
+    <foreground android:drawable="@drawable/ic_launcher_foreground" />
+</adaptive-icon>
\ No newline at end of file
diff --git a/sample-compose/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/sample-compose/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
new file mode 100644
index 0000000..eca70cf
--- /dev/null
+++ b/sample-compose/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
+    <background android:drawable="@drawable/ic_launcher_background" />
+    <foreground android:drawable="@drawable/ic_launcher_foreground" />
+</adaptive-icon>
\ No newline at end of file
diff --git a/sample-compose/src/main/res/mipmap-hdpi/ic_launcher.png b/sample-compose/src/main/res/mipmap-hdpi/ic_launcher.png
new file mode 100644
index 0000000..a571e60
--- /dev/null
+++ b/sample-compose/src/main/res/mipmap-hdpi/ic_launcher.png
Binary files differ
diff --git a/sample-compose/src/main/res/mipmap-hdpi/ic_launcher_round.png b/sample-compose/src/main/res/mipmap-hdpi/ic_launcher_round.png
new file mode 100644
index 0000000..61da551
--- /dev/null
+++ b/sample-compose/src/main/res/mipmap-hdpi/ic_launcher_round.png
Binary files differ
diff --git a/sample-compose/src/main/res/mipmap-mdpi/ic_launcher.png b/sample-compose/src/main/res/mipmap-mdpi/ic_launcher.png
new file mode 100644
index 0000000..c41dd28
--- /dev/null
+++ b/sample-compose/src/main/res/mipmap-mdpi/ic_launcher.png
Binary files differ
diff --git a/sample-compose/src/main/res/mipmap-mdpi/ic_launcher_round.png b/sample-compose/src/main/res/mipmap-mdpi/ic_launcher_round.png
new file mode 100644
index 0000000..db5080a
--- /dev/null
+++ b/sample-compose/src/main/res/mipmap-mdpi/ic_launcher_round.png
Binary files differ
diff --git a/sample-compose/src/main/res/mipmap-xhdpi/ic_launcher.png b/sample-compose/src/main/res/mipmap-xhdpi/ic_launcher.png
new file mode 100644
index 0000000..6dba46d
--- /dev/null
+++ b/sample-compose/src/main/res/mipmap-xhdpi/ic_launcher.png
Binary files differ
diff --git a/sample-compose/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/sample-compose/src/main/res/mipmap-xhdpi/ic_launcher_round.png
new file mode 100644
index 0000000..da31a87
--- /dev/null
+++ b/sample-compose/src/main/res/mipmap-xhdpi/ic_launcher_round.png
Binary files differ
diff --git a/sample-compose/src/main/res/mipmap-xxhdpi/ic_launcher.png b/sample-compose/src/main/res/mipmap-xxhdpi/ic_launcher.png
new file mode 100644
index 0000000..15ac681
--- /dev/null
+++ b/sample-compose/src/main/res/mipmap-xxhdpi/ic_launcher.png
Binary files differ
diff --git a/sample-compose/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/sample-compose/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
new file mode 100644
index 0000000..b216f2d
--- /dev/null
+++ b/sample-compose/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
Binary files differ
diff --git a/sample-compose/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/sample-compose/src/main/res/mipmap-xxxhdpi/ic_launcher.png
new file mode 100644
index 0000000..f25a419
--- /dev/null
+++ b/sample-compose/src/main/res/mipmap-xxxhdpi/ic_launcher.png
Binary files differ
diff --git a/sample-compose/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/sample-compose/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
new file mode 100644
index 0000000..e96783c
--- /dev/null
+++ b/sample-compose/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
Binary files differ
diff --git a/sample-compose/src/main/res/navigation/nav_graph.xml b/sample-compose/src/main/res/navigation/nav_graph.xml
new file mode 100644
index 0000000..0160016
--- /dev/null
+++ b/sample-compose/src/main/res/navigation/nav_graph.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<navigation xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:id="@+id/nav_graph"
+    app:startDestination="@id/showcase">
+    <fragment
+        android:id="@+id/player"
+        android:name="com.airbnb.lottie.sample.compose.player.PlayerFragment" />
+
+    <fragment
+        android:id="@+id/showcase"
+        android:name="com.airbnb.lottie.sample.compose.showcase.ShowcaseFragment" />
+
+    <fragment
+        android:id="@+id/lottie_files"
+        android:name="com.airbnb.lottie.sample.compose.lottiefiles.LottieFilesFragment" />
+
+    <fragment
+        android:id="@+id/preview"
+        android:name="com.airbnb.lottie.sample.compose.preview.PreviewFragment" />
+
+</navigation>
\ No newline at end of file
diff --git a/sample-compose/src/main/res/raw/circle.json b/sample-compose/src/main/res/raw/circle.json
new file mode 100644
index 0000000..ebfe00d
--- /dev/null
+++ b/sample-compose/src/main/res/raw/circle.json
@@ -0,0 +1 @@
+{"v":"5.7.1","fr":29.9700012207031,"ip":0,"op":59.0000024031193,"w":128,"h":128,"nm":"Comp 1","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"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":[64,64,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[87.727,87.727],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,0,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":0,"s":[15]},{"t":59.0000024031193,"s":[0]}],"ix":5},"lc":1,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0.863,2.363],"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":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":152.000006191087,"st":0,"bm":0}],"markers":[]}
\ No newline at end of file
diff --git a/sample-compose/src/main/res/raw/loading.json b/sample-compose/src/main/res/raw/loading.json
new file mode 100644
index 0000000..3a5134e
--- /dev/null
+++ b/sample-compose/src/main/res/raw/loading.json
@@ -0,0 +1 @@
+{"v":"5.1.10","fr":24,"ip":24,"op":48,"w":600,"h":600,"nm":"Loader 14","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.7,"y":1},"o":{"x":0.35,"y":0.833},"n":"0p7_1_0p35_0p833","t":24,"s":[388.699,300,0],"e":[388.699,315,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":30,"s":[388.699,315,0],"e":[388.699,285,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.65,"y":0.167},"o":{"x":0.3,"y":0},"n":"0p65_0p167_0p3_0","t":42,"s":[388.699,285,0],"e":[388.699,300,0],"to":[0,0,0],"ti":[0,0,0]},{"t":48}],"ix":2,"x":"var $bm_rt;\nvar amp, freq, decay, n, t, v;\ntry {\n    amp = div(effect('Position - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Position - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Position - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"a":{"a":0,"k":[-247.301,-57.301,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Position - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":20,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[25.398,25.398],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.532643995098,0.532643995098,0.532643995098,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.380392156863,0.686274509804,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-247.301,-57.301],"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":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":4,"op":124,"st":4,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Shape Layer 3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":24,"s":[328.699,315,0],"e":[328.699,285,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":36,"s":[328.699,285,0],"e":[328.699,315,0],"to":[0,0,0],"ti":[0,0,0]},{"t":48}],"ix":2,"x":"var $bm_rt;\nvar amp, freq, decay, n, t, v;\ntry {\n    amp = div(effect('Position - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Position - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Position - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"a":{"a":0,"k":[-247.301,-57.301,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Position - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":20,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[25.398,25.398],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.532643995098,0.532643995098,0.532643995098,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.380392156863,0.686274509804,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-247.301,-57.301],"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":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":120,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Shape Layer 2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.7,"y":1},"o":{"x":0.35,"y":0.833},"n":"0p7_1_0p35_0p833","t":24,"s":[268.699,300,0],"e":[268.699,285,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":30,"s":[268.699,285,0],"e":[268.699,315,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.65,"y":0.167},"o":{"x":0.3,"y":0},"n":"0p65_0p167_0p3_0","t":42,"s":[268.699,315,0],"e":[268.699,300,0],"to":[0,0,0],"ti":[0,0,0]},{"t":48}],"ix":2,"x":"var $bm_rt;\nvar amp, freq, decay, n, t, v;\ntry {\n    amp = div(effect('Position - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Position - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Position - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"a":{"a":0,"k":[-247.301,-57.301,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Position - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":20,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[25.398,25.398],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.532643995098,0.532643995098,0.532643995098,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.380392156863,0.686274509804,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-247.301,-57.301],"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":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":-4,"op":116,"st":-4,"bm":0},{"ddd":0,"ind":4,"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":1,"k":[{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":24,"s":[208.699,285,0],"e":[208.699,315,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":36,"s":[208.699,315,0],"e":[208.699,285,0],"to":[0,0,0],"ti":[0,0,0]},{"t":48}],"ix":2,"x":"var $bm_rt;\nvar amp, freq, decay, n, t, v;\ntry {\n    amp = div(effect('Position - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Position - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Position - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"a":{"a":0,"k":[-247.301,-57.301,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Position - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":20,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[25.398,25.398],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.532643995098,0.532643995098,0.532643995098,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0.380392156863,0.686274509804,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-247.301,-57.301],"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":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":-8,"op":112,"st":-8,"bm":0},{"ddd":0,"ind":5,"ty":4,"nm":"Shape Layer 8","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":20,"s":[388.699,285,0],"e":[388.699,315,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":32,"s":[388.699,315,0],"e":[388.699,285,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":44,"s":[388.699,285,0],"e":[388.699,315,0],"to":[0,0,0],"ti":[0,0,0]},{"t":56}],"ix":2,"x":"var $bm_rt;\nvar amp, freq, decay, n, t, v;\ntry {\n    amp = div(effect('Position - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Position - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Position - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"a":{"a":0,"k":[-247.301,-57.301,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Position - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":20,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[25.398,25.398],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.532643995098,0.532643995098,0.532643995098,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.313725490196,0.890196078431,0.760784313725,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-247.301,-57.301],"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":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":6,"op":126,"st":6,"bm":0},{"ddd":0,"ind":6,"ty":4,"nm":"Shape Layer 7","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":14,"s":[328.699,285,0],"e":[328.699,315,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.167,"y":0},"n":"0p7_1_0p167_0","t":26,"s":[328.699,315,0],"e":[328.699,285,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":38,"s":[328.699,285,0],"e":[328.699,315,0],"to":[0,0,0],"ti":[0,0,0]},{"t":50}],"ix":2,"x":"var $bm_rt;\nvar amp, freq, decay, n, t, v;\ntry {\n    amp = div(effect('Position - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Position - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Position - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"a":{"a":0,"k":[-247.301,-57.301,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Position - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":20,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[25.398,25.398],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.532643995098,0.532643995098,0.532643995098,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.313725490196,0.890196078431,0.760784313725,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-247.301,-57.301],"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":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":2,"op":122,"st":2,"bm":0},{"ddd":0,"ind":7,"ty":4,"nm":"Shape Layer 6","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":20,"s":[268.699,315,0],"e":[268.699,285,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":32,"s":[268.699,285,0],"e":[268.699,315,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":44,"s":[268.699,315,0],"e":[268.699,285,0],"to":[0,0,0],"ti":[0,0,0]},{"t":56}],"ix":2,"x":"var $bm_rt;\nvar amp, freq, decay, n, t, v;\ntry {\n    amp = div(effect('Position - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Position - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Position - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"a":{"a":0,"k":[-247.301,-57.301,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Position - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":20,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[25.398,25.398],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.532643995098,0.532643995098,0.532643995098,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.313725490196,0.890196078431,0.760784313725,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-247.301,-57.301],"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":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":-2,"op":118,"st":-2,"bm":0},{"ddd":0,"ind":8,"ty":4,"nm":"Shape Layer 5","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":14,"s":[208.699,315,0],"e":[208.699,285,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":26,"s":[208.699,285,0],"e":[208.699,315,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":38,"s":[208.699,315,0],"e":[208.699,285,0],"to":[0,0,0],"ti":[0,0,0]},{"t":50}],"ix":2,"x":"var $bm_rt;\nvar amp, freq, decay, n, t, v;\ntry {\n    amp = div(effect('Position - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Position - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Position - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"a":{"a":0,"k":[-247.301,-57.301,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Position - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":20,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[25.398,25.398],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.532643995098,0.532643995098,0.532643995098,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.313725490196,0.890196078431,0.760784313725,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-247.301,-57.301],"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":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":-6,"op":114,"st":-6,"bm":0},{"ddd":0,"ind":9,"ty":4,"nm":"Shape Layer 12","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":11,"s":[388.699,315,0],"e":[388.699,285,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":23,"s":[388.699,285,0],"e":[388.699,315,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":34,"s":[388.699,315,0],"e":[388.699,285,0],"to":[0,0,0],"ti":[0,0,0]},{"t":46}],"ix":2,"x":"var $bm_rt;\nvar amp, freq, decay, n, t, v;\ntry {\n    amp = div(effect('Position - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Position - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Position - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"a":{"a":0,"k":[-247.301,-57.301,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Position - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":80,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[25.398,25.398],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.532643995098,0.532643995098,0.532643995098,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.98431372549,0.321568627451,0.81568627451,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-247.301,-57.301],"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":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":8,"op":128,"st":8,"bm":0},{"ddd":0,"ind":10,"ty":4,"nm":"Shape Layer 11","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":17,"s":[328.699,285,0],"e":[328.699,315,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.167,"y":0},"n":"0p7_1_0p167_0","t":29,"s":[328.699,315,0],"e":[328.699,285,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":40,"s":[328.699,285,0],"e":[328.699,315,0],"to":[0,0,0],"ti":[0,0,0]},{"t":52}],"ix":2,"x":"var $bm_rt;\nvar amp, freq, decay, n, t, v;\ntry {\n    amp = div(effect('Position - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Position - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Position - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"a":{"a":0,"k":[-247.301,-57.301,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Position - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":80,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[25.398,25.398],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.532643995098,0.532643995098,0.532643995098,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.98431372549,0.321568627451,0.81568627451,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-247.301,-57.301],"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":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":4,"op":124,"st":4,"bm":0},{"ddd":0,"ind":11,"ty":4,"nm":"Shape Layer 10","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":11,"s":[268.699,285,0],"e":[268.699,315,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":23,"s":[268.699,315,0],"e":[268.699,285,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":34,"s":[268.699,285,0],"e":[268.699,315,0],"to":[0,0,0],"ti":[0,0,0]},{"t":46}],"ix":2,"x":"var $bm_rt;\nvar amp, freq, decay, n, t, v;\ntry {\n    amp = div(effect('Position - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Position - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Position - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"a":{"a":0,"k":[-247.301,-57.301,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Position - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":80,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[25.398,25.398],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.532643995098,0.532643995098,0.532643995098,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.98431372549,0.321568627451,0.81568627451,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-247.301,-57.301],"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":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":120,"st":0,"bm":0},{"ddd":0,"ind":12,"ty":4,"nm":"Shape Layer 9","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":5,"s":[208.699,285,0],"e":[208.699,315,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":17,"s":[208.699,315,0],"e":[208.699,285,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":28,"s":[208.699,285,0],"e":[208.699,315,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.7,"y":1},"o":{"x":0.3,"y":0},"n":"0p7_1_0p3_0","t":40,"s":[208.699,315,0],"e":[208.699,285,0],"to":[0,0,0],"ti":[0,0,0]},{"t":52}],"ix":2,"x":"var $bm_rt;\nvar amp, freq, decay, n, t, v;\ntry {\n    amp = div(effect('Position - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Position - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Position - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"a":{"a":0,"k":[-247.301,-57.301,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Position - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":80,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Position - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":40,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[25.398,25.398],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.532643995098,0.532643995098,0.532643995098,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.98431372549,0.321568627451,0.81568627451,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-247.301,-57.301],"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":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":-4,"op":116,"st":-4,"bm":0}],"markers":[]}
\ No newline at end of file
diff --git a/sample-compose/src/main/res/raw/octagon.json b/sample-compose/src/main/res/raw/octagon.json
new file mode 100644
index 0000000..7f7ea01
--- /dev/null
+++ b/sample-compose/src/main/res/raw/octagon.json
@@ -0,0 +1 @@
+{"v":"5.7.1","fr":29.9700012207031,"ip":0,"op":900.000036657751,"w":400,"h":400,"nm":"Comp 2","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"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":[200,200,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"sr","sy":2,"d":1,"pt":{"a":0,"k":9,"ix":3},"p":{"a":0,"k":[0,0],"ix":4},"r":{"a":0,"k":0,"ix":5},"or":{"a":0,"k":200,"ix":7},"os":{"a":0,"k":0,"ix":9},"ix":1,"nm":"Polystar Path 1","mn":"ADBE Vector Shape - Star","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,4],"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":"Polystar 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":900.000036657751,"st":0,"bm":0}],"markers":[]}
\ No newline at end of file
diff --git a/sample-compose/src/main/res/values-night/themes.xml b/sample-compose/src/main/res/values-night/themes.xml
new file mode 100644
index 0000000..a5b7367
--- /dev/null
+++ b/sample-compose/src/main/res/values-night/themes.xml
@@ -0,0 +1,16 @@
+<resources xmlns:tools="http://schemas.android.com/tools">
+    <!-- Base application theme. -->
+    <style name="Theme.LottieCompose" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
+        <!-- Primary brand color. -->
+        <item name="colorPrimary">@color/purple_200</item>
+        <item name="colorPrimaryVariant">@color/purple_700</item>
+        <item name="colorOnPrimary">@color/black</item>
+        <!-- Secondary brand color. -->
+        <item name="colorSecondary">@color/teal_200</item>
+        <item name="colorSecondaryVariant">@color/teal_200</item>
+        <item name="colorOnSecondary">@color/black</item>
+        <!-- Status bar color. -->
+        <item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item>
+        <!-- Customize your theme here. -->
+    </style>
+</resources>
\ No newline at end of file
diff --git a/sample-compose/src/main/res/values/colors.xml b/sample-compose/src/main/res/values/colors.xml
new file mode 100644
index 0000000..b30c688
--- /dev/null
+++ b/sample-compose/src/main/res/values/colors.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+    <color name="purple_200">#FFBB86FC</color>
+    <color name="purple_500">#FF6200EE</color>
+    <color name="purple_700">#FF3700B3</color>
+    <color name="teal_200">#FF03DAC5</color>
+    <color name="teal_700">#FF018786</color>
+    <color name="black">#FF000000</color>
+    <color name="white">#FFFFFFFF</color>
+
+    <color name="background_color1">#ffffff</color>
+    <color name="background_color1_stroke">#848484</color>
+    <color name="background_color2">#000000</color>
+    <color name="background_color3">#FF5A5F</color>
+    <color name="background_color4">#008489</color>
+    <color name="background_color5">#A61D55</color>
+    <color name="background_color6">#FFB400</color>
+    <color name="background_color7">#A61D55</color>
+</resources>
\ No newline at end of file
diff --git a/sample-compose/src/main/res/values/strings.xml b/sample-compose/src/main/res/values/strings.xml
new file mode 100644
index 0000000..00faace
--- /dev/null
+++ b/sample-compose/src/main/res/values/strings.xml
@@ -0,0 +1,28 @@
+<resources>
+    <string name="app_name">LottieCompose</string>
+
+    <string name="bottom_tab_showcase">Showcase</string>
+    <string name="bottom_tab_preview">Preview</string>
+    <string name="bottom_tab_lottie_files">LottieFiles</string>
+    <string name="bottom_tab_learn">Learn</string>
+
+    <string name="tab_recent">Recent</string>
+    <string name="tab_popular">Popular</string>
+    <string name="tab_search">Search</string>
+    <string name="tab_preview">Preview</string>
+    <string name="scan_qr_code">Scan a QR code</string>
+    <string name="open_file">Open a file</string>
+    <string name="enter_url">Enter a URL to a json or zip file</string>
+    <string name="load_from_assets">Load from assets</string>
+
+    <plurals name="toolbar_item_warning">
+        <item quantity="one">%1$d warning</item>
+        <item quantity="other">%1$d warnings</item>
+    </plurals>
+    <string name="toolbar_item_border">Border</string>
+    <string name="toolbar_item_speed">Speed</string>
+    <string name="toolbar_item_color">Background</string>
+
+    <string name="failed_to_load">Failed to load composition</string>
+    <string name="ok">OK</string>
+</resources>
\ No newline at end of file
diff --git a/sample-compose/src/main/res/values/themes.xml b/sample-compose/src/main/res/values/themes.xml
new file mode 100644
index 0000000..a42a0c1
--- /dev/null
+++ b/sample-compose/src/main/res/values/themes.xml
@@ -0,0 +1,25 @@
+<resources xmlns:tools="http://schemas.android.com/tools">
+    <!-- Base application theme. -->
+    <style name="Theme.LottieCompose" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
+        <!-- Primary brand color. -->
+        <item name="colorPrimary">@color/purple_500</item>
+        <item name="colorPrimaryVariant">@color/purple_700</item>
+        <item name="colorOnPrimary">@color/white</item>
+        <!-- Secondary brand color. -->
+        <item name="colorSecondary">@color/teal_200</item>
+        <item name="colorSecondaryVariant">@color/teal_700</item>
+        <item name="colorOnSecondary">@color/black</item>
+        <!-- Status bar color. -->
+        <item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item>
+        <!-- Customize your theme here. -->
+    </style>
+
+    <style name="Theme.LottieCompose.NoActionBar">
+        <item name="windowActionBar">false</item>
+        <item name="windowNoTitle">true</item>
+    </style>
+
+    <style name="Theme.Lottieandroid.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />
+
+    <style name="Theme.Lottieandroid.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />
+</resources>
\ No newline at end of file
diff --git a/settings.gradle b/settings.gradle
index 13f706f..20d8671 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -1 +1,3 @@
 include ':LottieSample', ':lottie', ':issue-repro'
+include ':sample-compose'
+include ':lottie-compose'